Вы всегда можете создать простой старый ADO.NET параметризованный SqlCommand
, содержащий простой оператор SQL INSERT, а также предоставить параметры и загрузить данные таким образом (ничего не нужно загружать, не имеет значения, сколько строк у вас уже есть - он будет просто работать):
string insertStmt = "INSERT INTO dbo.YourTable(col1, col2, ...., colN) " +
"VALUES(@Value1, @Value2, ...., @ValueN)";
using(SqlConnection _con = new SqlConnection(-your-connection-string-here))
using(SqlCommand _cmdInsert = new SqlCommand(insertStmt, _con))
{
// define the parameters for your query
_cmdInsert.Parameters.Add("@Value1", SqlDbType.Int);
.......
// set the values
_cmdInsert.Parameters["@Value1"].Value = 4711;
.....
_con.Open();
int rowsInserted = _cmdInsert.ExecuteNonQuery();
_con.Close();
}
Если у вас есть несколько строк для вставки, вы можете выполнить цикл через eg список объектов, задайте значения для нашего _cmdInsert
для каждого объекта и выполните для каждой строки _cmdInsert.ExecuteNonQuery()
.
Конечно, если вы используете что-то вроде ORM (NHibernate, Linq-to-SQL, Entity Framework), эта работа может стать бесконечно легкой - просто вставьте новые объекты в свою коллекцию и сохраните их - ORM будет иметь дело с все подробные детали (и в основном делают этот код, который я показал выше, и выполняю его - более или менее).
и как получить последние 1000 строк базы данных? – Alex 2010-12-02 15:46:57