C# opengauss
时间: 2025-01-18 07:57:24 浏览: 78
### C# 中使用 openGauss 数据库
#### 配置连接字符串
为了使应用程序能够访问 openGauss 数据库,在 C# 应用程序中需定义合适的连接字符串。通常情况下,这会涉及到指定服务器地址、端口、数据库名称以及认证信息。
```csharp
string connectionString = "Host=localhost;Port=5432;Username=myusername;Password=mypassword;Database=mydatabase;";
```
此连接字符串模板适用于大多数场景[^1]。
#### 创建并打开数据库连接
通过 `Npgsql` 提供的数据提供者来建立到 openGauss 的连接:
```csharp
using Npgsql;
// ...
var connection = new NpgsqlConnection(connectionString);
connection.Open();
```
这段代码展示了如何实例化一个新的 `NpgsqlConnection` 对象,并传入之前准备好的连接字符串参数;随后调用了 `Open()` 方法开启实际的网络通信链路。
#### 执行查询命令
一旦建立了有效的连接,则可以构建 SQL 查询语句并通过 ADO.NET 接口发送给目标数据库执行:
```csharp
using (var cmd = new NpgsqlCommand("SELECT * FROM employees", connection))
{
var reader = cmd.ExecuteReader();
while (reader.Read())
Console.WriteLine(reader.GetString(0));
}
```
这里演示了一个简单的读取操作例子——从名为 “employees”的表里获取全部记录,并逐行打印第一个字段的内容。
#### 更新数据示例
对于修改现有记录的操作,同样遵循类似的模式:
```csharp
using (var command = new NpgsqlCommand(
@"UPDATE mytb
SET c__sk = @newSkValue,
c_name=@newName
WHERE c_sk = @oldSk;", connection))
{
command.Parameters.AddWithValue("@newSkValue", 9876);
command.Parameters.AddWithValue("@newName", "july");
command.Parameters.AddWithValue("@oldSk", 9527);
int rowsAffected = command.ExecuteNonQuery();
Console.WriteLine($"{rowsAffected} row(s) updated.");
}
```
上述片段实现了将特定条件下的某条记录中的某些列值替换为新值的功能[^5]。
#### 关闭资源
当不再需要继续同数据库保持联系时,应当及时关闭相应的连接对象以释放占用的系统资源:
```csharp
if(connection != null && connection.State == System.Data.ConnectionState.Open)
{
connection.Close();
}
```
确保每次使用完毕之后都正确处理好清理工作是非常重要的实践之一[^2]。
阅读全文
相关推荐


















