PDA

Vollständige Version anzeigen : temporäre SQL-Tabelle in Recordset


thunder1902
20.06.2012, 09:48
Hallo!

Wie kann ich per Recordset auf eine temporäre SQL-Tabelle zugreifen?

Hier mal der Code:

DoCmd.RunSQL "IF OBJECT_ID('tempdb..#searchTabelle') IS NOT NULL DROP TABLE #searchTabelle"
DoCmd.RunSQL "CREATE TABLE #searchTabelle (test_id int, bezeichnung char(50), position int, quelle char(50), eingabe char(50)) "
DoCmd.RunSQL "INSERT INTO #searchTabelle VALUES (1,'testbez',1,'quelle','eingabe')"


Set DB = DaoDbFromAdoCon(CurrentProject.Connection)
Dim rs As DAO.Recordset
Set rs = DB.OpenRecordset("[#searchTabelle]", dbOpenDynaset, dbSeeChanges)


In der letzten Zeile findet er die Tabelle nicht...

Danke schonmal für eure Tips!

Atrus2711
20.06.2012, 09:58
Hi,
wenn das eine temporäre Tabelle auf dem Sq-Server ist, dann garnicht. Lokale Temporäre Tabellen (#tbl) sind nur innerhalb der erzeugenden Session erreichbar.

thunder1902
20.06.2012, 11:57
@Atrus2711

Vielen Dank für Deine Antwort! Hilft mir schonmal weiter!

KGunder
20.06.2012, 15:06
Ich würde nicht die drei einzelnen DoCmd.SqlRun ausführen, sondern diese Zeilen mit einem abschliessenden SELECT als StoredProcedure im Server ablegen.
Und dann den Recordset mit CurrentProject.Connection.Execute ".." aufrufen