创建Oracle链接表时出现访问错误



我尝试创建一个指向Oracle的链接表。为了简单起见,我从手动创建的工作良好的链接表中"窃取"了连接字符串。代码在Append中中断,如下所示。有什么线索吗?谢谢!

Sub CreaOra()
    Dim db As DAO.Database
    Dim td As DAO.TableDef
    Dim strConn As String
    Set db = CurrentDb
    'connection string copied from a working linked table !'
    strConn = "ODBC;DRIVER={Oracle in OraClient10g_home1};SERVER=ORAJJJ0;UID=xxx;PWD=yyy;DBQ=ORAWOD0;"
    Set td = db.CreateTableDef(Name:="test", SourceTableName:="ORAJJJC01.TBL_MYTBL", Connect:=strConn)
    'next row -> error 3264 No field defined--cannot append TableDef or Index
    db.TableDefs.Append td
    Set td = Nothing
    Set db = Nothing
End Sub

attributes参数不能为空。您需要通过0或dbAttachSavePWD

  Set td = db.CreateTableDef(Name:="test", Attributes:=0,  SourceTableName:="ORAJJJC01.TBL_MYTBL", Connect:=strConn)

如果你不想显式地将其设置为0,你也可以这样做

   Set td = db.CreateTableDef("test")
   td.SourceTableName:="ORAJJJC01.TBL_MYTBL"
   td.Connect:=strConn

注意:如果您查看监视窗口中的td,可以观察到Connect和SourceTableName被设置为空,如果您不为属性传递值,但当您这样做时仍然保留。

最新更新