
'定义变量
dim access As New ADODBConnection
dim res As New ADODBRecordset
'连接数据库
accessConnectionString = "Provider=MicrosoftJetOLEDB40;" _
+ " Data Source=" + AppPath + "\testmdb; "
resOpen "SELECT FROM test where 学号 = ‘001’", access, 1, 3
'取表中字段test
num=resFields (test)
(注意要把你的数据库文件和你的工程窗体啥的放在同一个文件夹里)
先插入一个模块,在模块里写代码
Public cn As ADODBConnection
Sub con()
Set cn = New ADODBConnection
cnConnectionString = "Provider=MicrosoftJetOLEDB40;Data Source=" & AppPath & "\数据库名扩展名;Persist Security Info=False"(在一行里)
End Sub
在窗体里写代码
call con
cnopen //打开数据库
Dim rs As ADODBRecordset //rs是变量
Set rs = New ADODBRecordset
查找
rsOpen "select from 表名 where 字段名1=' " & Text1Text & " ' and 字段名2= ' " & Text2Text & " ' ", cn //text里的内容是符合你要查找的要求
rsOpen "select from 表名" //查找整个表的内容
Set DataGrid1DataSource = rs //显示在DataGrid里
往数据库里添加内容是(不过貌似只能一个一个的吧,要不就用循环)
cnExecute "INSERT INTO 表明 (字段1,字段2,字段3) VALUES('" & Text1 & "','" & Text2 & "','" & Combo3Text & "')"
删除 cnExecute "DELETE FROM 表明 where 字段名='" & Text1 & "'"
你可以执行如下语句 Set rs1=dbOpenRecordset(select count() from dm)
la1=rs1Fields(0)
里面可能存在某些语法错误,你可以按照VB语法稍作修改即可
分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
最好详细点,兄弟笨笨的呢
解析:
Private Sub Form_Load()
Text1Text = AppPath & "\123xls"
Text2Text = AppPath & "\123mdb"
Text3Text = "sheet1"
Text4Text = "sheet1"
Data1DatabaseName = AppPath & "\123mdb"
End Sub
Private Sub Command1_Click()
Dim db As Database
Dim sheet As String, excelpath As String, AccessPath As String, AccessTable As String
AccessPath = Text2Text '数据库路径
excelpath = Text1Text '电子表格路经
AccessTable = Text4Text '数据库内表格
sheet = Text3Text '电子表格内工作表
Set db = OpenDatabase(excelpath, True, False, "Excel 50") '打开电子表格文件
SQL = ("Select into [;database=" & AccessPath & "]" & AccessTable & " FROM [" & sheet & "$]")
dbExecute (SQL) '将电子表格导入数据库
Data1RecordSource = "sheet1"
Data1Refresh
DBGrid1Refresh '显示电子表格导入到数据库的数据
End Sub
上面的是把EXCEL读取到数据库中,你做点修改就行了一个Data控件
1、打开代码窗口,添加引用:Imports SystemDataSqlClient。
2、输入以下代码:
“Public conn1 As SqlConnection = New SqlConnection _
("server=192168179; Initial Catalog= student; User ID= panqe;PWD=shentai768@")”,vb就已经成功连接sql数据库了。
3、代码详解:声明关键字Public(因为是全局变量,所以用Public 来声明)。
4、连接参数。
5、如果SQL 数据库就在本机,则用以下代码连接:
("server=; Integrated Security=False;Initial Catalog= student; User ID= panqe;PWD=shentai768@")。
6:如果代码太长,影响可读性,可以用空格加"_"后,回车换行。
不同的计算机安装SQL的连接是不同的
关于连接总结如下:
ADODB编码连接字的实例
VB中,关于SQL数据库的连接是比较复杂的,但也有一个可以参考的学习思路,方法如下。
1、建立数据库链接
在工具条中,有一个“数据视图窗口”的工具,用它可以建立各种数据库的链接。建立链接的过程:
点击“数据视图窗口”,出现“数据视图”窗体,点击选中“数据链接”,按右键,点击“添加数据链接”,出现“数据链接属性”窗口,有四个菜单:“提供程序”、“连接”、“高级”、“所有”。
选中“提供程序”菜单,这里有许多用于链接的驱动程序,选中“Microsoft OLE DB Provider for SQL Server”,点击“下一步”。“Microsoft OLE DB Provider for SQL Server”是真正的SQL数据库连接字用的驱动程序。
当选中“Microsoft OLE DB Provider for SQL Server”,点击“下一步”,则自动进入“连接”窗体界面。这个“连接”窗体界面的内容,随前面选取的驱动程序而定。
因为前面选择的是“Microsoft OLE DB Provider for SQL Server”,所以,“连接”窗体的主要内容就是直接访问SQL数据库的相关内容的设置,如下:
在“……服务器名称”一栏中怎么选择呢如SQL数据库服务器安装时是选择当地默认的实例,即以本地计算机名代替的服务器,则此处应填写的内容是:(local),或者是:本地的计算机名。估计,非本地的则可填写:服务器的IP地址或服务器名称。
在“输入登录服务器的信息”一栏中怎么选择呢当选择“使用指定的用户名和密码”一项时,用户名与密码是在SQL服务器安装时选定的内容(值)。若不用密码及用户名登入,则连接字的密码应代之为:Integrate Security=SSPI,表示用“Windows NT 集成安全设置”之意,SQL2005是用这一项的。但实际的ADODB的连接字是不能用这个NT打开的。
在“服务器上选择数据库”一栏中怎么选择呢当前面两项内容选择正确后,此处的内容是存在可选的,选中即可。
最后“测试连接”,显示成功。则在“数据视图”窗体的“数据链接”中将出现“Datelink1”,表示建立了以“Datelink1”为名的第1个数据库链接。当然也可以建立多个,名字将分别为“Datelink2”、“Datelink3”……
2、从已建立的数据库链接的属性中找连接字。
当选中“数据视图”窗体的“数据链接”,出现“Datelink1”,并选中“Datelink1”,按右键出现d出菜单,选中“属性”,点击,并可看见这个链接所用到的名字“Name”,“Name”对应的值,就是连接字的主要内容。只是缺少“Password= ”与“ ConnectionTimeout= ”,因此只要把这两向补齐,就是一个完整可用的ADODB的连接字,而且也适用于ADODC控件的字连接,即ConnectionString,但不需要双引号“”而已。
注意:在前面“数据链接属性”窗口的四个菜单“提供程序”、“连接”、“高级”、“所有”中,前面只重点介绍了“提供程序”与“连接”两项,实际上,“高级”就有ConnectionTimeout属性的选择项。而“提供程序”、“连接”、“高级”三项的选择结果,都在“所有”项中集中显示出来,而且“所有”项中,还有前三项不具有的其它的内容,因此,要注意察看与应用。
Command1_Click()
MeCaption = "NAME"
MeCls
Dim con As ADODBConnection (注:ADODC控件用的申明,不用ADODB,也不用Adodc。)
Dim rs As New ADODBRecordset
Set con = New ADODBConnection
conConnectionString = "Provider=SQLOLEDB1;Persist Security Info=False;User ID=sa;Initial Catalog=SQL数据库名;Data Sure=(local);Password=密码值(注:无时不选此项);Use Procedure for preplare=1;Auto Translate=True;Packet Size = 4096;Workstation ID=(local)(注:或是局域网的机器名);Use Encryption for Date=False;Tag With column collation when Possible=False"
conOpen
rsOpen "Select from SQL数据库表或视图名 ", con
MeAutoRedraw = True
rsMoveFirst
Dim ptr As Integer
For ptr = 0 To 20
Print rsFields(ptr)Name, 注:Name表示是表格的列名。
Next ptr
While Not rsEOF()
For ptr = 0 To 20
Print rsFields(ptr)Value, 注:Value表示是表格的数值。
Next ptr
rsMoveNext
Wend
End Sub
用ADODC方法更简单:
在窗口中建立:Command1,CAdodc1及DataDrid1,设置好CAdodc1的连接属性,见前所述
Command1_Click()
MeCaption = "NAME"
MeCls
Set DataDrid1=Adodc1
End Sub
以上就是关于vb读取数据库并赋值全部的内容,包括:vb读取数据库并赋值、怎么用VB来对ACCESS数据库读写,我想把表直接显示出来.、VB6.0 读取数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)