vb.ne数据库t模块源码(vba开发文档)
本文目录一览:
- 1、vb数据库代码
- 2、vb如何连接sql数据库,求源码
- 3、VB如何连接SQL数据库,模块代码怎么改,如下:
- 4、为什么在VB编译数据库应用类源代码(如XX管理系统)总是提示变量未定义无法编译
- 5、vb 数据库连接及模块如何调用
- 6、VB.net中用SQL语句操作数据库并实时刷新显示在DataGridView中,附源码,求指导
vb数据库代码
Private Sub Form_Load()
Adodc1.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=" + App.Path + "\" + "cc.mdb" 连接在文件根目录下的数据库
Adodc1.CommandType = adCmdUnknown
Adodc1.RecordSource = "select * from 基本信息" 设置数据表
Adodc1.Refresh 刷新
End Sub
查询--------------------------a = InputBox("请输入查询对象字段", "自定义查询")
Adodc1.CommandType = adCmdUnknown
Adodc1.RecordSource = "select*from 基本信息 where a"
Adodc1.Refresh Adodc1.RecordSource = "select*from 基本信息 where 学号='" text1.text "'"
Adodc1.Refresh增-----------------Adodc1.Recordset.AddNew删-------------Adodc1.Recordset.Delete 我的原作Dim a As String
Private Sub Combo1_Click()
If Combo1.ListIndex = 0 Then
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = False
Combo3.Enabled = False
ElseIf Combo1.ListIndex = 1 Then
Text3.Enabled = True
Text1.Enabled = False
Text2.Enabled = False
Combo3.Enabled = False
ElseIf Combo1.ListIndex = 2 Then
Combo3.Enabled = True
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
End IfEnd SubPrivate Sub Command1_Click()
If Combo1.ListIndex = -1 Then
MsgBox "请选择查询方式", , "提示"
ElseIf Combo1.ListIndex = 0 Then
Adodc1.CommandType = adCmdUnknown
If Text2.Text = "" Then
MsgBox "查询范围上限不可为空", , "提示"
Else
Adodc1.RecordSource = "select * from 基本信息 where 年龄= " Text1.Text " and 年龄= " Text2.Text " "
Adodc1.Refresh
End If
ElseIf Combo1.ListIndex = 1 Then
Adodc1.CommandType = adCmdUnknown
If Text3.Text = "" Then
MsgBox "确定内容为空?"
Adodc1.RecordSource = "select*from 基本信息 where 学号='" Text3.Text "'"
Adodc1.Refresh
Else
Adodc1.RecordSource = "select*from 基本信息 where 学号='" Text3.Text "'"
Adodc1.Refresh
End If
ElseIf Combo1.ListIndex = 2 Then
Adodc1.CommandType = adCmdUnknown
Adodc1.RecordSource = "select * from 基本信息 where 专业='" Combo3.Text "' "
Adodc1.Refresh
End IfEnd SubPrivate Sub Command2_Click()
Adodc1.Recordset.AddNew
End SubPrivate Sub Command3_Click()
Adodc1.Recordset.Delete
End SubPrivate Sub Command4_Click()
Adodc1.CommandType = adCmdUnknown
Adodc1.RecordSource = "select * from 基本信息"
Adodc1.Refresh
End SubPrivate Sub Command5_Click()
a = InputBox("请输入查询对象字段", "自定义查询")
Adodc1.CommandType = adCmdUnknown
Adodc1.RecordSource = "select*from 基本信息 where a"
Adodc1.Refresh
End SubPrivate Sub Form_Load()
Adodc1.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=" + App.Path + "\" + "学生数据库.mdb"
Adodc1.CommandType = adCmdUnknown
Adodc1.RecordSource = "select * from 基本信息"
Adodc1.Refresh
End Sub
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数据库,模块代码怎么改,如下:
.ConnectionString = "data source=MYSQL;initial catalog=SuperMarket;user id=sa;password=;database=SuperMarket;"
这句中的 password= 后要加上你的数据库的sa的密码。源程序中 sa 没密码是绝对不行的。
另外,你的数据库名 是否叫 SuperMarket?若不是则改过来。
一般说来,你应该另外建立一个用户,不要直接使用 sa 来访问数据库。
为什么在VB编译数据库应用类源代码(如XX管理系统)总是提示变量未定义无法编译
“为什么在VB编译数据库应用类源代码(如XX管理系统)总是提示变量未定义无法编译”
1、数据库程序编辑根据你的编辑方法不同,有可能在引用中要加载引用,也有可能使用控件;
2、数据库不同使用的引用不同,对于控件,数据库不同,控件的属性设置也不同(这里说的数据库不同是使用的数据库软件不同,如Access、SQL Strver 2000等等);
3、“如XX管理系统”是什么数据库?
vb 数据库连接及模块如何调用
先更正你一个错误,倒数第三行的
rs.Clone
要改为:
rs.Close
既然你在进入form2前已经连接好了数据库,那么你在form2就可以直接打开记录集对象,然后绑定到datagrid中即可:
if openRs("要查询的SQL语句") then
set datagrid1.datasource=rs
end if
VB.net中用SQL语句操作数据库并实时刷新显示在DataGridView中,附源码,求指导
重要的是区别两个方法:DbAdapter.Fill是读,DbCommand.ExecuteNonquery是执行修改。删除按钮下理论上应先调用修改,确认成功后,再调用读取。