vb连接数据库代码?vb连接sql数据库简单实例
大家好,今天来为大家解答vb连接数据库代码这个问题的一些问题点,包括vb连接sql数据库简单实例也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~
vb如何连接sql数据库,求源码
Dim conn As New ADODB.Connection'创建一个 Connection实例,在这里使用New等于将Dim和Set合并为一段代码执行
Dim rs As ADODB.Recordset'创建一个 Recordset实例,不使用New是因为,经常需要重复使用Set,因此没必要在这里使用
Dim CnStr As String, Sql As String'创建两个字符串变量分别存放两个集合的SQL语句代码段
1、装载数据库(不属于Recordset集合)
=============
Dim FileNamw$, DbIp$, DbName$, DbUser$, DbPw$
'以上5个字符串变量分别表示文件路径和文件名、数据库地址、数据库名、数据操作员用户名、操作员密码
FileName= App.Path&"\'数据库名'"
DbIp="数据库地址"
DbName="数据库名"
DbUser="数据操作员用户名"
DbPw="操作员密码"
'以上变量根据数据库类型的不同而不同,有可能只需要1至两个变量
'1)连接Access数据库:
'-------------------
CnStr="PROVIDER=microsoft.jet.oledb.3.51;persist security info=false;data source="& FileName&";Jet OLEDB:Database Password="& DbPw
'2)连接Oracle数据库:
'-------------------
CnStr="PROVIDER=MSDAORA.1;Password="& DbPw&";User ID="& DbUser&";Data Source="& FileName&";Persist Security Info=True"
'其中:
'PASSWORD:密码
'User ID:用户号
'Data Source:数据库名
'Persist Security Info:
'Provider:
'3)连接VF的DBF库:
'----------------
CnStr="PROVIDER=MSDASQL.1;Persist Security Info=False;Driver={Microsoft Visual FoxPro Driver};UID="& DbUser&";SourceDB="& FileName&
";SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Machine;"
'4)连接SQL的数据库
'------------------
CnStr="PROVIDER=MSDataShape;Data PROVIDER=MSDASQL;uid="& DbUser&";pwd="& DbPw&";DRIVER=SQL Server;DATABASE="& DbName&";WSID=GQSOFT;SERVER="&
DbIP
'也可以使用这段简易代码 CnStr="Provider=SQLOLEDB;Data Source="& DbIp&";DATABASE="& DbName&";UID="& DbUser&";pwd="& DbPw
Conn.Open cnstr'使用 Connection集合的 Open方法与数据库建立连接
2、Recordset集合的常用方法
==========================
'1)打开一个表
'------------
Sql="select* from表名"'SQL查询语句
Set rs= New ADODB.Recordset'新建一个实例
rs.Open Sql, conn'使用 Open方法打开数据库中的一个表
'注意,这种打开方式只能使用 rs.MoveNext(即,向后移动行坐标)而不能像其他方向,并且不能修改数据内容
'
'rs.Open Sql, conn,1'虽然只加了个“1”,但这种方法可以向任何方向移动行坐标。
'
'以下参数代表了这个可选值的含义
'0= adOpenForwardOnly(默认值)打开仅向前类型游标。
'1= adOpenKeyset打开键集类型游标。
'2= adOpenDynamic打开动态类型游标。
'3= adOpenStatic打开静态类型游标。
'
'虽然使用以上方法可以可以实现行坐标(游标)的任意移动,但是仍然无法写入数据。因此需要进一步的对Open方法进行完善
'rs.Open Sql, conn, 1, 3'后面的3是确定读写权限的
'以下参数代表了这个可选值的含义
'1= adLockReadOnly(默认值)只读—不能改变数据。
'2= adLockPessimistic保守式锁定(逐个)—在编辑时立即锁定数据源的记录。
'3= adLockOptimistic开放式锁定(逐个)—只在调用 Update方法时才锁定记录。
'4= adLockBatchOptimistic开放式批更新—用于批更新模式(与立即更新模式相对)。
'
'2)读写数据
'----------
'增加一行记录并对新记录的内容进行修改并保存可以如下写法
rs.AddNew'增加一行记录
rs("...")="..."'数据读写操作
...
rs.UpDate'保存写入资料,如果使用只读权限,则不能使用这个方法
rs.Close'这个方法用来关闭你所代开的表,如果不使用这个方法也可以,但是数据库仍然认为你在对标进行锁定,可造成数据库负担过重
2、对数据进行筛选和排序
=======================
Sql="select* from表名"'SQL查询语句
'以上为打开一个表的所有内容
Sql="select top 50* from表名"'SQL查询语句
'以上为只打开前50行的记录
Sql="select top 50列名1,列名2,列名5 from表名"'SQL查询语句
'以上为只打开前50行的记录,并且只打开第1、2、5列数据
Sql="select* from表名 where列名1='"&字段&"'"'SQL查询语句
'以上为一个简单的筛选,表示打开的内容必须符合[列名1='"&字段&"'"]的内容
'需要注意的是,数据库列的类型必须匹配,比如字符串类型需要以单引号括起
'而数字类型则不能用单引号括起
'另外SQL语句还支持通配符,例如列名1 like'%"&字段&"%'"表示包含[字段]
'在表达式中的匹配
'? _(下划线)任何单一字符
'* or%零个或多个字符
'#任何单一数字(0— 9)
'[charlist]任何在字符表中的单一字符
'[!charlist]任何不在字符表中的单一字符
'注:根据数据库的不同?、_和*、%的应用有所差别,比如SQL只使用%和 _分别代表多个字符和单一字符
Sql="select* from表名 where列名1='"&字段&"' ORDER BY字段1 ASC"'对查询结果进行升序排列
Sql="select* from表名 where列名1='"&字段&"' ORDER BY字段1 DESC"'对查询结果进行降序排列
Sql="select* from表名 where列名1='"&字段&"' ORDER BY字段1 DESC, ORDER BY字段2 DESC"'对查询结果进行多维降序排列(速度奇慢,不推荐使用)
3、Recordset集合的常用属性方法
==============================
rs.BOF'是否游标在最上边
rs.EOF'是否游标在最下边
rs.RecordCount'记录集的行数(如果使用像前类型的游标,可能返回不准确)
rs.AddNew'新建一行记录
rs.Update'保存当前行被修改的记录
rs.Delete'删除当前行
rs.Close'关闭记录集
4、Fields集合的一些属性的解释
=============================
'以下为简写,正常情况需要rs.Fileds.。。。但是Fields属于Recordset的一个默认集合,因此可以省略
rs()'括号内可以是列名也可以是列的序号例如:rs("姓名")、rs(3)都是是可以的
rs(3).Name'返回列名
rs(3).Type'返回列的类型
rs(3).Value'返回当前行的值
rs.Fields.Count'返回列数
急!急!急!vb如何连接sql数据库
这里要用到adodc控件,首先连接好数据,
select* from管理员
查询:
用文本框txtName和txtPass输入名字与密码
然后:
"select* from管理员 where用户名='"& txtName&"'and密码='"& txtPass&"'"
查一下有记录不?
这里有几个小技巧
有时会出错,
因为什么,俺也不清楚
但是这样可以解决
1.数据类型出错:你再建一个文本框,它与Adodc的数据关联,这样就不出错了 [将它隐去]
2.查询语句出错
那是无法解析
"'"
这样要建& Chr(13)&取代.
如果看不明白,说明您没学,找个学友抄得了.
如何用VB连接SQL数据库做登录
VB连接SQL数据库,可通过ADO数据对象和SQL结构化查询语言实现。
ADO(ActiveX数据对象),这项新的数据访问技术的特性包括:更简单的对象模型;与其它 Microsoft和非 Microsoft
的技术更好的集成;为本地和远程数据数据提供的通用接口;可远程访问的和断开的记录集;用户可访问的数据绑定接口;以及层次结构的记录集。
结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
代码示例:
Private Sub XPButton1_Click()
On Error GoTo finish'防错代码,防止意外而导致的退出
sql="select* from用户管理 where用户名='"& Text1.Text&"' and密码='"& Text2.Text&"'"
cn.ConnectionString="Provider=SQLOLEDB.1;Persist Security Info=True;User ID=登录数据库用户名(默认为sa);Password=登录数据库密码;Initial Catalog=数据库名;Data Source=服务器名(默认为:MERRYCHINA)"'这是连接SQL数据库的语句
cn.Open
rs.CursorLocation= adUseClient
rs.Open sql, cn, adOpenDynamic, adLockOptimistic
'以上使用最通用的方法来查询数据库中是否有匹配的记录
If rs.EOF= True Then'如果没有记录则说明用户或密码为错误的
If pnum< 2 Then'pnum就是密码验证次数,当次数超过3次,系统会自动保护退出
pnum= pnum+ 1
MsgBox"用户名或密码错误!", vbInformation,"错误次数:"& pnum
rs.Close
cn.Close
Text1.Text=""
Text2.Text=""
Text1.SetFocus
Exit Sub
Else
MsgBox"用户名或密码错误超过三次,系统会自动退出", vbInformation,"提示"
End
End If
Else
loginname= rs.Fields(0)
Form1.Show
rs.Close
cn.Close
End If
Exit Sub
finish:
MsgBox Err.Description
rs.Close
cn.Close
End Sub
注意cn.ConnectionString此句需依据实际的SQL数据库建立连接获得的字符串。
文章分享结束,vb连接数据库代码和vb连接sql数据库简单实例的答案你都知道了吗?欢迎再次光临本站哦!