ASP.NET2.0数据库入门之SqlDataSource
发布时间:2024-01-24 08:38:12
当使用SqlDataSource控件选择数据时,可以从两个属性:ConnectionString和SelectCommand开始,如下所示:
<asp:SqlDataSource ID="MySourceControlName" Runat="server"
ConnectionString="Server=MyServer ;
Database=Northwind"
SelectCommand=" SELECT Fieldl, [Field With Space] FROM MyTable">
</asp:SglDataSource>
当使用Windows认证时,可以添加两个认证数据。
<asp:SqlDataSource ID="MySourceControlName" Runat="server"
ConnectionString="
Server=MyServer ;
User ID=MyID;
Password=Mypass;
Database=Northwind"
SelectCommand=" SELECT Field1, [Field With Space] FROM MyTable">
</asp:SqlDataSource>
第一个是前面讨论过的连接字符串,第二个是SelectCommand,用来确定将从SQL Server数据库中提取什么信息。在SelectCommand中,可以使用任何符合语法的SQL SELECT语句,包括在上一章或者附录A中讨论的语句。很多SQL Server管理员都不会允许用户直接访问表。数据库管理员将会在SPROC上创建一些受限制的许可。或者,创建表的视图用来提供表的一部分数据或者对表中可以修改的数据进行限制。连接至视图的语法如下:
SelectCommand="SELECT * from MyView">
如果表、查询、SPROC或者视图的名称中有空格字符,则应当使用方括号将整个名称包含起来,如下所示:
SelectCommand="SELECT * from [My View] "
您可能已经注意到了GridView中的Filter属性并且想知道它与在数据源SelectCommand中使用WHERE子句之间有何不同。筛选只用于某些缓冲情况,我们将会在第15章中介绍。
有了连接字符串和SelectCommand,就可以创建从SQL Server使用数据的页面了。
试一试#1—— SqlDataSource简单示例
在本练习中,应该以网格(表)格式从Northwind的SQL版本显示产品的GridView。可以以添加DataSource控件和数据绑定控件的技术开始,这样就能够创建最简单的源代码。然后将会使用一种更快速的开发技术(拖放列名称)。
(1) 请确认已经安装了SSE(如第1章所述),包括样本数据库Northwind。本练习还将涉及到SQL Server或者MSDE。
(2) 创建文件夹ch03,在其中创建一个名为TIO-1-SqlSimple-1.ASPX的文件。通过Menu:View|Toolbox(Ctrl+Alt+X)显示工具箱。请注意工具箱有一个可以展开的Data区域。
(3) 在Design视图中,从工具箱的Data区域中拖放一个SqlDataSource控件至页面。在便捷任务面板上,将数据源配置为新的连接。输入服务器名称(local)\SQLExpress并使用Windows NT认证。选择名为Northwind的数据库并测试连接。单击OK结束。您将会自动返回至Data Source Configuration对话框,单击Next。对本例来说,不需要在配置文件中保存连接字符串;单击Next。选择“Specify columns from a table”并选择表名Products。在Columns列表中,单击ID、Name和Unit Price。单击Next和Test Query,然后单击Finish。这样就完成添加DataSource控件了。
(4) 添加GridView数据绑定控件。在便捷任务面板中,选择SqlDataSource,然后关闭便捷任务面板。这样就创建了数据绑定控件。保存并运行页面,页面如下:
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtmlll/DTD/xhtmlll.dtd">
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Ch03-Tio#l-SqlSimple-verl</title>
</head>
<body>
<h2>
Chapter 3 TIO #1 SqlSimple verl
</h2>
<form id="forml" runat="server">
<div>
<asp:SqlDataSource ID="SqlDataSourcel" Runat="server"
ProviderName="System.Data.SqlClient"
ConnectionString="Server=(local)\SQLExpress;
Integrated Security=True;
Database=Northwind;
Persist Security Info=True"
SelectCommand="SELECT [ProductID], [ProductName], [UnitPrice] FROM[Products]">
</asp:SqlDataSource>
<asp:GridView ID="GridViewl" Runat="server"
DataSourceID="SqlDataSourcel"
DataKeyNames="ProductID"
AutoGenerateColumns="False">
<Columns>
<asp:BoundField ReadOnly="True" HeaderText="ProductID"
InsertVisible="False" DataField="ProductID"
SortExpression=" ProductID" ></asp: BoundField>
<asp:BoundField HeaderText="ProductName"DataField="ProductName"
SortExpression="ProductName"></asp:BoundField>
<asp:BoundField HeaderText="UnitPrice" DataField="UnitPrice"
SortExpression="UnitPrice"></asp:BoundField>


