VB —— 程序运行时,ComboBox下拉列表自动从SQL Server2008的某个表获取字段名称并显示出来

2025-03-15 14:22:52
推荐回答(1个)
回答(1):

VB —— 程序运行时,ComboBox下拉列表自动从SQL Server2008的某个表获取字段名称并显示出来

如上所述,请大神教教,说明一下
1、如何连接数据库
2、获取到表中的字段

VB菜鸟万分感谢!


下面就是连接,并将相关字段添加到combox里的例子:

Option Explicit
Private Function Selectsql(SQL As String) As ADODB.Recordset       '返回ADODB.Recordset对象
   Dim ConnStr As String
    Dim Conn As ADODB.Connection
    Dim rs As ADODB.Recordset
    Set rs = New ADODB.Recordset
    Set Conn = New ADODB.Connection
    
    'On Error GoTo MyErr:
    ConnStr = "Provider=SQLOLEDB.1;Persist Security Info=True;User ID=登录数据库用户名(默认为sa);Password=登录数据库密码;Initial Catalog=数据库名;Data Source=服务器名(默认为:MERRYCHINA)"      '这是连接SQL数据库的语句   
Conn.Open ConnStr
    rs.CursorLocation = adUseClient
    rs.Open Trim$(SQL), Conn, adOpenDynamic, adLockOptimistic
    Set Selectsql = rs
    'Exit Function
'MyErr:
    'Set rs = Nothing
    'Set Conn = Nothing '释放相关的系统资源
    'MsgBox Err.Description, vbInformation, "系统提示" '显示出错信息
End Function
Private Sub Form_Load()
    Dim SQL As String
    Dim rs As ADODB.Recordset
    Dim X As Long
    On Error GoTo Err_box
    SQL = " select * from 用户表"
    Set rs = Selectsql(SQL)
    If rs.RecordCount > 0 Then
        rs.MoveFirst
        For X = 1 To rs.RecordCount
            Combo1.AddItem rs.Fields("用户名").Value
            rs.MoveNext
        Next X
        Combo1.ListIndex = 0
    End If
    rs.Close
    Exit Sub
Err_box:
   End Sub