启动VB6.0,新建一个工程,在菜单-工程-引用里选"Microsoft ActiveX Data Objects 2.0 Library",代码里需要有
dim conn As New ADODB.Connection
定义ADO数据库对象
conn.ConnectionString = "driver={SQL Server};" & _
"server=" & ServerName & ";uid=" & UserName & ";
pwd=" & Password & ";database=" & DatabaseName & ""
连接数据串
conn.open 连接数据库
注:ServerName为服务器名;UserName为用户名;Password为用户口令; DatabaseName要登录的数据库名,可以为空。
核心代码如下:
一、建立数据库
原理:建立数据库先要初始化一个数据库设备,然后在此设备上建立数据库。所有的设备名在系统表"sysdevices"里有记录,所有的数据库名在系统表"sysdatabases"里有记录。在建立之前,最好先查询这两个系统表,看名称是否已经存在。在建立设备之前,还需要的一个物理名和空闲的设备标识号。
初始化设备语法:
DISK INIT NAME="device_name",PHYNAME=
"physical_name",VDEVNO=device_number,
SIZE=numberofblock
说明:这里,NAME是数据库设备名(一个有效的标识符),PHYNAME(数据库设备的物理名)是原始的磁盘分区UNIX或外设(vms)名,或者是操作系统的文件名。VDEVNO时数据库的设备标识号,合法值为1-255,SIZE的单位是2KB的块,例如1MB(1024KB)时SIZE值为512。
建立数据库语法:CREATE DATABASE database_name [ON database_device]
说明:database_name是要建的数据库名,database_device是设备名
要新建立一个数据库,就需要设备名,数据库名,物理名和设备号。具体步骤如下:
我们假设用户要新建立设备dbName,在设备dbName上建立数据库dbName。
1)得到设备名 bName是用户给出的设备名;先查询系统表sysdevices,看用户给出的设备名dbName是否已经存在,如果此设备名存在,就需要更换一个设备名,因为设备名是唯一的。
sql = "select * from sysdevices
where name=" & dbName & ""
Set rs = conn.Execute(sql)
If Not rs.EOF Then
MsgBox "设备名"" & dbName & ""
已存在!", 16, "请重新输入名称"
Exit Sub
End If
2)得到数据库名。dbName是用户给出的数据库名;查询系统表sysdatabases,看用户给出的数据库名dbName是否已经存在,如果此数据库存在,就需要更换一个数据库名,像设备名一样,数据库名也是唯一的
sql = "select * from sysdatabases
where name=" & dbName & ""
Set rs = conn.Execute(sql) 下面代码略
3)得到PHYNAME物理名。查询服务器上数据库文件的物理位置serverpath,典型的,我们可以从系统表sysdevices中查询master(这是SQL Server的主库名)数据库的位置,例如G:\MSSQL\DATA\MASTER.DAT,则我们的数据库可以建在"G:\MSSQL\DATA\"目录下。
sql = "select name,phyname from sysdevices "
low/16777216为设备号
Set rs = conn.Execute(sql)
然后遍历记录对象rs,当name="master"时,取出phyname,
从而可以得到物理位置serverpath =G:\MSSQL\DATA\。
4)得到一个空闲的设备号vdevno。设备号合法值1~255,遍历这些号,查找出未被使用的空闲设备号,下面程序得到已有的设备号
sql = "select distinct low/16777216
from sysdevices order by low/16777216"
low/16777216为设备号
5)建立数据库。所需的信息都准备完毕,可以建立数据库了(注:下面的"" & Chr(34) & ""就是一个"""双引号,这样处理后,才能满足语法要求;数据库为20M,则dbSize=512*20)
sql = "DISK INIT NAME=" & Chr(34) & ""
& dbName & "" & Chr(34) & ",PHYSNAME="
& Chr(34) & "" & serverpath & "" & dbName
& ".dat" & Chr(34) & ",VDEVNO=" & vdevno
& ",SIZE=" & dbSize & ""
Set rs = conn.Execute(sql) 初始化设备
sql = "CREATE DATABASE " & dbName & "
on " & dbName & "=" & dbSize & ""
注:
第一个dbName是数据库名,
第二个dbName是设备名
Set rs = conn.Execute(sql)
在设备dbName上建立数据库dbName
MsgBox "数据库"" & dbName & ""建在服务器上
"" & serverpath & "" & dbName & ".dat",
建立成功!", 64, "成功"
② VB数据库的SQL语句访问问题
哈哈
这个问题我遇到过
首先你想看看书是不是让你在代码里写这些设置呢;
然后再说,再用select语句时,应先设置recordsettype
=
1
其次当你在设置text.datafield时,虽然你绑定了data控件,但是data没有绑定表,所以会有你一点text.datafiel时会有如图错误,书上说的只是提供思路,你可以在form_load事件中写入这些代码,具体的我就不给你写了相信你也会了。
③ sql语言和VB语言的区别
sql是数据库语言,VB是编程语言
Visual Basic是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。从任何标准来说,VB都是世界上使用人数最多的语言——不仅是盛赞VB的开发者还是抱怨VB的开发者的数量。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。
结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的结构化查询语言语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使他具有极大的灵活性和强大的功能。
④ VB 更新数据库的SQL语句
更新数据库的SQL语句通过Update。
语法:
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
示例:
'更新Person表的地址(address)和城市名称(city),条件是LastName等于Wilson
UPDATEPersonSETAddress='Zhongshan23',City='Nanjing'
WHERELastName='Wilson'
⑤ VB数据库SQL语句,怎么写SQL语句连接的是ADO控件,DataGrid控件。
1、select
rownum
as
排名,s.学号,t.姓名,t.班级,s.总分,s.平均分
from
(select
学号
,sum(成绩)
as
总分,avg(成绩)
as
平均分
from
score
group
by
学号
order
by
sum(成绩)
)
s
left
join
student
t
on
(s.学号=t.学号)
2、
select
rownum
as
排名,学号,姓名,班级,课程名称
as
课程,成绩,参加考试人数
from
(select
s.学号,t.姓名,t.班级,s.课程名称,s.成绩,t2.参加考试人数
from
(select
*
from
score
)
s
left
join
student
t
on
(s.学号=t.学号)
,(select
count(学号)
as
参加考试人数,课程号
from
score
group
by
课程号)
t2
where
s.课程号=t2.课程号
order
by
课程号,成绩desc)
这两个sql试试看,我没怎么用过access,一般都用oracle,所以这两个sql可能会有细微调整,但是大体上的逻辑应该是这样了
⑥ vb和sql有什么联系吗,咋就感觉着两种语言有点相似呢 求高手解答啊,谢谢啦,。
SQL是结构化查询语言(或者说数据库搜索引擎),其他程序设计语言(VB、VC、Delphi等等)可以通过SQL连接数据库。打个比方:如果说数据库是仓库,那么SQL就是仓库管理员,其他程序设计语言(比如VB)就是来仓库取货的,他们都要经过管理员的授权同意以及协助才能从仓库中取到所需的货物。不知道这样比喻,能帮助你理解吗?
⑦ vb中用sql语句查询数据库
"SELECT
sno,sco
FROM
sco
WHERE
sno='"
&
text1.text
&
"'"
因为现在不弄VB6了,所以具体怎么连接的代码我忘了,大概就是如果得到的结果RecordSet是空的,即Bof
And
Eof,则用户名错误,否则如果规定了用户名不可重复,就有且仅有1条记录,再比较其中的sco与Text2.Text是否相等,是则正确通过,否则密码错误。
⑧ vb的sql语句
结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
VB可将Sql查询语句赋值给Adodc数据控件的属性或提供给Ado数据对象,完成存取数据以及查询、更新和管理关系数据库系统。
⑨ vb.net 中如何使用SQL语句查询数据库中的数据
1、首先打开Visual Studio 2008代码窗口,添加引用。
⑩ vb.net 中如何使用SQL语句查询数据库
dim
myselectquery
as
string
=
"select
*
from
表1
where
姓名='小强'"
dim
mycommand
as
new
sqlcommand
(myselectquery,
conn)
'建立一个command控件,conn是你的sqlconnection对象
conn.open()'打开数据连接
dim
myreader
as
sqldatareader'定义一个reader用来读数据
myreader
=
mycommand.executereader()'运行你的查询,结果到myreader
if
myreader.read()
then
'如果查到了数据
msgbox(myreader.getstring(0))
'显示第一个字段
end
if