我正在做一个VB与SQL SERVER的数据库
但是一开始的用VB做的登陆窗口就运行不了, 
原因是与SQL好象没连接上,  我的数据库 与表都已经在SQL中做了出来, 
可是要在哪里连接呢? 
谢谢

解决方案 »

  1.   

    dim conn as connection
    dim red as recordset
    connectionstring=...
    实在不行,就用ODBC
      

  2.   

    Dim conn As ADODB.Connection
    Dim red As ADODB.Recordset
      

  3.   

    Private Sub Form_Load()
        Dim strConn As String
        Dim pubConn As New ADODB.Connection
        Dim rsTable As New ADODB.Recordset
        Dim strSQL As String    strConn = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=develop; password=12345;Data Source=ServerName"
        pubConn.Open strConn    rsTable.CursorLocation = adUseClient
        strSQL = "select  * from TableName"
        rsTable.Open strSQL, pubConn, adOpenDynamic, adLockOptimistic
        Set DataGrid1.DataSource = rsTableEnd Sub
      

  4.   

    '写在通用里
        Dim strConn As String
        Dim pubConn As New Connection
        Dim rsTable As New Recordset
        Dim strSQL As StringPrivate Sub Form_Load()
        strConn = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=databasename;Data Source=."'databasename为数据库名称
        pubConn.Open strConn    rsTable.CursorLocation = adUseClient
        strSQL = "select  * from TableName"'TableName为你将要连接的表名
        rsTable.Open strSQL, pubConn, adOpenDynamic, adLockOptimistic
        if not rstTable.eof then
        msgbox rstTable(0)
        end if
    End Sub
    '首先必须引用Microsof ActiveX Data Objects 2.1  Library
      

  5.   

    我先只要求用户登陆框能用就行  输入用户密码就可以进, 
    可是不行 ,    我已经在ODBC里用了。 不行的。
      

  6.   

    下面是全部代码:  
    Public PasswordKey As String
    Public NameKey As String
    Public Try_times As Integer
    Private Sub Cmd_Cancel_Click()
    End
    End SubPrivate Sub Cmd_OK_Click()
     Dim j As Single'数据有效性检查
      If txtUser = "" Then
        MsgBox "请输入用户名"
        txtUser.SetFocus
        Exit Sub
      End If
      If txtPwd = "" Then
        MsgBox "请输入密码"
        txtPwd.SetFocus
        Exit Sub
      End If
     
      NameKey = MakeStr(txtUser)
      PasswordKey = MakeStr(txtPwd)
       
    '判断用户是否存在
      If MyUser.In_DB(NameKey) = False Then
        MsgBox "用户名不存在"
        Try_times = Try_times + 1
        If Try_times >= 3 Then
          MsgBox "您已经三次尝试进入本系统,均不成功,系统将关闭"
          DBapi_Disconnect
          End
        Else
          Exit Sub
        End If
      End If'判断密码是否正确
      MyUser.GetInfo (NameKey)
      If MyUser.Pwd <> PasswordKey Then
        MsgBox "密码错误"
        Try_times = Try_times + 1
        If Try_times >= 3 Then
          MsgBox "您已经三次尝试进入本系统,均不成功,系统将关闭"
          DBapi_Disconnect
          End
        Else
          Exit Sub
        End If
      End If
      
    '登录成功,将当前用户的信息保存在CurUser中
      CurUser.UserName = MyUser.UserName
      CurUser.User_type = MyUser.User_type
      CurUser.Qiu_Id = MyUser.Qiu_Id
    '关闭自己
      Unload Me
    End Sub
    Private Sub Client_Close() '都是Client_Close()  在哪里来的?
      connected = False
    End SubPrivate Sub Client_Connect()
      connected = True
    End SubPrivate Sub Client_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
      connected = False
      MsgBox "服务器没有相应"
      DBapi_Disconnect
    '  myhost.setfree
      End
    End SubPrivate Sub Form_Load()
      '初始化连接变量
      IsConnect = False
      Connect_Num = 0
      
      '读取服务器数据
      ServerName = GetKey(App.Path + "\Setup.ini", "Server Name")
      If ServerName = "" Then
        MsgBox "Setup.ini格式不正确,请重新设置"
        DBapi_Disconnect
        End
      End If
      
      connected = False
      Client.RemoteHost = ServerName
      Client.RemotePort = 4477
      Client.Connect
    End Sub
      

  7.   

    运行后说MakeStr  未定义   晕。 怎么回事呢。