Tabelle 1:1 kopieren

18/04/2009 - 13:58 von Kurt Langeder | Report spam
Hallo Newsgroup!

Ich habe in meinem Accessprogramm eine gelinkte Tabelle (tabAlt) vom
SQL-Server2005. Diese Tabelle kopiere ich 1:1 mit folgender
PassThrough-Abfrage "SELECT * INTO tabNeu FROM tabAlt". Die neue
Tabelle (tabNeu) linke ich dann automatisch nach Access ein.

Soweit so gut. Leider werden beim "SELECT-INTO" die Schlüssel und
Indexe nicht mitkopiert, sodass die gelinkte Tabelle in Folge nicht
bearbeitet werden kann und erst im SQL-Server-Management-Studio
manuell nachbearbeitet werden muss.

Wie kann ich also eine Quelltabelle so kopiert werden, dass dabei auch
die Schlüssel und Indexe, etc. kopiert werden?


Danke und Schöne Grüße
Kurt
 

Lesen sie die antworten

#1 Peter Doering
18/04/2009 - 18:53 | Warnen spam
Hallo,

Kurt Langeder wrote:

Ich habe in meinem Accessprogramm eine gelinkte Tabelle (tabAlt) vom
SQL-Server2005. Diese Tabelle kopiere ich 1:1 mit folgender
PassThrough-Abfrage "SELECT * INTO tabNeu FROM tabAlt". Die neue
Tabelle (tabNeu) linke ich dann automatisch nach Access ein.

Soweit so gut. Leider werden beim "SELECT-INTO" die Schlüssel und
Indexe nicht mitkopiert, sodass die gelinkte Tabelle in Folge nicht
bearbeitet werden kann und erst im SQL-Server-Management-Studio
manuell nachbearbeitet werden muss.

Wie kann ich also eine Quelltabelle so kopiert werden, dass dabei auch
die Schlüssel und Indexe, etc. kopiert werden?



Ich wuerde die Tabelle erst per Script erzeugen und dann fuellen. Geht per
PT in einem Rutsch. Der String dazu sieht etwa so aus:

CREATE TABLE TabNeu ( <Feldliste> );
CREATE INDEX <IndexName1> ON TabNeu ... ;
CREATE INDEX <IndexName2> ON TabNeu ... ;
INSERT INTO TabNeu SELECT * FROM TabAlt;

Gruss - Peter

Mitglied im http://www.dbdev.org
3. SEK Sa/So 16./17.5.2009, Nürnberg http://www.donkarl.com/SEK/

Ähnliche fragen