Odbc连SQL Server数据库的几种方法

odbc|server|数据|数据库

Odbc连SQL Server数据库的几种方法

 

这篇文章是针对在CSDN论坛 中的一些想知道这方面技术的网友而写的。因为最近我本人在论坛上看到很多网友提到这个问题,所以就写了这篇文章,以飨读者。

SQL Server 是一种高效的关系数据库系统,它与Windows NT/2000及Windows 9x等操作系统紧密集成。也是今天市场上几种大型关系型数据库(SQL Server\Oracle ybase等)之一。对于今天复杂的B/S服务器系统来说,SQL Server是一个很好的选择。

一、先建立一个用来测试的数据库DB_Test

第一步:启动SQL Server7.0数据库,进入“SQL Server Enterprise Manager“管理界面,右键点击[服务器名]选择[新键][Database]进入”Database Porperties“界面。如图1所示。

                                      图1

第二步:在图1中的“Name“里输入数据库名DB_Test。在”Automatically“前面的复选框里打勾,即使SQL Server能够自动地按需要增加数据库文件的大小。单击“确定”完成数据库的创建。

二、    接下来就以我们创建好的DB_Test数据库为例,讲怎样用Odbc连SQL Server数据库的几种方法。

ASP脚本中可以通过三种方式访问数据库:
● IDC(Internet Database Connector)方式
● ADO(ActiveX Data Objects)方式
● RDS(Remote Data Service)方式

1.          Internet数据库接口(IDC)
IDC是一个传统的数据库查询工具,用来定义和执行数据库查询的SQL命令,并向浏览器返回一个指定数据格式的页面。使用IDC访问数据库最大的特点是简单,几乎不需要编程就能实现对数据库的访问。不过,今天很少使用IDC方式来连接数据库,所以我在这里就不描述了。

2.ActiveX数据对象(ADO)

ADO(ActiveX Data Object),是一组优化的访问数据库的专用对象集,它为ASP提供了完整的站点数据库解决方案,它作用在服务器端,提供含有数据库信息的主页内容,通过执行SQL命令,让用户在浏览器画面中输入,更新和删除站点数据库的信息。ADO的主要优点是易用、高速、占用内存和磁盘空间少,所以非常适合于作为服务器端的数据库访问技术。
ADO主要包括Connection,Recordset和Command三个对象, 它们的主要功能如下:
  Connection对象:负责打开或连接数据库文件;
  Recordset对象:存取数据库的内容;
  Command对象:对数据库下达行动查询指令,以及执行SQL Server的存储过程。

利用ADO组件连接数据库有两种方式:

1、直接连接数据库方式

<%

Dim  Conn,strConn

Set Conn=Server.CreateObjec(“ADODB.Connection”)

strConn=”Driver={SQL Server};Server=ServerName;”& _

“Uid=UserName;Pwd=Password;”& _

“DataBase=DatabaseName”

Conn.Open strConn,1,1

%>

2、创建数据源名(DSN)方式

配置ODBC数据源有三种类型,就是用户数据源、系统数据源和文件数据源。数据源名(DSN),根据MICROSOFT的官方文档,DSN的意思是“应用程序用以请求一个连到ODBC数据源的连接(CONNECTION)的名字”,也就是说,它是一个代表ODBC连接的符号。一个DSN配置好了,它就已经蕴涵诸如数据库文件名、所在目录、数据库驱动程序、用户ID、密码等项目。因此,当建立一个连接时,你不用去考虑数据库文件名、它在哪儿等等,只要给出它在ODBC中的DSN即可。下面给出了创建DSN的全过程。(以WIN2000操作系统,设置系统DSN为例)

在“控制面板”中双击“管理工具“—>双击“ODBC”图标,进入“ODBC数据源管理器“界面。选择” 系统DSN “页,进入”创建新数据源“界面,如图2。

然后选择驱动程序为“SQL Server“,如图2所示。按[完成]进入”创建到SQL SERVER的新数据源“界面,输入名称为”SJY”,描述,服务器。如图3所示。

后按[下一步]。按默认设置再按[下一步],在”更改默认的数据库“选项前的复选框中打勾,选择你的数据库。如图4所示。

按[下一步],保留默认,对后按[完成],就这样,一个数据源sjy建立好了。

下面是通过数据源连接数据库的代码,为了数据库的安全起见,我们在Golbal.asa文件里写连接代码,然后在页面上调用。

<SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER">

Sub Application_onStart

Application("ConnectDataSourceString")="DSN=sjy;UID=sa;PWD=;"

Sub Application_onEnd

End sub

</Script>

在ASP页面上调用

<%

Dim conn,strconn

Set conn= Server.CreateObjec(“ADODB.Connection”)

Conn.open  Application("ConnectDataSourceString")

%>

3、远程数据服务(RDS)

ADO虽然能够提供非常强大的数据库访问功能,但是它不支持数据远程操作(DataRemoting)。而RDS就比ADO更进一步,它支持数据远程操作。它不仅能执行查询并返回数据库查询结果,而且这种结果是“动态的”, 服务器上的数据库与客户端看到的数据保持“活的连接关系”。即把服务器端的数据搬到客户端,在客户端修改数据后,调用一个数据库更新命令,就可以将客户端对数据的修改写回数据库,就象使用本地数据库一样。

