2010-04-09 6 views
0

J'ai une table temporaireSQL Server: comment insérer dans une table temporaire? ?

CREATE TABLE #TEMP (TEMP_ID INT IDENTITY(1,1)) 

Je voudrais insérer des enregistrements à cette table, Comment puis-je-je faire comme suit:

INSERT INTO #TEMP DEFAULT VALUES 

Mais parfois, il ne fonctionne pas. Qu'est-ce qu'il pourrait être? Et je voudrais savoir la vie de la tentation dans SQL Server. Aidez-moi, s'il vous plaît!

Merci à tous!

Répondre

2

Vous ne savez pas exactement ce que vous entendez par «parfois cela ne fonctionne pas». Toutefois, une durée de vie de la table temporaire locale (un seul nombre) est la session ou la portée en cours (telle que la durée du processus ou de la fonction stockée). CREATE TABLE on MSDN comme beaucoup plus avec des exemples dans la section "Tables temporaires"

2

Fonctionne pour moi!

CREATE TABLE #TEMP (TEMP_ID INT IDENTITY(1,1)) 

--And I would like to insert records to that table, How can I?I do as follow: 

INSERT INTO #TEMP DEFAULT VALUES 
INSERT INTO #TEMP DEFAULT VALUES 
INSERT INTO #TEMP DEFAULT VALUES 
INSERT INTO #TEMP DEFAULT VALUES 

select * from #TEMP 

donne:

TEMP_ID 
1 
2 
3 
4 

Gardez à l'esprit, il doit être le même "lot" ou requête unique, etc.

PK :-)

+1

même connexion/portée, pas par lot. Vous pouvez avoir GO entre CREATE TABLE et INSERT – gbn

1

Cela semble bien. Également INSERT INTO #TEMP (TEMP_ID) VALUES (DEFAULT). Quand vous dites que parfois cela ne fonctionne pas, quelle erreur obtenez-vous? # tables ont seulement une durée de vie et la portée de votre session.

Questions connexes