Danke shmia,
hab jetzt eine Lösung direkt über T-
SQL gesucht, und auch schon fast zufriedenstellend gefunden... Das Stichwort heisst
spAddLinkedServer:
Folgendes
SQL Skript klappt schon mal fast:
SQL-Code:
EXEC sp_addlinkedserver
@server = '
Servername',
@srvproduct = '
AS400 Client Access',
@provider = '
MSDASQL',
@provstr = '
Driver={iSeries Access ODBC Driver};SYSTEM=AS400;CMT=0;DBQ=DBNAME_ON_AS400;NAM=0;DFT=5;DSP=1;TFT=0;TSP=0;DEC=0;XDYNAMIC=0;RECBLOCK=2;BLOCKSIZE=32;SCROLLABLE=0;TRANSLATE=0;LAZYCLOSE=1;LIBVIEW=0;REMARKS=0;CONNTYPE=0;SORTTYPE=0;PREFETCH=0;DFTPKGLIB=QGPL;LANGUAGEID=ENU;SORTWEIGHT=0;MAXFIELDLEN=32;COMPRESSION=0;ALLOWUNSCHAR=0;SEARCHPATTERN=1;MGDSN=0'
EXEC sp_serveroption
@server = '
DBNAME_ON_AS400',
@optname = '
data access',
@optvalue =
TRUE
EXEC sp_addlinkedsrvlogin
@rmtsrvname = '
DBNAME_ON_AS400',
@useself =
false,
@rmtuser = '
username',
@rmtpassword = '
password'
Führe ich allerdings ein Select aus. z.B. über:
select m.* from OpenQuery(DBNAME_ON_AS400, 'select * from Medecinn order by nommed') m
kriege ich zwar Records angezeigt, ABER NICHT ALLE
Ich geh mal von irgendwelchen Cache Problemen aus, hab aber keine Ahnung wo ich da angreifen könnte...
Jemand noch eine Idee?