连接数据库字符串的问题
下面是一段VB 程序,其结果会因连接数据库的字符串不同而产生不同结果,请高手帮忙解释一下这两种写法的区别。谢谢!
Private Sub Command1_Click()
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim connstr As String
Dim sql As String
connstr = "....."
conn.Open connstr
sql = "....."
rs.Open sql, conn, adOpenKeyset, adLockPessimistic, 1
MsgBox rs.Fields(0)
rs.Close
conn.Close
End Sub
这里用到两个存储过程
CREATE PROCEDURE test
as
select * from tbl0630
GO
其中 tbl0630 的内容是 只有一个字段 aa 只有一条记录 "abc"
create PROCEDURE test1
as
CREATE TABLE [#tbl] (
[aa] [varchar] (50) NOT NULL ,
) ON [PRIMARY]
insert #tbl values('123')
select * from #tbl
drop table #tbl
GO
当connstr="Provider=SQLOLEDB.1;Data Source=xingyun;Passw......"时 sql="test" 正常
sql="test1" 报错
而当connstr = "driver={sql server};server=zhangtao;Password=..."是 两个都正常
请高手帮忙