C# DbConnection 应该是一个数据库连接类,它有一个方法 ExecuteQuery 用来执行 SQL 查询。
时间: 2024-09-23 17:02:16 浏览: 41
`ExecuteQuery` 方法在 C# 中用于执行 SQL 查询并返回结果。它接受两个参数:SQL 语句 (`string sql`) 和 `DbConnection` 对象,这是一个数据库连接实例。具体实现如下:
1. 验证 `Conn` 参数是否为空[^1]:
```csharp
if (Conn == null)
{
ClsDB.ErrLog("ClsDB.Execute(string sql, System.Data.Common.DbConnection Conn):连接对象为空!");
return 0;
}
```
2. 创建一个新的 `IDbCommand` 对象来执行命令:
```csharp
System.Data.IDbCommand cmd = Conn.CreateCommand();
```
3. 设置命令的 SQL 语句:
```csharp
cmd.CommandText = sql;
```
4. 尝试执行查询并返回影响的行数(对于 INSERT, UPDATE 或 DELETE 类型的 SQL,这将是更改的行数):
```csharp
try
{
return cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
ClsDB.ErrLog("ClsDB.ExecuteQuery(string sql, System.Data.Common.DbConnection Conn):" + ex.Message + "\nsql=" + sql);
return 0;
}
```
如果遇到异常,会记录错误信息并返回 0。
阅读全文