VB操作SQL Server(一)——怎么连接数据库

VB操作SQL Server(一)——如何连接数据库

在我们的初期学习中,VB与SQL Server都是不可缺少的,那么,如何用VB来连接数据库?今天,我们就来解决这个不是问题的问题:


1.使用ADO(ActiveX Data Objec,ActiveX数据对象)连接SQL Server


1)使用ADO控件连接

使用ADO控件的ConnectionString属性就可以连接SQL Server,该属性包含一个由分号分隔的argument=value语句的字符串,用于指定建立与数据源连接的信息,语法如下:

Provider=Drive;Password=UserPassword;PersistSecurity Info=False;User ID=UserName;Initial Catalog=Data Name;DataSource=ServerName

:使用ADO控件连接名为student的数据库

PrivateSub Form_Load()
Adodc1.connectionstring="Provider=SQLOLEDB.1;Password=;PersistSecurity Info=False;User ID=sa;Initial Catalog=student;Data Source=."
End Sub


2)使用ADO对象连接

ADO的数据库访问技术,不仅可以通过VB提供的控件实现,还可以通过ADO相关的对象实现。ADO对象包括了command对象、connection对象、recordset对象、Error对象、field对象、parameter对象、property对象,其中,connection对象是用来管理与数据库的连接的


:使用connection对象的Open方法连接名为student的数据库

Dim cnn as ADODB.Connection
Privatesub Form_Load()
set cnn=New ADODB.Connection
Cnn.open="provider=SQLOLEDB;password=;PersistSecurity Info=true;User ID=sa;Initial Catalog=student;Data Source=."
End Sub


2.使用DAO(Data Access Object,数据访问对象)连接SQL Server

使用DAO连接SQL Server可以使用VB提供的Data控件实现,使用其访问SQL Server时需要掌握connect属性用于定义所要连接数据库的类型,由于Data控件采用的是Access/Jet为数据引擎,所以访问SQL Server时需要用ODBC间接访问

connect属性访问ODBC时的字符串格式设置:

ODBC;DataBase=DataName;UID=UserName;PWD-UserPassword;DSN=DataSourceName


:用Data控件通过ODBC中的studentinfo数据源连接名为student的数据库

PrivateSub Form_Load()
Data1.connect="ODBC;DataBase=student;UID=sa;PWD=123;DSN=studentinfo"
End Sub


上面的方法都适用于与VB操作SQL Server,这些可能相较于Deplin或者ASP与数据库的连接较为简单,但是在初期学习中,只要掌握好这些连接方法,便游刃有余。

14楼lzh11103小时前
挺全面的!
Re: linlin802306193小时前
回复lzh1110n嗯嗯,谢谢夸奖,哈哈~
13楼liujiahan6296294小时前
送你一朵花[e10]
Re: linlin802306194小时前
回复liujiahan629629n那我该回赠个啥呀~哈哈~
12楼zllaptx48697小时前
牛哈~~~你们柳暗花明了,我还暗着呢,呜呜呜呜~~~~~~~
Re: linlin802306196小时前
回复zllaptx4869n你这大好青年,有什么可暗的~
11楼zhanglianhai5558小时前
我和磊磊一样,还山重水复呢
Re: linlin802306198小时前
回复zhanglianhai555n很快就可以看到希望了~
10楼hejingyuan68小时前
其实概括来说就是两种,有源和无源,嘿嘿,加油
Re: linlin802306198小时前
回复hejingyuan6n一起加油~
9楼daihui199241310小时前
好犀利
Re: linlin802306199小时前
回复daihui1992413n没有很犀利吧~
8楼song_mou_xia10小时前
学习了。。。
Re: linlin8023061910小时前
回复song_mou_xian共同学习~
7楼liutengteng130昨天 20:51
总结的不错啊[e03]
Re: linlin80230619昨天 21:10
回复liutengteng130n嘿嘿~
6楼JUNE_916昨天 17:50
学习了继续加油
Re: linlin80230619昨天 17:54
回复JUNE_916n一起加油~
5楼wangyongxia921昨天 16:42
好!
Re: linlin80230619昨天 17:08
回复wangyongxia921n谢谢~
4楼lishehe昨天 14:22
顶,颗粒归仓啊
Re: linlin80230619昨天 14:22
回复lishehen嘿嘿~谢啦~
3楼lishuangzhe7047昨天 11:49
顶。。
Re: linlin80230619昨天 11:54
回复lishuangzhe7047n谢谢双喆~
2楼wj8023昨天 10:19
很详细,顶……
Re: linlin80230619昨天 11:18
回复wj8023n谢谢~(∩_∩)~
1楼zhangyingjie09昨天 09:18
我要好好看看。
Re: linlin80230619昨天 10:07
回复zhangyingjie09n嗯啊,有啥不好的、不对的地方一定得告诉我啊