Insert dentro un altra tabelle

lunedì 30 aprile 2012 - 09.55
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Windows Server 2008 R2  |  Windows 7  |  Visual Studio 2010

totti240282 Profilo | Guru

Ciao a tutti,
ho due tabelle A e B.
Dentro la tabella A ho delle colonne tra cui ID_ordine e id_prodotto.

Dentro la tabelle B ho dei campi tra cui ID_ordine e id_prodotto.

Ora ogni volta che apro il programma dovrei riportare nella tabella B soltanto quei id_ordine e id_prodotto che non sono già stati importati nella tabella B.

Per adesso utilizzo un ciclo ma volevo sapere se posso fare altrimenti.
C'è solo un capitano !!!!!!

lbenaglia Profilo | Guru

>Ora ogni volta che apro il programma dovrei riportare nella tabella
>B soltanto quei id_ordine e id_prodotto che non sono già stati
>importati nella tabella B.

Ciao,

Che DBMS utilizzi?

Ciao!
--
Lorenzo Benaglia
http://blogs.dotnethell.it/lorenzo/

totti240282 Profilo | Guru

Questo dovrei farlo in Mysql.

Pero magari anche una soluzione per sqlserver 2008 se possibile.
C'è solo un capitano !!!!!!

lbenaglia Profilo | Guru

>Questo dovrei farlo in Mysql.
>
>Pero magari anche una soluzione per sqlserver 2008 se possibile.

Osserva il seguente esempio:

USE tempdb; CREATE TABLE dbo.A( ID_ordine int NOT NULL, ID_prodotto int NOT NULL ); CREATE TABLE dbo.B( ID_ordine int NOT NULL, ID_prodotto int NOT NULL ); INSERT dbo.A VALUES (1, 10), (2, 20), (3, 30); INSERT dbo.B VALUES (1, 10); /* Soluzione per SQL Server 2008 */ INSERT dbo.B SELECT * FROM dbo.A EXCEPT SELECT * FROM dbo.B; /* Soluzione per molti RDBMS */ INSERT dbo.B SELECT A.* FROM dbo.A LEFT JOIN dbo.B ON A.ID_ordine = B.ID_ordine AND A.ID_prodotto = B.ID_prodotto WHERE B.ID_ordine IS NULL; SELECT * FROM dbo.B; /* Output: ID_ordine ID_prodotto ----------- ----------- 1 10 2 20 3 30 (3 row(s) affected) */ DROP TABLE dbo.A, dbo.B;

Ciao!
--
Lorenzo Benaglia
http://blogs.dotnethell.it/lorenzo/

totti240282 Profilo | Guru

Grazie provo subito !!!!!
C'è solo un capitano !!!!!!
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5