使用SqlDataSource 控件选择数据

使用SqlDataSource 控件选择数据


2024年6月21日发(作者:)

使用 SqlDataSource 控件选择数据

使用 SqlDataSource 控件只需很少的代码或无需任何代码即可从数据库中检索数据。

SqlDataSource 控件可用于任何具有关联 提供程序(在配置文件的

DbProviderFactories 节中配置)的数据库,包括 Microsoft SQL Server、Oracle、ODBC 或 OLE DB

数据库(如 Microsoft Access)。您在配置时指定 SqlDataSource 使用的 SQL 语句语法以及是否

可以使用更高级的数据库功能(如存储过程)均由所用的数据库决定。但是,数据源控件对于所有数

据库的操作都是相同的。

若要使用 SqlDataSource 控件从数据库中检索数据,至少需要设置以下属性:

 ProviderName 设置为 提供程序的名称,该提供程序表示您正在使用的数据库。如

果您正在使用 Microsoft SQL Server,请将 ProviderName 属性设置为

“ent”;如果您正在使用 Oracle 数据库,请将 ProviderName 属性设置为

“Client”;依此类推。

ConnectionString 设置为用于数据库的连接字符串。

SelectCommand 设置为从数据库中返回数据的 SQL 查询或存储过程。为 SelectCommand

属性设置的查询与在编写 数据访问代码时为 IDbCommand 对象的

CommandText 属性设置的查询相同。SQL 查询的实际语法取决于您的数据架构和您所使用的

数据库。

以下几节更详细地描述了这些属性。

指定提供程序名称

将 ProviderName 属性设置为 提供程序的名称,该提供程序与存储数据的数据库的类型

关联。允许的提供程序的列表在配置文件( 或 文件)的

DbProviderFactories 节中注册。默认情况下,SqlDataSource 控件使用对应于 Microsoft SQL

Server 的 ent 提供程序。因此,如果要连接到 SQL Server 数据库,

则无需显式指定提供程序。但是,您还可以指定 Client、 或

提供程序。有关更多信息,请参见 。

注意

不要将 ProviderName 属性设置为非托管 ADO 提供程序的值,如 SQLOLEDB 或 MSDAORA。

指定连接字符串

可将 ConnectionString 属性设置为用于特定数据库的连接字符串。不过,将 SqlDataSource 控件

的 ConnectionString 属性设置为特定连接字符串,对于大型站点来说并不能算是一种易于维护的策

略。另外,连接字符串以明文形式存储在 页中。若要使 Web 应用程序更易于维护并且安

全性更高,建议将连接字符串存储在应用程序配置文件的 connectionStrings 元素中。然后可以用

与下面示例中的连接表达式类似的连接表达式来引用存储的连接字符串:

复制

ID="SqlDataSource1"

runat="server"

ConnectionString="<%$ ConnectionStrings:NorthwindConnectionSt

ring %>"

SelectCommand="SELECT * FROM [Categories]">

若要获得更高的安全性,可对 配置节的内容进行加密。有关更多信息,请参

见加密和解密配置节。

指定选择命令

可通过设置 SqlDataSource 控件的 SelectCommand 属性指定该控件要执行的 SQL 查询。下面

的示例演示一个 SQL 查询,它检索包含

Employees

表中所有员工的姓的结果集:

复制

SELECT LastName FROM Employees;

下面的代码示例演示如何设置 SqlDataSource 控件的 ConnectionString 和 SelectCommand 属

性,以便在 GridView 控件中显示 Employees 数据:

C#

VB

复制

<%@ Page language="C#" %>

"/TR/xhtml1/DTD/">

Example

id="SqlDataSource1"

runat="server"

DataSourceMode="DataReader"

ConnectionString="<%$ ConnectionStrings:MyNorthwind%>

"

SelectCommand="SELECT LastName FROM Employees">


发布者:admin,转转请注明出处:http://www.yc00.com/web/1718915071a2753519.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信