VB.NET数据库开发示例宝典

开发 后端
访问数据库有四种方式,大家知道吗?本文就DAO,ADO,ODBC,OLEDB四种数据库访问方式编写一个VB.NET数据库程序,喜欢VB.NET数据库开发的朋友进来看看。

VB.NET经过长时间的发展,很多用户都很了解VB.NET数据库开发了,这里我发表一下个人理解,和大家讨论讨论。下面介绍一个实例,来消化以上的相关知识。这里我在一个程序界面下实现了DAO,ADO,ODBC,OLEDB四种数据库访问方式。 VB.NET数据库开发程序代码分析:

  1. '整个程序功能是选择不同的连接方式来进行显示工作,三种方式显示效果完全相同  
  2. '下面是主程序过程  
  3. Private Sub Command1_Click()  
  4. Dim selitem As Integer  
  5. '判断连接数据库的方式  
  6. If Option1.Value = True Then  
  7. selitem = 1 
  8. Else  
  9. If Option2.Value = True Then  
  10. selitem = 2 
  11. Else  
  12. selitem = 3 
  13. End If  
  14. End If  
  15. '选取不同的数据库连接方式  
  16. Select Case selitem  
  17. Case 1:  
  18. '使用DAO的数据库连接方式  
  19. Call ShowByDAO  
  20. Case 2:  
  21. '使用ADO的数据库连接方式  
  22. Call ShowByADO  
  23. Case 3:  
  24. '使用ODBC的数据库连接方式  
  25. Call ShowByODBC  
  26. Case 4:  
  27. '使用OLEDB的数据库连接方式  
  28. Call ShowByOLEDB  
  29. End Select  
  30. End Sub  
  31.  
  32. Private Sub ShowByDAO()  
  33. '使用DAO的数据库连接方式  
  34. Dim db As Database  
  35. Dim rs As Recordset  
  36. Dim sqlstr$ '存放查询语句  
  37. Set db = OpenDatabase(App.Path & "\db1.mdb")  
  38. sqlstr = "select * from 成绩表" 
  39. Set rs = db.OpenRecordset(sqlstr)  
  40. '显示结果  
  41. Call GridShow(rs)  
  42. End Sub  
  43.  
  44. Sub ShowByADO()  
  45. Dim conn As New ADODB.Connection  
  46. Dim rs As New ADODB.Recordset  
  47. '使用数据源来连接数据库  
  48. conn.Open "dsn=data"  
  49. rs.CursorType = adOpenKeyset 
  50. rs.LockType = adLockOptimistic 
  51. rs.Open "select * from 成绩表", conn  
  52. Call GridShowOfADO(rs)  
  53. End Sub  
  54.  
  55. Sub ShowByODBC()  
  56. Dim conn As New ADODB.Connection  
  57. Dim rs As New ADODB.Recordset  
  58. '使用数据源来连接数据库  
  59. conn.Open "Provider=MSDASQL.1;Persist Security Info=False;Data Source=data"  
  60. rs.Open "select * from 成绩表", conn  
  61. '显示结果  
  62. Call GridShowOfADO(rs)  
  63. End Sub  
  64.  
  65. Sub ShowByOLEDB()  
  66. Dim conn As New ADODB.Connection  
  67. Dim rs As New ADODB.Recordset  
  68. '使用数据源来连接数据库  
  69. conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path & "\db1.mdb" + ";Persist Security Info=False"  
  70. rs.Open "select * from 成绩表", conn'显示结果  
  71. Call GridShowOfADO(rs)  
  72. End Sub  
  73.  
  74. Sub GridShow(rs As Recordset)  
  75. '对dao方式进行显示工作  
  76. MSFlexGrid1.TextMatrix(0, 0) = "姓名"  
  77. MSFlexGrid1.TextMatrix(0, 1) = "性别"  
  78. MSFlexGrid1.TextMatrix(0, 2) = "语文"  
  79. MSFlexGrid1.TextMatrix(0, 3) = "数学"  
  80. MSFlexGrid1.TextMatrix(0, 4) = "英语"  
  81. rs.MoveLast  
  82. MSFlexGrid1.Rows = rs.RecordCount + 1  
  83. MSFlexGrid1.Cols = rs.Fields.Count  
  84. Dim i%  
  85. i = 1 
  86. rs.MoveFirst  
  87. While (Not rs.EOF)MSFlexGrid1.TextMatrix(i, 0) = rs.Fields(0)  
  88. MSFlexGrid1.TextMatrix(i, 1) = rs.Fields(1)  
  89. MSFlexGrid1.TextMatrix(i, 2) = rs.Fields(2)  
  90. MSFlexGrid1.TextMatrix(i, 3) = rs.Fields(3)  
  91. MSFlexGrid1.TextMatrix(i, 4) = rs.Fields(4)  
  92. rs.MoveNext  
  93. ii = i + 1  
  94. 'If (rs.EOF = True) Then  
  95. ' Exit For  
  96. Wend  
  97. End Sub  
  98.  
  99. Sub GridShowOfADO(rs As ADODB.Recordset)  
  100. '对ado方式进行显示工作  
  101. MSFlexGrid1.TextMatrix(0, 0) = "姓名"  
  102. MSFlexGrid1.TextMatrix(0, 1) = "性别"  
  103. MSFlexGrid1.TextMatrix(0, 2) = "语文"  
  104. MSFlexGrid1.TextMatrix(0, 3) = "数学"  
  105. MSFlexGrid1.TextMatrix(0, 4) = "英语"  
  106. '注意recordcount属性必须在当前记录指针在最后一条记录时才会返回正确的值  
  107. rs.MoveLast  
  108. MSFlexGrid1.Rows = rs.RecordCount + 1  
  109. MSFlexGrid1.Cols = rs.Fields.Count  
  110. Dim i%  
  111. i = 1 
  112. rs.MoveFirst  
  113. While (Not rs.EOF)  
  114. MSFlexGrid1.TextMatrix(i, 0) = rs.Fields(0)  
  115. MSFlexGrid1.TextMatrix(i, 1) = rs.Fields(1)  
  116. MSFlexGrid1.TextMatrix(i, 2) = rs.Fields(2)  
  117. MSFlexGrid1.TextMatrix(i, 3) = rs.Fields(3)  
  118. MSFlexGrid1.TextMatrix(i, 4) = rs.Fields(4)  
  119. rs.MoveNext  
  120. ii = i + 1  
  121. Wend  
  122. End Sub  
  123.  
  124. Private Sub Command2_Click()  
  125. End  
  126. End Sub  

