将某个2维数组直接移入数据库(SQL Server)而无需将其转换为SQL语句是否可以?C#&SQL Server:将数组直接移动到SQL Server中
我知道在vb6.0中有某种直接连接,但我不记得它是如何完成的,也不是如果它仍然有可能。
将某个2维数组直接移入数据库(SQL Server)而无需将其转换为SQL语句是否可以?C#&SQL Server:将数组直接移动到SQL Server中
我知道在vb6.0中有某种直接连接,但我不记得它是如何完成的,也不是如果它仍然有可能。
在VB6中,您可以通过创建记录集,插入行并调用.Update
来避免明确的INSERT
语句。如果Command
模式为adCmdTableDirect
,这可能是“直接连接”。
在ADO.NET中,您也可以这样做,但有许多方法,例如Linq To Sql或Entity Framework。如果你想要它简单的低级香草VB6风格,那可能是DataAdapter.Update
method。
using (System.Data.SqlClient.SqlConnection c = new System.Data.SqlClient.SqlConnection("Data Source=..."))
{
using (System.Data.SqlClient.SqlDataAdapter a = new System.Data.SqlClient.SqlDataAdapter("select * from atable;", c))
{
using (System.Data.SqlClient.SqlCommandBuilder b = new System.Data.SqlClient.SqlCommandBuilder(a))
{
using (DataTable t = new DataTable("atable"))
{
a.FillSchema(t, SchemaType.Source);
t.Rows.Add(1, "foo");
t.Rows.Add(2, "bar");
a.Update(t);
}
}
}
}
的
可能重复的[如何通过用户定义的表型,如C#存储Procedured参数](http://stackoverflow.com/questions/1030848/how-to-pass-user-defined-table-type -as-stored-procedured-parameter-in-c) – GSerg
我会研究它。但这并不完全是我想到的。 – ralph
嗯,当你的问题可以以多种方式理解时,你就会得到这样的结果:) – GSerg