에 대한
덕분에 몇 가지주의 사항은 다음과 같습니다
Sub WithADO()
''Reference: Microsoft ADO Ext x.x For DLL and Security
Dim catTables As ADOX.Catalog
Dim cn As ADODB.Connection
Dim ndx As Object
Set catTables = CreateObject("ADOX.Catalog")
Set cn = CreateObject("ADODB.Connection")
dbfile = "C:\Docs\LTD.mdb"
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & dbfile & ";"
Set catTables.ActiveConnection = cn
For Each ndx In catTables.Tables("Table1").Indexes
strlist = ndx.Name & " " & ndx.Properties("Primary Key") & vbCrLf & strlist
Next
MsgBox strlist
Set catTables = Nothing
End Sub
Sub WithDAO()
''Reference: Microsoft DAO x.x Object Library
Dim db As DAO.Database
Dim tdf As TableDef
Dim ndx As Object
Set db = CurrentDb
Set tdf = db.TableDefs("Table1")
For Each ndx In tdf.Indexes
If ndx.Primary = True Then
MsgBox ndx.Name
End If
Next
End Sub
또한 스키마를 사용할 수 있습니다.
DAO 오류 객체가 위반되는 정확한 제약 조건/색인을 반환하지 않기 때문에 (적어도 지금까지 내가 아는 한)이 정보를 얻을 수는 없다고 생각합니다. 나는 insert가 오류를 던져 버렸기 때문에 당신이 겪고있는 것을 정확히 알고있다. 그리고 난 문제를 일으키는 열을 수동으로 찾아야 만했다. –
내 의혹을 확인해 주신 David 께 감사드립니다. 적어도 나는 다른 사람들이 내가하는 것처럼 똑같은 문제를 안고 있음을 안다. –