C 与数据库访问技术总结(八)之ExecuteNonQuery方法

ExecuteNonQuery方法是ADO.NET中的一个方法,用于执行SQL语句或存储过程,它主要用于执行对数据库的非查询操作,例如插入、更新或删除数据等。在这篇文章中,我将详细介绍ExecuteNonQuery方法的使用方法,并提供一些案例说明。

用法:

ExecuteNonQuery方法属于SqlCommand类,需要创建一个SqlCommand对象来执行SQL语句或存储过程。下面是一个基本的用法示例:

```

string connectionString = "Data Source=server;Initial Catalog=database;User ID=user;Password=password";

string query = "INSERT INTO Customers (FirstName, LastName) VALUES ('John', 'Doe')";

using (SqlConnection connection = new SqlConnection(connectionString))

{

connection.Open();

using (SqlCommand command = new SqlCommand(query, connection))

{

int rowsAffected = command.ExecuteNonQuery();

Console.WriteLine("Rows affected: " + rowsAffected);

}

}

```

在上面的示例中,首先创建了一个SqlConnection对象,并传入连接字符串用于连接数据库。然后创建了一个SqlCommand对象,将SQL语句作为参数传入构造函数。接下来调用SqlConnection的Open方法打开数据库连接,然后调用SqlCommand的ExecuteNonQuery方法执行SQL语句。ExecuteNonQuery方法返回一个整数,表示受影响的行数。

案例说明:

下面是一些常见的案例说明,展示了ExecuteNonQuery方法的实际应用。

1. 插入数据:

```

string query = "INSERT INTO Customers (FirstName, LastName) VALUES ('John', 'Doe')";

int rowsAffected = command.ExecuteNonQuery();

```

上述代码在Customers表中插入一条新的记录,并返回受影响的行数。

2. 更新数据:

```

string query = "UPDATE Customers SET LastName = 'Smith' WHERE FirstName = 'John'";

int rowsAffected = command.ExecuteNonQuery();

```

上述代码将Customers表中所有FirstName为'John'的记录的LastName更新为'Smith',并返回受影响的行数。

3. 删除数据:

```

string query = "DELETE FROM Customers WHERE LastName = 'Doe'";

int rowsAffected = command.ExecuteNonQuery();

```

上述代码删除Customers表中所有LastName为'Doe'的记录,并返回受影响的行数。

4. 执行存储过程:

```

string query = "EXEC sp_UpdateCustomerFirstName @customerId, @newFirstName";

int rowsAffected = command.ExecuteNonQuery();

```

上述代码执行名为sp_UpdateCustomerFirstName的存储过程,并传入参数@customerId和@newFirstName。ExecuteNonQuery方法返回受影响的行数。

总结:

ExecuteNonQuery方法是ADO.NET中用于执行对数据库的非查询操作的方法。它可以执行插入、更新、删除数据等操作,并返回受影响的行数。通过一些案例说明,我们可以看到ExecuteNonQuery方法的实际用法和应用场景。希望通过本文的介绍,读者能够更好地理解和使用ExecuteNonQuery方法。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/

点赞(67) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部