您不需要使用Access GUI表设计工具卡住。您实际上可以编写一个SQL'脚本'(一个以分号分隔的SQL DDL命令列表),将其保存在文件系统的某个位置,然后使用一点VBA在Access中执行脚本并构建所有表,视图(查询),索引和其他约束。
原始想法在这里:https://stackoverflow.com/a/1839290/20371,但我已经修改了VBA有点合我的胃口:
Public Sub ExecSqlScript(fileName As String)
intF = FreeFile()
Open fileName For Input As #intF
strSql = Input(LOF(intF), #intF)
Close intF
strSql = Replace(Replace(strSql, Chr(10), " "), Chr(13), " ")
vSql = Split(strSql, "; ")
On Error GoTo MessageError
For Each s In vSql
s = Trim(s)
If Left(s, 2) <> "--" Then
Debug.Print "Execute: " & s
Debug.Print
CurrentProject.Connection.Execute s
End If
Next
Exit Sub
MessageError:
Debug.Print "ERROR: " & Err.Description
Debug.Print
Resume Next
End Sub
与上面可以摊开每个语句在尽可能多的行,只要你喜欢
左右;并且只要在任何陈述的第一行前加上--
即可“注释掉”。
使用这个,你可以建立一个脚本来迭代地设计你的数据库:只需要多次删除/删除和重新创建你的表,视图,索引等。访问上述VBA可以接受的ANSI-92 SQL,就像其他大多数SQL一样,具有自己的语法变体。我建立了一个示例数据库创建脚本,以便获取它的挂起:https://gist.github.com/yawaramin/6802876
如何创建DSN?对我来说,它没有列出安装的ODBC驱动程序。 –