string connection = "Provider=Microsoft.JET.OLEDB.4.0;Data Source=D:\\it101\\LoginForm\\App_Data\\registration.mdb";
string query = "INSERT INTO [registration] ([UserID] , [Name] , [Contact_no] , [City]) values (123, 'abc' ,12345, 'pqr')";
OleDbConnection con = new OleDbConnection(connection);
OleDbCommand cmd = new OleDbCommand();
cmd.CommandText = query;
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
con.Open();
cmd.ExecuteNonQuery();
如果我在程序结束时不写cmd.ExecuteNonQuery()怎么办? 如果需要执行查询,为什么要编写executeNonquery()而不是executeQuery()?
答案 0 :(得分:14)
<强>修改强>
在修改部分,我们有插入,删除,更新,... queries.so为此我们需要使用ExecuteNonQuery命令。为什么因为我们没有查询数据库,我们正在修改。
语法:的
cmd.ExecuteNonQuery Method
<强>检索:强>
在此我们使用 Select Statement查询数据库。为此,我们使用ExecuteReader(),ExecuteScalar()
如果select Query返回多个记录。我们需要使用ExecuteReader()
如果select Query只返回一条记录。我们需要使用ExecuteScalar()
语法:的
cmd.ExecuteReader()方法
cmd.ExecuteScalar()方法
上述语句(ExecuteReader(),ExecuteScalar(),SqlCommand.ExecuteNonQuery())用于执行您在SqlCommand中提供的命令语句。如果您不使用,则不执行您的命令。
答案 1 :(得分:4)
ExecuteNonQuery执行一个不会产生任何结果的查询(例如UPDATE或INSERT)。
ExecuteQuery执行一个应该产生结果的查询(即SELECT)。
如果您最后没有编写ExecuteNonQuery,则不会执行您的查询。
答案 2 :(得分:3)
SqlCommand.ExecuteNonQuery Method
对连接执行语句并返回受影响的行数。 对于UPDATE,INSERT和DELETE语句,返回值是受命令影响的行数。
运行给定的SQL语句并返回单个SQLServerResultSet对象。
如果要执行查询,则应使用ExecuteNonQuery