新手学做VB数据操作(SQL篇)
- 格式:doc
- 大小:124.50 KB
- 文档页数:6
首选我们要准备的事情: 1.读取数据库方式ADO(直接引用Miscrosoft ActiveX Data Objects 2.6 Library,
然后在定义就可以了) 2.使用显示数据控件ListView控件
3.还有SQL数据库 4.还有Winsock控件 1,首先直接引用Miscrosoft ActiveX Data Objects 2.5 Library(2.6到
2.8也可以)
2,建立一个Module模块,在模块中写入我们要常用到的变量: Public cn As New adodb.Connection Public Rs As New adodb.Recordset Public user_name As String Public myip As String '这个用于传递用户的本地IP地址
Function con()'建立一个数据库调用的函数 Dim strcn As String strcn = "driver={sql server};server=20090114-1149\ADMIN;uid=;pwd=;database=ac"'这个是SQL链接
的,server为SQL的服务器名字(我用的是本地的),database为数据库名字这里账号和密码就不用了,黑色字的是根据自己的来改的,有解释咯别说你不会啊!这是事先填好的啊,你要用就自己改 cn.Open strcn Rs.CursorLocation = adUseClient End Function
3,前期的工作都差不多了,接下来窗体(SQL数据库创建这个就不用教了吧!) 第一个窗体:(一个Winsock,两个text文本框,一个Command按钮)如图: 第二个窗体:(一个ListView,五个text文本框,五个Command按钮,一个Label标签字,一个Combo下拉菜单)如图:
第三个窗体:(两个text文本框,一个Command按钮)如图: 4,第一个窗体的代码如下:
Private Sub Command1_Click() Dim aa As String Call con Rs.Open"select * from [user] where namelike '" & Trim(Text1.Text) & "'", cn, 3, 3 If Rs.RecordCount = 0 Then MsgBox "没有这个账号!" Else aa= Trim(Rs.Fields("pwd")) user_name = Rs.Fields("name") If Trim(Text2.Text) = aaThen MsgBox "登陆成功!" Rs.Close cn.Close Form2.Show Form1.Hide Exit Sub Else MsgBox "密码错误!" End If End If Rs.Close cn.Close End Sub
Private Sub Form_Load() myip = Winsock1.LocalIP End Sub 5,第二个窗体的代码如下:
Dim t As ListItem Private Sub Combo1_Click() ListView1.ListItems.Clear Call con Rs.Open"select * from [msg] where wplike '" & Trim(Combo1.Text) & "'", cn, 3, 3 Do While Not Rs.EOF Set t = ListView1.ListItems.Add(, , Rs.Fields(0)) For i = 1 To 4 t.SubItems(i) = Rs.Fields(i) Next i Rs.MoveNext Loop Rs.Close cn.Close Label1.Caption= ListView1.ListItems.Count End Sub
Private Sub Command1_Click() Form3.Show End Sub
Private Sub Command2_Click() For i = 1 To Label1.Caption If ListView1.ListItems(i).Selected= True Then Call con Rs.Open"select * from [msg] where id like " & Trim(ListView1.ListItems(i).Text), cn, 3, 3 Rs.Delete Rs.Close cn.Close End If Next i MsgBox "删除成功!" Call in_new End Sub
Private Sub Command3_Click() Call in_new End Sub Private Sub Command4_Click() Call con Rs.Open "select * from [msg] where idlike " & Trim(Text1(0).Text), cn, 3, 3 For i= 1 To 4 Rs.Fields(i) = Text1(i).Text Next i Rs.Update Rs.Close cn.Close MsgBox "修改成功!" Call in_new End Sub
Private Sub Command5_Click() Call con Rs.Open "msg", cn, 3, 3 Rs.AddNew For i = 1 To 4 Rs.Fields(i) = Text1(i).Text Next i Rs.Update Rs.Close cn.Close MsgBox "添加成功!" Call in_new End Sub
Private Sub Form_Load() Text1(0).Enabled= False ListView1.View= lvwReport '就是等于3 ListView1.GridLines= True ListView1.FullRowSelect= True ListView1.ColumnHeaders.Add, , "名字", 800 ListView1.ColumnHeaders.Add , , "名字", 800 ListView1.ColumnHeaders.Add , , "名字", 800 ListView1.ColumnHeaders.Add , , "名字", 800 ListView1.ColumnHeaders.Add , , "名字", 800 Call in_new End Sub Function in_new() ListView1.ListItems.Clear Call con Rs.Open"msg", cn, 3, 3 Do While Not Rs.EOF Set t = ListView1.ListItems.Add(, , Rs.Fields(0)) Fori= 1 To 4 t.SubItems(i) = Rs.Fields(i) Next i Rs.MoveNext Loop Rs.Close cn.Close Label1.Caption= ListView1.ListItems.Count End Function
Private Sub ListView1_Click() For i = 1 To ListView1.ListItems.Count If ListView1.ListItems(i).Selected = True Then Text1(0).Text= ListView1.ListItems(i) For j = 1 To 4 Text1(j).Text = ListView1.ListItems(i).SubItems(j) Next j End If Next i End Sub
6,第三个窗体的代码如下: Private Sub Command1_Click() Call con Rs.Open"select * from [user] where name='" & user_name& " '", cn, 3, 3 Rs.Fields("pwd") = Trim(Text2.Text) Rs.Update Rs.Close cn.Close MsgBox "修改成功!" End Sub
Private Sub Form_Load() Text1.Enabled= False Text1.Text = user_name End Sub