我使用代码方式创建了一个MDB数据库时,内有“ID”、“NAME”。请问怎样在没有DATA控件绑定的条件下,实现在DBGrid控件中显示该MDB数据库的结构和内容?如果我想在程序中用SQL实现对记录的查询,并将查询内容显示到DBGrid控件中,如何实现?希望可以得到详细的回答,非常感谢!
另外,能否告诉我那里有VB+SQL数据库编程的资料?谢谢!

解决方案 »

  1.   

    寫代碼進行數據庫連接﹐偶看見過一個朋友在整個程序的目錄下寫了一個recordcard.ini的文件。
    [SystemSet]
    ClassParameter=6
    SubjectParameter=4
    TeacherParameter=4
    CardType=1
    Effect=5[machion]
    Time=500
    MachionSelect=2
    OMR40_1=fspgA.txt
    OMR40_2=fspgB.txtOMR11_1=fsda.sht
    OMR11_2=fszy.sht[PrintSet]
    PrintTitle=[DateBase]
    Source=***.***.**.**
    UserName=usename
    PassWord=password
    DateBase=pubs
    [Display]然后在模組中調用﹐他的模組N多啊﹐看得眼花撩亂。用SQL和VB連接一般有SQL和RECORDSET二種連接方式﹐舉個例子好了。Private Sub Command1_Click()
    make_connection
      g_sql = "select * from aaa"   'aaa為表名
       If Not make_i(g_sql) Then
          Exit Sub
       End If
       rs1.MoveFirst
       Do While Not rs1.EOF
           With MSFlexGrid1
           .Row = .Rows - 1
           .Col = 0
           .Text = rs1("ID")
           .Col = 1
           .Text = rs1("NAME")
            .Col = 2
           .Text = IIf(IsNull(rs1("TEL")), "", rs1("TEL"))  '這是確保電話為空的時候能顯示出來
           .Col = 0
           .Sort = 1
       End With
        Form1.MSFlexGrid1.Rows = Form1.MSFlexGrid1.Rows + 1
          rs1.MoveNext
       Loop
    end sub所需要調用的模組
    Public Function make_connection() As Boolean
        db_err = ""
        Dim connect_str As String
        connect_str = "Provider=SQLOLEDB.1;Persist Security  Info=False;User ID=username;password=password;"
        connect_str = connect_str & "Initial Catalog=pubs;Data Source=***.***.***.***;Connect Timeout=15;Application Name=List"  '**為登入SQL所需要的用戶名稱﹐password為密碼﹐時間15秒連接﹐數據庫為pubs﹐上面所綃aaa表就是建立在其中的
        On Local Error GoTo connection_error
        conn.Open connect_str
        make_connection = True
        Exit Function
    connection_error:
        db_err = "Connect fail !! " & Err.Description
        make_connection = False
        Err.Clear
    End FunctionPublic Function make_i(sql As String) As Boolean
        db_err = ""
        On Local Error GoTo inq_error
          rs1.Open sql, conn, adOpenKeyset, adLockOptimistic, adCmdText
          make_i = True
        Exit Function
    inq_error:
        db_err = " Query fail !! " & Err.Description
        make_i = False
        Err.Clear
    End Function偶這寫是把讀和寫一塊做了﹐所以把err的message都'掉了﹐你自己看著辦吧﹐不建議使用DATA控件。這只是簡單的測試﹐所以不包括大型數據進行的DATALOCK處理哦﹐偶已經先提醒你咯^^
      

  2.   

    很多vb书上都会提到一些,若你对vb已很熟悉,则买专门的数据库操作的书籍
      

  3.   

    用DATAGRID建议买本书看看~