《ASPNET+SQL Server商务系统开发与典型实例 第4章》由会员分享,可在线阅读,更多相关《ASPNET+SQL Server商务系统开发与典型实例 第4章(33页珍藏版)》请在金锄头文库上搜索。
1、 第4章 .NET数据库快速学习本章要点: 所谓数据库,其实就是数据的集合,通俗地说, 也就是存储数据的“仓库”。但仓库光有大量的数 据是不够的,还需要一个对数据维护并负责用户 和数据之间访问的机构,即数据库管理系统。现 在流行的数据库管理系统很多,著名的有 ORACLE、SQL Server、MYSQL等,其中SQL Server是微软公司推出的数据库管理系统,具有 很好的易用性和安全性。 什么是ADO.NET?从程序员的角度来讲 ADO.NET就是一组用于和数据源进行交互的面向 对象类库,它支持的数据源很多,例如关系型数 据库、文本文件、Excel文件等。2第4章 .NET数据库快速学习本
2、章内容包括: 安装SQL Server 创建数据库和表 数据的查询和修改 存储过程 ADO.NET概述 ADO.NET主要对象 ADO.NET中的数据处理34.1 安装SQL Server 4.1.1 版本 现在SQL Server共分4个版本,包 括个人版,企业版,标准版和开发 版,其中企业版一般安装在服务器 操作系统上,在Windows XP上选 择安装开发版就可以了。44.1.2 安装SQL Server 2000 【例4.1】 安装SQL Server 2000 (1)将SQL Server安装光盘插入光驱 ,出现如图4.1安装界面,选择【安 装SQL Server 2000组件】,然
3、后 在接下来的安装界面中选择【安装 数据库服务器】,如图4.2所示。 (2)进入SQL Server安装向导的欢迎 界面,如图4.3所示。 (3)单击【下一步】,在如图4.4所示 的安装界面中选择【本地计算机】 。 (4)单击【下一步】,在对话框中选 择【创建新的SQL Server实例.】 ,如图4.5所示。对于初次安装的用 户,应选用这一安装模式,不需要 使用【高级选项】进行安装,高级 选项中的内容均可在安装完成后进 行调整。 (5)单击【下一步】,在打开的【用 户信息】对话框中输入用户姓名和 所在公司的名称,如图4.6所示。54.1.2 安装SQL Server 2000 (6)单击【下
4、一步】,在打开的【软件许可 证协议】对话框中接受软件许可证协议,如图 4.7所示。 (7)单击【是】按钮,然后在【安装定义】 对话框中(如图4.8所示),选择【服务器和客户 端工具】选项进行安装。 (8)单击【下一步】打开【实例名】对话框 ,如图4.9所示。 (9)单击【下一步】打开【安装类型】对话 框,如图4.10所示。 (10)单击【下一步】打开【服务帐户】对话 框,如图4.11所示。选择【对每个服务使用统 一帐户.】的选项。在服务设置处选择【使用 本地系统帐户】选项。 (11)单击【下一步】打开【身份验证模式】 对话框,如图4.12所示。 (12)这里输入密码“123456”,然后选择【
5、下 一步】进入如图4.13所示的【开始复制文件】 对话框,此时可以选回修改前面的设置或单击 【下一步】按钮开始安装,大概一两分钟完成 安装过程。 64.2 创建数据库和表安装好数据库之后,下一步就是要创建我们需 要的数据库和表了,创建数据库和表的步骤都 非常的简单,创建的工具一般用SQL Server 企业管理器,下面着重说明使用Visual Studio .NET 2003如何来创建数据库和表。74.2.1 创建数据库 【例4.2】 创建数据库 (1) 打开SQL Server服务管理器,开 启SQL Server服务。 (2)打开Visual Studio .NET企业级结 构设计版或者企
6、业开发版,选择菜单 【视图】|【服务器资源管理器】命令 。 (3)在打开的【服务器资源管理器】界 面上,右击【数据连接】后选择【创 建新SQL Server数据库】,弹出【创 建数据库】对话框,在各个文本框里 填写相应的参数,如图4.14所示。 (4)其中在【服务器】文本框里填入本 机服务器(local),在【新数据库名】 文本框里填入“TingWorld”,在【登 录】和【密码】里面填入前面安装数 据库时所建立的密码,然后单击【确 定】按钮,弹出【SQL Server登录】 对话框,如图4.15所示。 (5)输入相应的登录ID和密码,然后单 击【确定】,这时就建立了一个名为 TingWorl
7、d的数据库,如图4.16所示 。84.2.2 创建表【例4.3】 创建表 (1)从这一步我们开始建立 一个名为Users的数据库表 ,在打开的【服务器资源管 理器】界面上,右击【表】 节点,从弹出的快捷菜单中 选择【新建表】命令,如图 4.17所示。 (2)在打开的表编辑器里输 入列名、数据类型、长度是 否允许空,然后指定ID为主 键,如图4.18所示。 (3)然后关闭并命名保存, 如图4.19所示。94.3 数据查询和修改从这一节开始,我们开始接触到另一种语言 Transact-SQL语言,与C#语言和MSDN的 关系一样,对于Transact-SQL语言的所有信 息都可以在SQL Serv
8、er联机丛书里找到, SQL Server联机丛书在安装SQL Server 2000 时默认安装。 与SQL Server 通讯的所有应用程序都通过向 服务器发送 Transact-SQL 语句来进行通讯, 而与应用程序的用户界面无关。下面结合 Visual Studio .NET 2003的使用来说明 Transact-SQL对数据库的基本操作。104.3.1 插入数据 【例4.4】 插入数据 (1)在打开的【服务器资源管理器】界 面上,双击例4.3中建立的Users表打 开编辑器,如图4.20所示。 (2)右击Users表名,选择【从表中检 索数据】来显示sql窗格,在打开的 sql编辑
9、器中编写sql语句,如图4.21 所示。 (3)在 sql编辑器里输入语句INSERT INTO Users (ID, Name, PassWord, Age, Address) VALUES (xiaoming, 小明, 123456, 10, 北京),如图4.22所 示 (4)单击工具栏中的【!】按钮,运行 这个语句,将得到一条信息说明仅有 一行受到影响,如图4.23所示。 114.3.2 查询数据【例4.5】 查询数据 (1)重复例4.4中的步骤(1)和(2)。 (2)在 sql编辑器里输入语句SELECT * FROM Users,单击工具栏中的【!】按钮,运行这个语 句,可以看到例4
10、.4中插入的记录,如图4.24所示 。124.3.3 更新数据【例4.6】 更新数据 (1)重复例4.4中的步骤(1)和(2) 。 (2)在 sql编辑器里输入语句 UPDATE Users SET Address = 上海 WHERE Name = 小明。单击工具栏 中的【!】按钮,运行这个语 句。将修改例4.4中插入的记 录,如图4.25所示。 (3)修改成功后,弹出如图 4.26所示的提示对话框。134.3.4 删除数据【例4.6】 删除数据 (1)重复例4.4中的步骤(1) 和(2)。 (2)在sql编辑器里输入语 句DELETE FROM Users WHERE Name= 小明,单
11、击工具栏中的 【!】按钮,运行这个语 句,将删除例4.4中插入 的记录,如图4.28所示。 (3)删除成功后得出如图 4.29所示的提示对话框。144.4 存 储 过 程 4.4.1 存储过程简介 存储过程是SQL语句的组合, 它们被编译在一起,能通过单 个命令而被执行。存储过程用 于向用户返回数据、在表中插 入新数据、修改数据、执行系 统函数和管理任务。 154.4.2 存储过程的建立【例4.8】 建立存储过程 (1)在打开的【服务器资源管 理器】界面上,右击【存储 过程】,选择【新建存储过 程】,如图4.30所示。 (2)在打开的存储过程编辑器 中编辑所要实现的功能,在 这里只是实现一个简
12、单的查 询,所以输入语句select * from Users,如图4.31所示 ,然后关闭并保存。 (3)在【服务器资源管理器】 界面上,右击新建的【存储 过程】,可以选择编辑存储 过程和运行存储过程等命令 ,如图4.32所示。 164.4.3 存储过程的优点使用存储过程有一系列的优点,所以在实际的 程序设计过程中总是推荐大量使用存储过程, 但是凡事总是有个度的,如果过多的使用存储 过程会增加数据库服务器的负担,降低数据库 服务器的执行效率。下面列出了使用存储过程 的一些优点。 效率 网络 安全 174.5 ADO.NET 概述 绝大部分应用程序从本质上来讲 都是处理数据的,要从数据源里 面
13、取得数据,就必须连接数据源( 此后数据源都是指数据库), ADO.NET连接数据库的方式分为 两种:持续连接和非持续连接。184.5.1 持续连接的环境持续连接是指ADO.NET在取数据库数据时保 持持续不断的和数据库的连接,这样做的优点 很多,最重要的是这样做实现起来很安全,很 容易控制并发处理,比其他方式数据更可靠。 缺点在于必须有一个持续的网络连接,要有一 个很好的网络环境。 在持续连接场景下,使用对象DataReader和 数据库交互,资源保持与服务器的联系,直到 连接被关闭。194.5.2 非持续连接的环境在非持续连接的环境中,数据从数据库里取得 并保存在内存里,脱离数据库,被独立地
14、修改 ,然后再连接数据库并将修改保存到数据库。 这样做增加了灵活度,使在修改数据的同时这 个数据库连接还可以被别的用户使用,并且由 于数据的修改都在本机内存中进行,从而提高 了程序性能。缺点在于获得的数据不一定是最 新的,并且必须解决并发冲突。 在非持续连接场景下,使用对象DataSet和 SqlDataAdapter来与数据库交互,数据处理 完成即与服务器断开。204.5.3 相关的命名空间下面列出了.NET框架类库里与数据相关的命名 空间,这些命名空间里包含了ADO.NET中所 有应用到的类,可以在MSDN里找到它们的具 体介绍以及使用的例子。 代码4.1 System.Data Syst
15、em.Data.Common System.Data.SqlClient System.Data.OleDb System.Data.SqlTypes System.Xml214.6 ADO.NET主要对象ADO.NET中的数据提供程序主要包括SQL.NET数据 提供程序(命名空间System.Data.SqlClient)和 OLEDB.NET数据提供程序(命名空间 System.Data.OleDb),它们的主要区别是SQL.NET 数据提供程序只是针对于SQL Server数据库,而 OLEDB.NET数据提供程序则可以应用到任何的数据 源。 在ADO.NET中主要包括Connectio
16、n、Command、 DataAdapter、DataReader和DataSet等对象。本节 主要介绍这些对象的基本概念和基本的用法,在下一 节会结合具体的实例来进一步说明。224.6.1 Connection 对象 表4.1列出了关于connection的一些信息,包括要引用的命 名空间和编程时声明和实例化connection对象的C# 语句。SQL .NET 数据提供程序OLE DB .NET 数据提供程序Using System.Data; Using System.Data.SqlClient;Using System.Data; Using System.Data.SqlClientsqlCon=new SqlConnection (“server=S