由于RDS与ADO集成,RDS的底层是调用ADO来完成的,所以也可以将RDS理解为ADO的RDS,即ActiveX数据对象的远程数据服务。RDS在ADO的基础上通过绑定的数据显示和操作控件,提供给客户端更强的数据表现力和远程数据操纵功能。可以说RDS是目前基于Web的最好的远程数据库访问方式。

三、总结:

本文讲述了ASP访问数据库的三种方式,它们三者各有各的特色。IDC十分简单,使用.idc文件和.htx文件分别完成数据库的访问与输出任务,但是使用起来不灵活。ADO是ASP中推荐使用的方式,它功能强大,使用方便,是ASP的核心技术之一,但是它在提供用户远程操作数据库的功能时,比较复杂,实现起来有一定的难度。而RDS是基于ADO的,并提供远程操作数据库的强大工具。所以在需要提供高性能、高可靠性的远程数据操作功能时,RDS是更为理想的选择。

时间: 2024-10-29 20:25:37

Odbc连SQL Server数据库的几种方法的相关文章

ASP创建SQL Server数据库的两种方法

server|创建|数据|数据库 <% ************ 使用ADODB.Connect对象创建 ************************Dim oConnDim sDatabaseNamesDatabaseName = "CodeCreateDB"Set oConn = Server.CreateObject("ADODB.Connection")oConn.Open "Provider=SQLOLEDB;Data Source=(

SQL Server数据库备份二种方法

  只拷贝备份 我认为一个很有用的特性就是只拷贝备份,它让你可以在备份过程中,在不打乱其他备份文件的顺序的情况下进行拷 贝.使用SQL Server 2000的时候,如果你在一天的中间运行了一个特殊的完全备份,为了恢复,你必须使用完全备份 和在完全备份之后发生的所有事务日志.这个新的特性允许你创建一个只对备份的拷贝,然后使用正常的完全拷贝来 达到恢复的目的. 对于不同的备份,在处理方式上没有任何的改变.对于事务日志备份,你也可以只对备份进行拷贝--同样是不需要 打乱其他备份文件的顺序.任何通过这

go语言通过odbc访问Sql Server数据库的方法_Golang

本文实例讲述了go语言通过odbc访问Sql Server数据库的方法.分享给大家供大家参考.具体如下: 这里需要用到go-odbc库,开源地址为:https://github.com/weigj/go-odbc 复制代码 代码如下: package main; import (     "fmt"     "database/sql"     _"odbc/driver" ) func main(){     conn,err := sql.O

访问 Microsoft SQL Server 元数据的三种方法

server|访问|数据 访问 Microsoft SQL Server 元数据的三种方法 上海微创软件有限公司 肖桂东 适用读者:Microsoft SQL Server 中.高级用户 元数据简介 元数据 (metadata) 最常见的定义为"有关数据的结构数据",或者再简单一点就是"关于数据的信息",日常生活中的图例.图书馆目录卡和名片等都可以看作是元数据.在关系型数据库管理系统 (DBMS) 中,元数据描述了数据的结构和意义.比如在管理.维护 SQL Serv

浅谈基于SQL Server分页存储过程五种方法及性能比较

在SQL Server数据库操作中,我们常常会用到存储过程对实现对查询的数据的分页处理,以方便浏览者的浏览. 创建数据库data_Test : create database data_Test GO use data_Test GO create table tb_TestTable --创建表 ( id int identity(1,1) primary key, userName nvarchar(20) not null, userPWD nvarchar(20) not null, u

Excel表数据导入Sql Server数据库中两种办法

方法一,程序导入 C#.ASP.NET中将Excel表中的数据导入到Sql Server数据库中对应的表中. 这里我们将E:\test.xls中Sheet1表中的数据导入到test数据库中的my_test表中. 软件:VS2005,SQL Server2000, test.xls中Sheet1表中有三个字段,编号.名称.备注.具体内容如下图. 1.首先,我们要先在test数据库中新建一个my_test表,该表具有三个字段 tid int类型, tname nvarchar类型, tt nvarc

改善SQL Server数据库的内存管理方法

最近,为了能在数据库服务器中运行其他应用程序,在保持数据库操作系统版本不变的前提下对数据库服务器进行了软.硬件上的升级.在软件上,将操作系统从Windows 2000升级到Windows Server 2003:在硬件上,将服务器中的内存由原来的512MB增加到1GB(1024MB). 在升级后的开始几个星期之内,服务器在使用中表现良好.但是不久后就发现,在服务器上同时运行的其他应用程序却出现了异常,不时地报出内存分配不足的警告.经过几次跟踪后发现,原来是SQL Server吞去了大部分内存所致

微软SQL Server数据库的两种请求游标

[IT168 技术]游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果.每个游标区都有一个名字.用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理. 关系数据库中的操作会对整个行集起作用.由 SELECT 语句返回的行集包括满足该语句的 WHERE 子句中条件的所有行.这种由语句返回的完整行集称为结果集.应用程序,特别是交互式联机应用程序,并不总能将整个结果集作为一个单元来有效地处理.这些应用程序需要一种机制以便每次处理一行或一部分行.游标就

SQL Server 数据库清除日志的方法_mssql2005

方法一: 1.打开查询分析器,输入命令 BACKUP LOG database_name WITH NO_LOG 2.再打开企业管理器--右键要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了. 方法二: 设置检查点,自动截断日志 一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大 1.设置数据库模式为简单模