仔细看了一下,发现你是aceess中的vba,嗯,是该用value。你给name字段加上中括号试试,即 "select from login where [name]='" & usernamevalue & "'"
另外注意单引号和双引号之间没有空格,否则可能出现逻辑错误,比如 " test " 和"test"是不同的
Set cn = CreateObject("ADODBConnection")
Set rs = CreateObject("ADODBRecordset")
Dim strCn As String, strSQL As String
strCn = "PROVIDER=SQLOLEDB;DATA SOURCE=127001;UID=sa;password=123457;DATABASE=abc"
cnOpen (strCn)
If cnState <> 1 Then '如果数据库连接未打开
rsClose
cnClose
MsgBox ("数据库连接错误")
else
MsgBox ("数据库连接成功")
End If
'运行SQL语句
'strSQL = "具体的SQL语句",下举例,提取abc表中的aaa,写入sheet1的A列
strSQL = "select aaa,bbb,ccc from abc where bbb>100"
rsOpen strSQL, cn, 1, 1
If Not (rsBOF And rsEOF) Then '有记录存在
For i = 1 To rsRecordCount
Sheets(1)Range("A" & i) = rsFields(0)Value
'Fields(0)对应aaa,Fields(1)对应bbb,类推
rsMoveNext
Next
Else
MsgBox ("数据提取失败")
End If
rsClose
cnClose
给你个链接算起来2005的,测试通过
只说链接部分
Set cnn = CreateObject("adodbconnection")
strcn = "Provider=SQLOLEDB1;User ID=sa;Password=sa1234;Initial Catalog=paracheck;DataSource=ZN" 'ZN为数据库名称
cnnOpen strcn '链接数据库,这里已经成功连接数据库了
st = "SELECT INTO [" & s & "] FROM OPENROWSET('MicrosoftACEOLEDB120','Excel 120;HDR=yes;DATABASE=" & [Sheet7]Range("b" & i) & "','select from [sheet1$]')" '导入excel到sql2005数据库并新建数据库表名为([Sheet7]Range("a" & i))去掉xls才可以导入,sheet1为表的取名名称,不是表的编码名称
cnnExecute st
cnnClose
Set cnn = Nothing
以上就是关于vba 连接access数据库,划线的那句出问题,提示至少一个参数没有被指定值全部的内容,包括:vba 连接access数据库,划线的那句出问题,提示至少一个参数没有被指定值、怎么用vba连接mssql、VBA连接数据库,数据库配置不正确,导致连接失败,要求给出提示,并且退出程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)