我不确定这两件事在插入,更新和删除时使用连接和命令对象之间的区别是什么,这是从SQL Server调用的存储过程。
例如关于连接:
template <typename T>
auto read(const uint8_t *ptr) -> T {
union {
uint8_t buf[sizeof(T)];
T value;
} u;
memcpy(u.buf, ptr, sizeof(T));
return u.value;
}
关于命令obj:
Cn.Execute "Exec ProcedureName"
我真的不知道何时使用它们,因为它们看起来很相似。
提前致谢
答案 0 :(得分:4)
有很多文章可供使用,它解释了Ado.Net中Command和Connection对象的使用。其中很少如下:
http://www.c-sharpcorner.com/UploadFile/c5c6e2/working-with-command-object/
http://www.c-sharpcorner.com/uploadfile/mahesh/connection-object-in-ado-net/
http://csharp.net-informations.com/data-providers/csharp-ado.net-connection.htm
连接对象: Connection对象是用于在应用程序与数据源之间建立链接的基本Ado.Net组件。因此,您可以定义一个连接字符串,用于初始化与数据源的连接。
命令对象: Command对象是另一个Ado.Net组件,用于使用连接对象对数据源执行查询。所以基本上你需要连接和命令对象来对数据源执行查询。使用Command对象可以执行内联查询,存储过程等。
示例代码:
SqlConnection con = new SqlConnection(connectionString); // creates object of connection and pass the connection string to the constructor
SqlCommand cmd = new SqlCommand(); // creates object of command
cmd.Connection = con; // tells command object about connection, where the query should be fired
cmd.CommandText = "Query"; // your query will go here
cmd.CommandType = System.Data.CommandType.Text; // it tells the command type which can be text, stored procedure
con.Open(); // opens the connection to datasource
var result = cmd.ExecuteReader(); // executes the query on datasource using command object
con.Close(); // closes the connection
我希望这会对你有所帮助。 :)