C# WinForm中使用SQL数据库连接教程
需积分: 10 142 浏览量
更新于2024-09-16
收藏 110KB DOC 举报
"datagridview.doc 是关于Windows Forms控件DataGridView的文档,可能包含了如何在C#中使用DataGridView以及与数据库交互的示例代码。"
在Windows Forms开发中,`DataGridView`是一个常用的数据展示控件,它允许用户查看、编辑和操作表格数据。此控件可以与各种数据源绑定,包括数据库、数组、集合等。在提供的代码片段中,可以看到一个例子,展示了如何将`DataGridView`(记为`this.m_dvMainTable`)的数据绑定到文本框(`this.txtWDNCode`)的`Text`属性,字段是`NotificationCode`。这种数据绑定技术使得UI元素的值能够与数据源保持同步。
```csharp
this.txtWDNCode.DataBindings.Add("Text", this.m_dvMainTable, "NotificationCode");
```
这段代码的含义是:当`m_dvMainTable`中的`NotificationCode`字段值改变时,`txtWDNCode`的文本也会相应更新,反之亦然。这简化了数据视图与用户界面之间的交互处理。
接下来的部分涉及了一个名为`Sqlconn`的类,这个类是用来处理SQL Server数据库连接的。它包含两个主要方法:
1. `GetDataSet(string sql)`:返回一个填充了指定SQL查询结果的`DataSet`对象。首先创建一个`SqlConnection`实例,然后通过它创建一个`SqlDataAdapter`,用这个适配器填充`DataSet`,最后返回数据集。
```csharp
protected DataSet GetDataSet(string sql)
{
DataSet ds = new DataSet();
try
{
conn = new SqlConnection(ConnStr);
SqlDataAdapter sda = new SqlDataAdapter(sql, conn);
sda.Fill(ds);
return ds;
}
catch (Exception e)
{
throw e;
}
}
```
2. `ExecuteSql(string sql)`:执行非查询的SQL语句(如INSERT, UPDATE, DELETE),并返回受影响的行数。同样地,它创建`SqlConnection`和`SqlCommand`,打开连接,执行命令,然后关闭连接。
```csharp
protected int ExecuteSql(string sql)
{
try
{
conn = new SqlConnection(ConnStr);
conn.Open();
SqlCommand cmd = new SqlCommand(sql, conn);
return cmd.ExecuteNonQuery();
}
catch (Exception e)
{
throw e;
}
finally
{
conn.Close();
}
}
```
这个`Sqlconn`类使用了`SqlConnection`和`SqlCommand`来与SQL Server数据库进行交互,其中`ConnStr`变量存储了数据库连接字符串。连接字符串的格式通常包括服务器名、数据库名、用户名和密码,如示例所示:
```csharp
private string ConnStr = "server=(local);database=lirbray;uid=sa;pwd=admin";
```
在C#中进行数据库操作时,通常会使用`using`语句来确保数据库连接在使用后能够正确关闭,即使在出现异常时也能释放资源。然而,在给出的代码片段中,`conn.Close()`是在`finally`块中调用的,这是另一种保证资源释放的方式,尽管不如`using`语句简洁和安全。
这个文档或代码片段主要涵盖了以下知识点:
1. Windows Forms中的`DataGridView`控件及其数据绑定。
2. 使用C#操作SQL Server数据库的基本步骤,包括创建`SqlConnection`,执行SQL查询和非查询语句。
3. 数据库连接字符串的格式和使用。
4. 异常处理以确保程序的健壮性。
2010-10-07 上传
2008-03-03 上传
2022-07-13 上传
2022-07-13 上传
2011-01-01 上传
2011-11-26 上传
2010-09-04 上传
2012-03-14 上传
2009-12-14 上传
奋斗的庆富
- 粉丝: 2
- 资源: 51
最新资源
- Walmar_PageFactory_Practice:此练习是为想要学习如何在Automation Framework中实现Page_Factory的新手创建的
- cm32181.rar_GIS编程_Unix_Linux_
- Meta4 ClickOnce Launcher-crx插件
- 4MB3_Replication_COVID
- IBOX-开源
- “ maintainVisibleContentPosition”道具对Android react-native的支持-Android开发
- 取消标记:做书签的开源应用程序
- 前端客户端
- centos-installation--configuration.zip_操作系统开发_PDF_
- C.R._Beginner_Lessons:C ++初学者作业
- Python_Programs:与python相关的基本程序
- ps-local-patrick:Patrick Sherman的本地存储库将用于PointSource项目
- 灰色网站后台登录web2.0模板下载
- mcfly:浏览您的shell历史记录。 伟大的斯科特!
- 开发人员职业框架:一个开放框架,用于软件开发人员围绕职业发展的对话
- vending-machine-kata