⑴ 怎样在VB中实现sql语言的查询
在VB6中可用ADO及DATAGRID控件,用如下语句可更灵活:
Private Sub Form_Load()
Text1 = ""
With Adodc1
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\db1.mdb;Persist Security Info=False"
Adodc1.RecordSource = "select name from b1 order by name"
Adodc1.Refresh
DataGrid1.Refresh
End With
End Sub
Private Sub Text1_Change()
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\db1.mdb;Persist Security Info=False"
Adodc1.RecordSource = "select name from b1 where name >='" & Text1 & "' order by name"
Adodc1.Refresh'对查询更新
DataGrid1.Refresh
End Sub
数据库用VB6编程语言,对新手而言,如何用好ADODC控件和DATAGRID控件相当重要。上面的原代码基于ADODC控件和DATAGRID控件的灵活应用。具体做法:
新建工程时选数据工程,此时VB6集成调试环境左边工具箱内已加载了有关数据库编程必须的控件。
然后在FORM1窗体中添加ADODC控件和DATAGRID控件,将DATAGRID1的属性DATASOURCE选ADODC1,打开ADODC1控件属性页使用连接字符串,选生成,在提供者选项中ACCESS数据库选MICROSOFT jet 4.0 OLE DB Provider,然后按要求连接数据库等。在ADODC1控件属性页使用连接字符串空白文本窗口中就有一长串字符串,注意该字符串可复制到程序代码用于编程。ADODC1控件属性页的数据源内有命令文本(SQL)编写窗口可编写SQL查询语言。该窗口的SQL语句可复制到程序代码用于编程。
SQL查询语言主要结构为:
Select 查询字段 from 表名 Where 查询条件语句 [排序语句或分组语句]
查询字段必须分别用(西文)逗号分开或就用一个*号代替,上述查询中排序语句建议最好应用。
SQL查询语言如有错程序运行时告诉你出错,作相应改动即可。本人一般先按上述连接,SQL用"SELECT * FROM TabelName"作调试,无问题,用一个按钮孔件将前述需复制的连接字符串和SQL查询语言先复制于按钮控件的CLICK事件中备着,以便放着以后使用。然后删去ADODC1孔件,再添加ADODC1控件再添其他内容。
以上不知是否说清楚?SQL查询语言多写多用就会熟练,以上供提问者参考。
⑵ sql查询字段 (VB datagrid)
呵呵~~~不好意思,昨天出发了,今天才回来~~刚看到你给我的留言。
上面几位的回答不知道能不能满足你的要求。
你这个问题,我的理解是:你用两个表分别存储
去年的销售额和11月份的销售额?你想用一个查询语句同时查询这两个表里的数据?如果我理解正确,我上面这位的回答就很正确:用or就可以了啊
答案就是这么简单,一个or
就搞定!
⑶ vb中用复选框实现多字段sql查询
sql = "select * from mytest where 1=0"
dim name1, name2 , name3
For i = 0 To check.Count - 1
If check(i).Value = 1 Then
Select Case i
Case 0
name1 = "文具盒"
Case 1
name2 = "钢笔"
Case 2
name3 = "钢笔"
End Select
End If
Next
sql = sql & " or name in ('" & name1 & "','" & name2 & "','" & name3 &"')"
⑷ vb 中如何用SQL语言查询是否存在某个字段
我自己也有一个项目需要动态添加字段,如果本字段已经存在则不添加。所以告诉你一个实用技巧来判断“用SQL语言查询是否存在某个字段”,方法如下:
【首先告诉你结论:首先采用SQL添加这个字段“病人姓名”、如果产生错误号="-2147217887"即表示字段存在】
PrivateSubCommand1_Click()'判断一个字段“病人姓名”是否存在
OnErrorGoToCunzai'在这里设立一个捕获字段是否存在的错误陷阱
DimcnnAsNewADODB.Connection
cnn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+App.Path+"db1.mdb;PersistSecurityInfo=False"'设置数据库路径
cnn.Open
cnn.Execute"alterTABLE[病人表]addcolumn[病人姓名]text(20)"
cnn.Close
ExitSub
Cunzai:
IfErr.Number="-2147217887"ThenMsgBox"您所要添加的“病人姓名”字段已经存在于病人表中,不能重复添加!",vbOKOnly,"警告"
EndSub
*******************************************************************************
一定能行的,你自己好好研究研究哦。如图所示:
⑸ 新手 vb查询sql数据库表中的某个字段并且在combobox下拉选
读取“chanpinxinxi”字段的值,再用一个循环写入到combobox的下拉列表中。
⑹ VB 查询数据库某一字段的所有内容
dim i as long '计数
dim conn as new adodb.connention
dim rs as new adodb.recordset
private sub commad1_click()
rs.Open "select * from table", conn, adOpenKeyset, adLockOptimistic
if rs.RecordCount<> 0 then '查询数据库是否为空
for i=0 to rs.RecordCount-1
if zy=rs.filed("姓名") then '判断所查数据是否等于zy
i=i+1 '等于则计数加一
endif
rs.movenext
next i
enif
end sub