上述代码已经在Windows 2000 professional和Visual Basic 6.0的环境下调试成功,喜欢VB.NET数据库开发的朋友不防试试。

【编辑推荐】

  1. 简单讲述VB.NET表间拖放
  2. 五分钟学会VB.NET实现拖放
  3. 讲述强大的VB.NET Web Forms,使用起来却如此简单
  4. 分析VB QuickSort应用程序
  5. 两步就可以掌握VB使用ArrayList类
责任编辑:田树 来源: 博客
相关推荐

2009-10-27 13:34:32

VB.NET WEB服

2009-11-02 15:08:58

VB.NET Obje

2009-11-02 13:14:18

VB.NET函数

2009-10-13 17:31:50

VB.NET Acce

2010-01-08 10:37:50

VB.NET数据库

2009-10-28 17:00:30

VB.NET数据库

2010-01-15 18:24:14

VB.NET打开Not

2009-10-09 15:20:26

VB.NET连接数据库

2009-11-03 09:48:47

VB.NET构造

2010-01-12 10:40:58

VB.NET数据库压缩

2010-01-15 19:24:42

2009-10-28 16:47:26

VB.NET访问数据库

2009-10-30 09:45:55

VB.NET Web

2010-01-13 15:01:13

VB.NET操作MyS

2010-01-14 11:00:48

VB.NET文件合并

2010-01-18 19:21:51

VB.NET存取数据库

2009-10-28 17:24:19

VB.NET介绍

2009-10-26 13:36:58

VB.NET Spli

2010-01-18 15:01:02

VB.NET异常迭代捕

2010-01-08 10:48:05

VB.NET多线程
点赞
收藏

51CTO技术栈公众号