Query di Insert Update in Base

Discussioni sulle caratteristiche di database
Rispondi
Cao
Messaggi: 4
Iscritto il: giovedì 21 ottobre 2010, 22:07

Query di Insert Update in Base

Messaggio da Cao »

Ciao, sono io che non riesco a trovare come generarle :oops: o proprio non esistono le query di insert e update in Base?
Grazie
OpenOffice 3.2 su Windows XP
Avatar utente
marcofoc
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 16:48
Località: Arzignano (VI)
Contatta:

Re: Query di Insert Update in Base

Messaggio da marcofoc »

Ciao!
Se vuoi fare qualche transazione in SQL, c'è il tool apposito.. in quanto a salvare le istruzioni per riusarle.. mi spiace.. mi sa che è un limite.
Non esistono buoni maestri senza buoni allievi...
Cao
Messaggi: 4
Iscritto il: giovedì 21 ottobre 2010, 22:07

Re: Query di Insert Update in Base

Messaggio da Cao »

Ciao.
Dalla tua risposta temo di intuire che non sia possibile utilizzare Base per aggiornare una tabella con dati prelevati da un altra?
Mi spiego meglio: ho una tabella con una cinquantina di campi, di questi campi una quarantina contengono informazioni che ricavo da una tabella che mi viene fornita periodicamente, i restanti contengono informazioni che carico e modifico io.
Per capirci nella tabella che mi viene fornita vi sono informazioni anagrafiche: Cognome, Nome, Indirizzo, Codice fiscale ... ecc..
Nei campi che carico io vi sono informazioni aggiuntive rispetto a quanto mi viene fornito, ad esempio il numero di Cellulare ed altro.
Vorrei evitare di dover reimmettere tutti i miei dati ogni volta che mi viene fornita una nuova tabella e costruire una query che prelevi le informazioni dalle due tabelle e le depositi in una terza o aggiorni la mia.
La tabella che mi viene fornita può contenere sia nuovi dati che dati modificati, nel senso che può sia essere presente un nuovo Cognome. Nome ... ma anche che può aver subito una variazione un Cognome Nome esistente o ancora che può essere scomparso un Cognome Nome (la livella..). Considero chiave il Codice Fiscale.
Mi aspettavo di poter fare un Union di query di INSERT e di UPDATE prelevando dati da ambedue le tabelle.. ma non trovo dove poterlo fare.
Grazie ancora..
OpenOffice 3.2 su Windows XP
Avatar utente
xergio
Messaggi: 315
Iscritto il: lunedì 15 marzo 2010, 21:54
Località: Arzignano (Vicenza)
Contatta:

Re: Query di Insert Update in Base

Messaggio da xergio »

E' necessario usare una macro, in cui potrai aprire il foglio di calcolo (tabella?) che ti viene fornito, passarlo riga per riga facendo i controlli necessari ed aggiornare od inserire i dati nel database in base alla chiave primaria (c.f.).
A questo link http://user.services.openoffice.org/it/ ... t=223#p841 trovi un esempio di inserimento riga per riga di un file di testo formattato all'interno di un foglio di calcolo, utile per capire il meccanismo.

Al posto dell'inserimento nel foglio di calcolo, devi creare dei RowSet Service (oConnection.createStatement):
- 1 prendi il primo record da copiare e ne estrai i campi
- 2 (primo RowSet) fai una query di ricerca sui dati già esistenti con la condizione WHERE del campo chiave del punto 1 (il c.f.)
- 3 imposti una condizione IF per verificare se il record esiste, in caso positivo
- 3.1 (secondo RowSet) esegui un UPDATE sul record, mentre in caso negativo
- 3.2 (stesso RowSet di prima) esegui un INSERT
- 4 riparti dal punto 1.
Per cortesia, inserisci [Risolto] nel Titolo iniziale se il tuo problema è stato risolto.
---
Sergio Corato
LibO 6.x su Ubuntu 18.04 / OOo 4.x su Windows XP/10 (VirtualBox)
https://efatto.it
utonto_brother
Messaggi: 53
Iscritto il: lunedì 13 settembre 2010, 3:59

Re: Query di Insert Update in Base

Messaggio da utonto_brother »

Ciao mi sembra che le info a questo link possano tornare utili.
http://www.oooforum.org/forum/viewtopic.phtml?t=29306
Saluti
"Ci sedemmo dalla parte del torto visto che tutti gli altri posti erano occupati" (Bertolt Brecht)
ApacheOpenOffice 3.4.1 su Windows XP Pro SP3
Rispondi