C#编程:Winform与Webform连接SQLServer数据库教程
需积分: 1 11 浏览量
更新于2024-09-15
收藏 17KB DOCX 举报
"这篇资料主要介绍了如何在C#环境下,无论是Winform还是Webform应用程序中,连接到SQL Server数据库的方法。通过配置app.config文件来存储数据库连接字符串,并提供了使用ADO.NET进行数据操作的代码示例,包括获取数据集和执行SQL语句。"
在C#开发中,连接数据库是常见的任务,特别是对于Winform和Webform应用。这里介绍的两种方法都是基于.NET Framework的ADO.NET框架。首先,我们需要在项目的配置文件app.config中定义数据库连接字符串。例如:
```xml
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="sqlConn" value="datasource=(local);initialcatalog=02wangluo;userid=sa;password=" />
</appSettings>
</configuration>
```
在这个例子中,`sqlConn`键值对包含了数据库的连接信息,包括服务器名(`datasource`),数据库名(`initialcatalog`),用户名(`userid`)和密码(`password`)。这里使用了"(local)"作为服务器名,意味着本地主机,而数据库名为"02wangluo",用户为"sa",密码为空。
接下来,我们可以编写C#代码来读取这个连接字符串并建立数据库连接。示例中使用了`ConfigurationSettings.AppSettings`来获取app.config中的配置信息。以下是如何创建和使用`SqlConnection`对象来执行SQL语句:
```csharp
using System;
using System.Data;
using System.Data.SqlClient;
using System.Collections;
using System.Configuration;
public class DoDataBase
{
public static SqlConnection sqlConn = new SqlConnection();
// 省略构造函数
public static DataSet GetDataSet(string sql)
{
DataSet ds = new DataSet();
try
{
sqlConn = new SqlConnection(ConfigurationSettings.AppSettings["sqlConn"]);
SqlDataAdapter sqlApt = new SqlDataAdapter(sql, sqlConn);
sqlApt.Fill(ds);
return ds;
}
catch (Exception ex)
{
throw (ex);
}
}
public static int ExecuteSQL(string sql)
{
try
{
sqlConn = new SqlConnection(ConfigurationSettings.AppSettings["sqlConn"]);
SqlCommand sqlCmd = new SqlCommand(sql, sqlConn);
sqlConn.Open();
return sqlCmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw (ex);
}
finally
{
sqlConn.Close(); // 不要忘记关闭连接
}
}
}
```
`DoDataBase`类提供了两个静态方法:`GetDataSet`用于执行查询并返回一个数据集,`ExecuteSQL`用于执行非查询的DML语句(如INSERT、UPDATE、DELETE),并返回受影响的行数。在执行SQL语句之前,先打开数据库连接,完成后记得关闭以释放资源。
总结来说,C#连接SQL Server数据库的基本步骤包括:
1. 在app.config文件中配置连接字符串。
2. 使用`ConfigurationSettings.AppSettings`读取连接字符串。
3. 创建`SqlConnection`对象,并用它来执行SQL语句。
4. 使用`SqlDataAdapter`或`SqlCommand`对象来填充数据集或执行非查询操作。
5. 记得在操作完成后关闭数据库连接。
了解这些基本操作后,开发者可以构建更复杂的数据库交互功能,例如处理事务、优化性能等。
2013-11-12 上传
2014-04-05 上传
2008-10-19 上传
2013-11-20 上传
2008-06-01 上传
2009-06-12 上传
2014-08-12 上传
u010717765
- 粉丝: 0
- 资源: 1
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析