можно ли сделать выборку (SELECT) таким образом:
из базы данных (DB1) из таблицы (T1) выбрать те эл., которых нет в базе данных (DB2) из таблицы (T2); сравнение произвести по 2-м полям?
SELECT Table1.*
FROM Table1 LEFT JOIN Table2 IN "DB2.mdb" ON Table1.f1=Table2.f1 AND Table1.f2=Table2.f2
WHERE IsNull(Table2.f1) AND IsNull(Table2.f2)
"SELECT RigheOrdini.* FROM [RigheOrdini] LEFT JOIN [tbl_Order] IN """ & Path_Database_Una & Name_Database_Una & """ ON RigheOrdini.NumeroOrdine = tbl_Order.Numberr AND RigheOrdini.NumeroRiga = tbl_Order.Riga ;"
"SELECT RigheOrdini.* FROM RigheOrdini LEFT JOIN tbl_Order IN """ & Path_Database_Una & Name_Database_Una & """ ON RigheOrdini.NumeroOrdine = tbl_Order.Numberr AND RigheOrdini.NumeroRiga = tbl_Order.Riga WHERE IsNull(tbl_Order.Numberr) AND IsNull(tbl_Order.Riga) ;"
...
FROM Table1
LEFT JOIN Table2 IN "DB2.mdb" ON (Table1.f1=Table2.f1)
AND (Table1.f2=Table2.f2)
...
Да, бэкслэша может и не быть, в общем случае...GSerg писал(а):""" & Path_Database_Una & Name_Database_Una & """ - угадай, что это в итоге?
Sirik писал(а):а как прилинковать?
Public Function LinkTable(sPath1 As String, sPWD1 As String, sLinkTblAs As String, sPath2 As String, sPWD2 As String, sLinkTbl As String) As Boolean
'Прилинковка таблицы из другой базы Access
'sPath1, sPWD1 - путь и пароль к базе, в которую нужно прилинковать табл.
'sLinkTblAs - под каким именем прилинковывать таблицу
'sPath2, sPWD2 - путь и пароль к базе, в которой находится подсоединяемая табл.
'sLinkTbl - имя таблицы в этой базе
Dim daoDB As DAO.Database
Dim daoEng As DAO.DBEngine
Dim daoWrk As DAO.Workspace
Dim Tbl As DAO.TableDef
On Error Resume Next
If Dir(sPath1) = "" Then Exit Function
If Dir(sPath2) = "" Then Exit Function
Set daoWrk = DAO.CreateWorkspace("my", "admin", "", DAO.dbUseJet)
Set daoDB = daoWrk.OpenDatabase(sPath1, , , ";UID=sa;PWD=" & sPWD1 & ";")
If Err.Number <> 0 Then Exit Function
Set Tbl = daoDB.CreateTableDef(sLinkTblAs)
Tbl.SourceTableName = sLinkTbl
Tbl.Connect = ";DATABASE=" & sPath2 & ";UID=sa;PWD=" & sPWD2 & ";"
daoDB.TableDefs.Append Tbl
If Err.Number <> 0 Then Exit Function
daoDB.TableDefs.Refresh
LinkTable = Err.Number = 0
daoDB.Close
End Function
Result = LinkTable("c:\db1.mdb", "", "Tbl1", "c:\db2.mdb", "", "Tbl2")
If Result=True Then MsgBox "Всё ОК."
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1