Microsoft VBScript 编译错误:预期的语句结束

use*_*576 2 vbscript ms-access vba

我试图在下面的 VB 脚本的帮助下将一些记录插入到 MS Access 表中。但是当我尝试执行它时,它会抛出编译错误:预期的语句结束。有人可以帮我弄清楚我哪里出错了。

Private Sub Form_Click()
Dim dbs         As DAO.Database
Dim DbFullNAme  As String

DbFullName = "D:\G\Diamond\FINAL MS-Access\MS-Access project.accdb"
Set dbs = OpenDatabase(DbFullName)

dbs.Execute "INSERT INTO [2014_Status] ( Prompt, Project_Name, STATUS,Release_Name )SELECT     RoadMap.SPRF_CC, RoadMap.SPRF_Name, RoadMap.Project_Phase,RoadMap.Release_Name FROM RoadMap WHERE (((Exists (select 1 FROM [2014_Status] where RoadMap.SPRF_CC = [2014_Status].[Prompt]))=False));"
dbs.Close
End Sub
Run Code Online (Sandbox Code Playgroud)

Ekk*_*ner 7

VBScript中(而不是VBA或其他方言)并没有支持类型变暗。所以

Dim dbs         As DAO.Database
Dim DbFullNAme  As String
Run Code Online (Sandbox Code Playgroud)

需要

Dim dbs
Dim DbFullNAme
Run Code Online (Sandbox Code Playgroud)

VBscript 没有本机 OpenDatabase() 函数。您需要使用ADO连接到您的 Access '数据库'。首先创建一个连接

Set dbs = CreateObject("ADODB.Connection")
Run Code Online (Sandbox Code Playgroud)

然后确定连接字符串

dbs.Open cs
Run Code Online (Sandbox Code Playgroud)

您的其余代码应该可以工作。

更新wrt评论:

错误信息:

D:\G\Diamond\FINAL MS-Access\query1.vbs(2, 9) Microsoft VBScript compilation error: Expected end of statement
Run Code Online (Sandbox Code Playgroud)

证明 OT 试图编写 VBScript(添加误导性的 vba/access 标签是 (C) Pankaj Jaju)。