猜你喜欢
- 示例from optparse import OptionParser[...]def main():
- SQLSERVER编译与重编译编译的含义当SQLSERVER收到任何一个指令,包括查询(query)、批处理(batch)、存储过程、触发器
- 经常会有人问我, PHP的数组, 如果用foreach来访问, 遍历的顺序是固定的么? 以什么顺序遍历呢? 比如: <?php $ar
- python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU资源,在python中大部分情况需要使用多进程。python提供了
- 本文用python在TCP的基础上实现一个HTTP客户端, 该客户端能够复用TCP连接, 使用HTTP1.1协议. 一. 创建HT
- 本文主要给大家介绍了关于CentOS 6.5 安装Python 3.5.2并与Python2并存的相关内容,分享出来供大家参考学习,下面来看
- 需求:取文件1中的一行,和文件2中所有的数据进行比较,有相同的保存起来,否则删除。#!/usr/bin/perl#use strict;op
- PyTorch基础入门二:PyTorch搭建一维线性回归模型1)一维线性回归模型的理论基础给定数据集,线性回归希望能够优化出一个好的函数,使
- 一、前言用Java开发企业应用软件, 经常会采用Spring+MyBatis+Mysql搭建数据库框架。如果数据量很大,一个MYSQL库存储
- 原由定期更换密码是一种非常重要的安全措施,这种做法可以有效地保护你的账户和个人信息不受黑客和网络攻击者的侵害。密码泄露是一个非常普遍的问题,
- 许多人也许会注意到一个现象,那就是在一些现代编程语言(当然,并不是指“最近出现”的编程语言)中,自增
- JavaScript是前端开发的主要语言,我们可以通过编写JavaScript程序来判断浏览器的类型及版本。JavaScript判断浏览器类
- 在MySQL中删除数据有两种方式:truncate(截短)属于粗暴型的清空delete属于精细化的删除删除操作如果你需要清空表里的所有数据,
- 目录基本介绍优缺点Python实现方式1,元类实现:方式2,继承实现:方式3,装饰器实现:方式4,模块实现:方式5,@classmethod
- 偶然发现linux系统附带的一个数独游戏,打开玩了几把。无奈是个数独菜鸟,以前没玩过,根本就走不出几步就一团浆糊了。于是就打算借助计算机的强
- 看到这篇文章的人,如果我没有估计错的话,八成是从事互联网的人,其中又有八成是做设计的。如果真是这样,可以一起庆幸一下。首先,庆幸从事着一个没
- 当在python中遍历一个序列时,我们通常采用如下的方法: for item in sequence: proce
- 今天来聊一下我在Go中对数据进行 JSON 编码时遇到次数最多的三个问题以及解决方法,大家来看看是不是也为这些问题挠掉了不少头发。自定义JS
- 初学初用,随手记录以当作笔记使用,会慢慢再进行补充添加,错误之处烦请指正。(1)运行本地文件,在代码不加载的情况下可以直接显示结果% run
- ASP生成柱型体,折线图,饼图源代码。一:纯ASP代码生成图表函数2——折线图;二:纯ASP代码生成图表函数1——柱状图 ;三:纯