问题:窗体上我用 adodc + datagrid 控件 来反映数据库中某表的数据
数据库为 ACCESS
下面是我的 代码:(感觉不只一出有问题,不论那里帮忙改正都有分的,不够另补!!!)
数据库 student.mdb
其中一章表名为 grade包括字段为(stu_ID,English,Math,Phyics,Chemistry)
然后在form 里 用 datagrid 把这几个字段显示出来应该是少了好多代码,请高手详细帮我讲讲到底还应该加什么 和 我应该怎么做啊!
并且我觉着上边的某些代码也没有用处,但是不太懂,就请一并说了吧 1
在下 万分谢谢 !!!!!!!!!!!!!(呵呵 , 对高手来说 应该是小菜了!)
(千万别拒绝我这个满怀激情的心啊!)
'在 modMain 模块里边定义 全局变量
Option ExplicitGlobal pubCon As New ADODB.Connection '定义数据库连接对象
Global rsTable As New ADODB.Recordset '定义数据库查询
’包含adodc + datagrid 控件 空间的窗体
private sub Form_load()
On Error GoTo ConnectErr
'连接到ACCESS 数据库
pubCon.ConnectionString = "Provider=Microsoft.Jet.oledb.4.0;" & _
"Persist Security Info =false;" & _
"Data Source =" & App.Path & "\student;" & _
"mode=readwrite"
pubCon.ConnectionTimeout = 30
pubCon.Open
ConnectToServer = True
Exit Function
'错误处理
ConnectErr:
ConnectToServer = False
MsgBox "错误代码: " & Err.Number & vbCrLf & _
"错误描述: " & Err.Description, vbCritical + vbOKOnly, "连接错误"
'Adodc 的连接字符串
Adodc1.ConnectionString = pubCon
'指定Command 对象的形态
Adodc1.CommandType = adCmdText
'设置传回一个资料录集 Adodc1.RecordSource = ("select * from grade")
'将记录集合绑定 DataGrid 控件
Set datgQust.DataSource = Adodc1end sub
数据库为 ACCESS
下面是我的 代码:(感觉不只一出有问题,不论那里帮忙改正都有分的,不够另补!!!)
数据库 student.mdb
其中一章表名为 grade包括字段为(stu_ID,English,Math,Phyics,Chemistry)
然后在form 里 用 datagrid 把这几个字段显示出来应该是少了好多代码,请高手详细帮我讲讲到底还应该加什么 和 我应该怎么做啊!
并且我觉着上边的某些代码也没有用处,但是不太懂,就请一并说了吧 1
在下 万分谢谢 !!!!!!!!!!!!!(呵呵 , 对高手来说 应该是小菜了!)
(千万别拒绝我这个满怀激情的心啊!)
'在 modMain 模块里边定义 全局变量
Option ExplicitGlobal pubCon As New ADODB.Connection '定义数据库连接对象
Global rsTable As New ADODB.Recordset '定义数据库查询
’包含adodc + datagrid 控件 空间的窗体
private sub Form_load()
On Error GoTo ConnectErr
'连接到ACCESS 数据库
pubCon.ConnectionString = "Provider=Microsoft.Jet.oledb.4.0;" & _
"Persist Security Info =false;" & _
"Data Source =" & App.Path & "\student;" & _
"mode=readwrite"
pubCon.ConnectionTimeout = 30
pubCon.Open
ConnectToServer = True
Exit Function
'错误处理
ConnectErr:
ConnectToServer = False
MsgBox "错误代码: " & Err.Number & vbCrLf & _
"错误描述: " & Err.Description, vbCritical + vbOKOnly, "连接错误"
'Adodc 的连接字符串
Adodc1.ConnectionString = pubCon
'指定Command 对象的形态
Adodc1.CommandType = adCmdText
'设置传回一个资料录集 Adodc1.RecordSource = ("select * from grade")
'将记录集合绑定 DataGrid 控件
Set datgQust.DataSource = Adodc1end sub
解决方案 »
- 讨论一下360杀毒将VB程序作为病毒处理的问题
- 看看这个错误是什么错误。
- 请问一个关于"拒绝的权限"的问题!
- toolbar的文字是在底部显示的,怎样把toolbar的文字设置为在右边显示
- 怎么根据条件把MSHFLEXGRID的行设成不同的底色?
- 如何根据一定条件在COMBO的备选项里面找一个值?
- 调用api出错,请帮忙
- 在VB 6中编译好的程序为什么COPY到其它机器上就可能运行不了??
- 周末了,向辛勤工作在软件第一线的兄弟们问好,顺便散分,写写参加微软课堂的感受
- 设计计算器的小问题?
- 如何用VB程序将屏幕上看到的内容切成图片保存
- 怎样在自己的程序里调用别人的exe里的某项现成功能并获取结果?
Option ExplicitGlobal pubCon As ADODB.Connection '定义数据库连接对象
Global rsTable As ADODB.Recordset '定义数据库查询
’包含adodc + datagrid 控件 空间的窗体 < 不要用ADODC控件了Private sub Form_load()
Dim strSQL as String
Dim StrConnect As String
'连接到ACCESS 数据库
StrConnect = "Provider=Microsoft.Jet.OLEDB.4.0; " _
& "Data Source=" & App.Path & "\student.mdb;" _
& "Persist Security Info=False;" _
& "Jet OLEDB:Database Password=123"
Set pubCon = New ADODB.Connection
pubCon.Open StrConnect strSQL = "select * from grade"
Set rsTable = New ADODB.Recordset
rsTable.CursorLocation = adUseClient '要用客户端游标
rsTable.Open strSQL, pubCon, _
adOpenKeyset, adLockOptimistic '将记录集合绑定 DataGrid 控件
Set datgQust.DataSource = rsTableend sub
Public pubCon As ADODB.Connection '定义数据库连接对象
Public rsTable As ADODB.Recordset '定义数据库查询
如下::'在 modMain 模块里边定义 全局变量
Option Explicitpublic pubCon As ADODB.Connection '定义数据库连接对象
public rsTable As ADODB.Recordset '定义数据库查询
set pubCon=new ADODB.Connection
set rsTable=new ADODB.Recordset’包含datagrid 控件 空间的窗体
private sub Form_load()
On Error GoTo ConnectErr
'连接到ACCESS 数据库
pubCon.ConnectionString = "Provider=Microsoft.Jet.oledb.4.0;" & _
"Persist Security Info =false;" & _
"Data Source =" & App.Path & "\student.mdb;" & _
"mode=readwrite"
pubCon.ConnectionTimeout = 30
pubCon.Open
rsTable.CursorLocation = adUseClient
rsTable.source="select * form grade"
rsTable.ActiveConnection
rsTable.CursorTyppe=adOpenKeyset
rsTable.LockType=AdLockPessimisticset datagrid1.datasource=rsTableExit Function
尤其感谢:vbman2003(家人) 但是我还有一个问题,我该如何做才能在datagrid里显示grade表里的 内容啊?!现在datagrid 里就只有表格 没显示数据啊???
谢,各位帮看看啊!
留个代码好吗?绑定与字段隐藏.
那位高手 来看看啊!!to : hspcyeling(白痴-菜鸟-。) 好了一定给,但我也没弄出来如何显示的啊!绑定的 就是上边的代码!
strSQL = "select * from grade"
Set rsTable = New ADODB.Recordset
rsTable.CursorLocation = adUseClient '要用客户端游标
rsTable.Open strSQL, pubCon, _
adOpenKeyset, adLockOptimistic '将记录集合绑定 DataGrid 控件
Set datgQust.DataSource = rsTable如上应该可以了啊?
你的DataGrid 控件名称是datgQust吧?
Set con = New adodb.Connection
str = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "/log.mdb" & ";"
con.Open str
Set rs = New adodb.Recordset
rs.CursorLocation = adUseClient
rs.LockType = adLockReadOnly ' rs.Open "gongying", con, 1, 3
rs.Open "SELECT * FROM testpn WHERE id,name", con, 1, 3 ‘这么用不行
rs.Open "SELECT id,name FROM testpn WHERE ", con, 1, 3 '这样也不行
Set DataGrid1.DataSource = rs
str = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "/log.mdb" & ";"
con.Open str
Set rs = New adodb.Recordset
rs.CursorLocation = adUseClient
rs.LockType = adLockReadOnly
rs.CursorTyppe=adOpenKeyset
rs.open "select id,name FROM testpn" '不加where条件语句
Set DataGrid1.DataSource = rs
不好意思,你的数据库表中有记录吗?在datagrid 控件中是不是可以看到字段的名字?
To: vbman2003(家人) 再谢! 是的 那个datgqust 就是 DATAGRID 的名字
这里 你可以 直接写成 datagrid1 我看的懂 !
例:
grade表中学号,数学,英语,历史,哲学,物理 这几个字段
我想用 DATAGRID 使他们能在我打开窗体的时候看到!(能懂我的意思吗?)
就是我打开窗体的时候,这几个字段的数据就直接显示出来!我用的
datagrid1.columns(0).caption=rstable.fields("学号").value
datagrid1.columns(1).caption=rstable.fields("数学").value
datagrid1.columns(2).caption=rstable.fields("英语").value
datagrid1.columns(3).caption=rstable.fields("历史").value
但是这样做行不通,到第二行就说是下标越界??
DATAGRID 的列需要拆分吗?为什么我拆分了还是不行 问题出在那里啊???
fan2290(极执)首先谢谢借了你这块地解决了我的问题,你的问题,只需要把我上面的代码复制过去就可以了。
rs.open "select id,name FROM testpn" 把ID,name 改成你的字段名就行了。
Dim intindex As Long
Set Col(0) = datgQust.Columns(0)
Set Col(1) = datgQust.Columns(1)
Set Col(2) = datgQust.Columns(2)
For intindex = 0 To 4
datgQust.Row = intindex
Col(0).Caption = "学号"
Col(0).CellText rsTable.Fields("stu_ID").Value '这样写还是显示不出数据啊
' col(0).text=rstable.fields("stu_ID").value '这样写居然不行,说没有对应列
Col(1).Caption = "数学"
Col(1).CellText rsTable.Fields("grade_math").Value
Next intindex
不客气 ! 共同进步是我最大的梦想!
(呵呵 这个号也是我的 !)还是不能显示数据啊!!
[email protected]
--------
也帮我解决一下吧!