Private Sub conSer_Click()Dim cn As ADODB.Connection
Dim rst As Recordset
Dim longitude As Double
Dim latitude As Double
Dim speed As Double
Dim slongitude As String
Dim slatitude As String
Dim sspeed As String
Set cn = New ADODB.Connection
cn.ConnectionString = "DSN=GIS;UID=sa;PWD="
cn.OpenSet rst = New ADODB.Recordset
Set rst = cn.Execute("SELECT * FROM GPSInfo")
slongitude = rst.GetString("longitude")
slatitude = rst.GetString("latitude")
sspeed = rst.GetString("speed")longitude = CDbl(Val(slongitude))
latitude = CDbl(Val(slatitude))
speed = CDbl(Val(speed))
End Sub
老是报错,说slongitude = rst.GetString("longitude")不匹配.不解.
要是把cn.ConnectionString = "DSN=GIS;UID=sa;PWD="这一句换成
cn.ConnectionString = "Driver={SQLServer};" & "Server=login.serName;" & "UID=login.userName;" & "PWD=login.userPwd;" & "Database=longin.dbName"的话,就报错:未发现数据源名称并且未指定默认驱动程序!各位老大给点建议吧!

解决方案 »

  1.   

    slongitude =val( rst.GetString("longitude"))
      

  2.   

    Private Sub conSer_Click()
        Dim Cn As New ADODB.Connection
        Dim Rst As New Recordset
        Dim longitude As Double
        Dim latitude As Double
        Dim speed As Double
        Cn.Open "DSN=GIS;UID=sa;PWD="
        '这里的字符连接串参考http://www.connectionstrings.com/获得.
        Rst.Open "SELECT * FROM GPSInfo", Cn, adOpenKeyset, adLockReadOnly, adCmdText
        If Rst.EOF And Rst.BOF Then
        Else
            longitude = Val(Rst("longitude"))
            latitude = Val(Rst("latitude"))
            speed = Val(Rst("speed"))
        End If
        Rst.Close
        Set Rst = Nothing
        Cn.Close
        Set Cn = Nothing
    End Sub^_^
      

  3.   

    rst.GetString("longitude")用rst!longitude不就行了吗?
      

  4.   

    不行的原因有:
    1、连接串不正确,你用adodc连接一下就能得到正确的连接串
    2、是否有GPSInfo这个表?是否有那三个字段?检查清楚。^_^
      

  5.   

    呵呵,.NET老大厚道哈!表是肯定有的,字段也没有错.我用2000的办法可以从数据库里面取到数据了.但是采用的是指定的cn.ConnectionString = "DSN=GIS;UID=sa;PWD="这个语句.在实际中我我的DSN,UID,和PWD都需要来自于login.frm.所以需要临时去取.不过.NET说的"'这里的字符连接串参考http://www.connectionstrings.com/获得."这句是指什么不是很理解.还有,该如何使用adodc连接一下能得到正确的连接串了?还望老大给点指导啊!
      

  6.   

    db.ConnectionString = "driver={sql server};server=" & sDataSource & ";uid=" & sUserName & ";pwd=" & sPwd & ";database=" & sDatabase
      

  7.   

    在工具栏里有一个adodc控件,你放进窗体里“右键”-->“属性”时连接一下就有了。^_^