65.9K
CodeProject 正在变化。 阅读更多。
Home

C# .NET SQL Server 数据库客户端

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.90/5 (17投票s)

2005年12月10日

4分钟阅读

viewsIcon

67188

downloadIcon

3046

SQLServerClient 是一个简单的程序集,它提供了一种非常条理清晰的方式来连接和编辑 SQL 表。它还包含一个演示窗体,展示了它的用法。

Sample Image - SQLServerClient.jpg

引言

连接到 SQL Server 数据库是一项基本任务,开发人员经常会不必要地重复进行。SQLServerClient 是一个程序集,它提供了一种非常易于使用且有组织的机制来访问 SQL Server 上的数据库。它附带一个 C# .NET 的演示 Windows 窗体应用程序,展示了 SQLServerClient 的工作示例。在演示应用程序中,用户可以设置 SQL Server 数据源和所需的数据库。然后,用户可以运行 SELECT 或其他查询和命令,并查看结果和相应的消息。 

 

理解 .NET 中的 SQL Server 连接性

 

下面定义了一组选定的组件和代码片段,这将帮助初学者快速理解在 .NET 框架中连接到 SQL Server 的基本知识。 

SqlConnection

SqlConnection 对象代表与 SQL Server 数据源的唯一会话。在客户端/服务器数据库系统中,它相当于与服务器的网络连接。下面是一个简短的代码片段,定义了如何在 SqlServerClient 中创建 SqlConnection 类的对象。 

SqlDataAdapter

SqlDataAdapter 在 DataSet 和 SQL Server 之间充当桥梁,用于检索和保存数据。SqlDataAdapter 通过映射 Fill(更改 DataSet 中的数据以匹配数据源中的数据)和 Update(使用适当的 Transact-SQL 语句更新数据源以匹配 DataSet 中的数据)来提供此桥梁。下面是一个简短的代码片段,定义了如何在 SQLServerClient 中创建 SqlDataAdapter 类的对象。

SqlCommand

SqlCommand 类表示要针对 SQL Server 数据库执行的 Transact-SQL 语句或存储过程。在 SQLServerClient 的上下文中,它已用于从获取的字符串查询对象生成 SqlCommand。下面是一个简短的代码片段。

/// <summary>
/// Provides a connection to the desired SQL Database
/// </summary>
SqlConnection m_SQLConnector = new SqlConnection();

/// <summary>
/// Provides an adapter for extracting data a from SQL Database
/// </summary>
SqlDataAdapter m_SQLAdapter;   

//Init a new SQL command
SqlCommand insertCommand = new SqlCommand();
//Feed the input query
insertCommand.CommandText = iQuery;

因此,上述定义的类对象的组合用于创建访问 SQL Server 上数据库的有组织的方法。

 

SQLServerClient 中的主要操作 

本节仅定义了与 SQL Server 连接的一些基本函数和方法。

打开连接

下面显示的​​代码片段打开与所需 SQL 数据库的连接。所需的 SQLServer 和数据库名称在 SQL 连接字符串中指定。

//Setup Connection Object with new conenction string
this.m_SQLConnector = new SqlConnection("Initial Catalog=" +
                      this.m_DatabaseName + ";Data Source=" + 
                      this.m_DataSource + ";Integrated Security=SSPI;");
//Open Connection
this.m_SQLConnector.Open();

关闭连接

下面显示的​​代码片段关闭与所需 SQL 数据库的已打开连接。

//关闭连接

this.m_SQLConnector.Close();

运行 SELECT 查询

要运行 SELECT 查询,我们需要使用 SqlCommand 组件。我们首先定义一个 DataTable 或 DataSet 来保存查询结果。然后,通过将查询以字符串格式和已打开的 SqlConnection 传递,生成 SqlCommand。然后,SqlAdapter 用于使用查询结果填充给定的 DataTable 或 DataSet。

//创建用于保存结果的数据表

DataTable returnDataObject = new DataTable();

 

                      

//编译新的 SQL SELECT 命令

SqlCommand selectCommand = new SqlCommand( iQuery );

                              

//设置现有 SQL 连接

selectCommand.Connection = this.m_SQLConnector;

 

//初始化 SQL 适配器

this.m_SQLAdapter = new SqlDataAdapter();

//应用编译的 SELECT 命令

this.m_SQLAdapter.SelectCommand = selectCommand;

                      

//填充结果数据表

this.m_SQLAdapter.Fill(returnDataObject);

运行非 SELECT 查询

非 SELECT 查询包括任何其他查询,例如 INSERT、UPDATE、IDENTITY_INSERT。在尝试将任何记录插入表之前,请务必将 IDENTITY_INSERT 设置为 ON。下面显示的​​代码片段不言自明。

//初始化新的 SQL 命令

SqlCommand insertCommand = new SqlCommand();

                              

//输入查询

insertCommand.CommandText = iQuery;

                      

//输入现有连接

insertCommand.Connection = this.m_SQLConnector;

                              

//执行非 SELECT 查询

insertCommand.ExecuteNonQuery();

 

在您的代码中集成 SQLServerClient

 

如前所述,这是一个非常易于使用的组件。下面定义的​​一些操作可以使用 SQLServerClient 通过一两行代码完成。

声明对象

/// <summary>

/// SQLServerClient 对象

/// </summary>

SQLServerClient m_SQLClient = new SQLServerClient();

定义服务器、数据库和打开连接

//新数据库名称

this.m_SQLClient.DataBase = “数据库名称”;

 

//新数据源名称

this.m_SQLClient.DataSource = “数据源名称”;

 

//重置并重新打开连接

this.m_SQLClient.resetAndReopenConnection();

运行 SELECT 查询

//运行查询文本框中写的查询

DataTable result = this.m_SQLClient.runSelectQuery(“所需查询”);

运行非 SELECT 查询

//运行查询文本框中写的查询

DataTable result = this.m_SQLClient.runNonSelectQuery(“所需查询”);

结论

一如既往,本文提供的所有代码均可免费使用,不受版权限制。您可以自由地将 SQLServerClient 集成到您的应用程序中,或对其进行任何修改。本文无意教导专家,仅作为初学者的指南。因此,请相应地评价本文,并给予好评。更重要的是,再次重申 SQLServerClient 是在您的 .NET 应用程序中访问 SQL 数据库的简单而有效的机制。

© . All rights reserved.