Insert into

giovedì 09 marzo 2006 - 10.27

alex1962 Profilo | Newbie

scusate di nuovo...
ma l'insert into supporta '*' ?
nel senso che devo riscrivere tutti i campi oppure essendo proprio tutti posso usare un comando per generalizzare come ad esempio * ?
alex

Ciciu Profilo | Senior Member

Ciao.
Dipende dal database su cui la fai...

La sintassi "tipica" è la seguente :

insert into tabella (lista campi) values (lista valori)

Questa Ti permette di selezionare i campi che vuoi inserire (ovviamente sarà Tua cura caricare anche - e soprattutto - i campi obbligatori).

Per inserirli tutti, nell'ordine in cui compaiono nella tabella, puoi omettere la lista campi

insert into tabella values (lista valori)

Ciao - Fabio

PS - Questa è la sintassi di Oracle che, se non ricordo male, è la stessa di SQLServer (scusami, ma in questo momento non ho tempodi fare la prova... La lascio a Te !)


Fabio G

alex1962 Profilo | Newbie

non mi risolve il problema... perche io al posto dei valori ho una select..... e se do la sintassi che mi hai suggerito non funziona...
ma grazie lo stesso
alex

Ciciu Profilo | Senior Member

Se prendi i Tuoi valori da una select, la cosa cambia "leggermente" :

insert into tabella (lista campi) select lista campi from tabella2

oppure

insert into tabella select lista campi from tabella 2

Nel primo caso, i campi che selezioni da tabella2 devono corrispondere alla lista campiche specifichi per la insert. Nel secondo caso devono essere tutti i campi.

Tieni conto che nelle select puoi usare delle "costanti".

Esempi :

desc odlink
Name Null? Type
----------------------------------------- -------- -----------------
OD_SEQ NOT NULL NUMBER(8)
OD_ESE1 CHAR(4)
OD_PROT1 CHAR(4)
OD_NUM1 NUMBER(8)
OD_RIGA1 NUMBER(8)
OD_FLAG1 CHAR(1)
OD_ESE2 CHAR(4)
OD_PROT2 CHAR(4)
OD_NUM2 NUMBER(8)
OD_RIGA2 NUMBER(8)
OD_FLAG2 CHAR(1)

Puoi inserire solo la chiave :

insert into odlink (od_seq) (select 12 from dual);

Oppure una lsta di campi :

insert into odlink (select 12, 'a', 'b', 2, 1, 's', 'c', 'd', 3, 4, 'N' from dual);

Ciao - Fabio


Fabio G
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5