Query di aggiornamento in Access

alexbadboys

Nuovo Utente
14 Feb 2005
10
0
0
Ciao, devo realizzare 2 query in Access e data la mia scarsa esperienza al riguardo sono nella più completa disperazione perché non so da dove cominciare.... :eek:
Allora, ho un database con 3 tabelle (riporto sotto i nomi delle tabelle in grassetto ed i rispettivi campi):

T_Aziende
IDAzienda
RagioneSociale
NumeroSedi

T_Sedi
IDSede
IDAzienda
NumeroSede
Indirizzo
Provincia

T_Persone
IDSede
NumeroPersona
Nome
Cognome
Età
Sesso
Indirizzo
Telefono
Stato
Studio
Professione

Questo database è molto intuitivo e semplice; c'è l'integrità referenziale e relazione tra i campi IDAzienda nelle tabelle T_Aziende e T_Sedi e tra i campi IDSede nelle tabelle T_Sedi e T_Persone.
Devo realizzare queste 2 query (e non so farlo!!!) :dipser:

1)Scrivere una query che aggiorni sulla tabella delle aziende il campo NumeroSedi col numero delle sedi dell’azienda stessa

2)Scrivere una query che elimini dalla tabella sedi quelle che hanno persone di sesso maschile

Qualcuno può dirmi come devo fare???? So che devo fare una query d'aggiornamento ed una d'eliminazione, ma non so proprio da dove iniziare.... :(
Grazie per l'aiuto, ciao :byebye: :byebye: :byebye:
 

lukeonweb

Utente Attivo
5 Mar 2003
5.177
10
38
43
Napoli
www.lucaruggiero.it
Tratto NumeroSedi come tipo Testo; se è numerico non usar gli apici

1) UPDATE T_Aziende SET NumeroSedi = '10' WHERE IDAzienda = 1

Se devi dinamizzarla devi memorizzare in una variabile il valore di una query che conta il numero delle sedi dalla tabella T_Sedi.

Una domanda, il programma è scritto stesso con interfaccia Access?

2) DELETE * FROM T_Persone WHERE Sesso = 'M'

Questa mi pare abbastanza semplice...

:byebye:
 

alexbadboys

Nuovo Utente
14 Feb 2005
10
0
0
Grazie per l'aiuto ma non è esattamente ciò che mi serve...
Non devo fare queste query da codice (cioè da un programma interfacciato ad access); devo costruirle direttamente in Access.
Allora, tu mi hai scritto:

1) UPDATE T_Aziende SET NumeroSedi = '10' WHERE IDAzienda = 1
Se devi dinamizzarla devi memorizzare in una variabile il valore di una query che conta il numero delle sedi dalla tabella T_Sedi.

Io dovrei fare una query con le tabelle T_Aziende e T_Sedi che mi vada a prendere il numero sede più elevato, cioè il numero totale di sedi per quell'azienda (ovviamente per ogni azienda) e lo vada a mettere nel campo numerico NumeroSedi nella T_Aziende

2) DELETE * FROM T_Persone WHERE Sesso = 'M'

Questa è semplice, ma io devo fare un'altra cosa: devo fare una query che mi veda quali sedi hanno persone di sesso maschile e mi vada a eliminare il record relativo a quella sede nella T_Sedi (e non in T_Persone!)

Mi puoi dare un'aiuto? Sono alla disperazione :( :dipser:
Ciao e grazie ancora :byebye:
 

alexbadboys

Nuovo Utente
14 Feb 2005
10
0
0
Ancora problemi sulla query...

Beh, ti ringrazio ma forse non ho spiegato bene il problema...

1) UPDATE T_Aziende SET NumeroSedi = '10' WHERE IDAzienda = 1
Come uso la funzione max? So che c'è le funzioni di aggregazione o raggruppamento ma non ci sto capendo nulla, mi potresti fare un esempio di come fare questa query per favore?

Io dovrei fare una query con le tabelle T_Aziende e T_Sedi che mi vada a prendere il numero sede più elevato, cioè il numero totale di sedi per quell'azienda (ovviamente per ogni azienda) e lo vada a mettere nel campo numerico NumeroSedi nella T_Aziende

2) DELETE * FROM T_Sedi WHERE Sesso = 'M'
Se ho capito nella tua ultima risposta mi suggerisci di far questo... ma se riguardi la struttura delle mie tabelle vedi che T_Sedi non ha il campo Sesso!!!!
Devo fare quindi una query di eliminazione che comprenda sia T_Sedi che T_Persone, e che mi vada a eliminare i record di T_Sedi che hanno correlato in T_Persone delle persone di sesso maschile. In pratica devo eliminare da T_Sedi quelle sedi che hanno clienti maschi.

Grazie ancora per l'aiuto che mi stai dando... e per la pazienza!!!
Ciao :byebye:
 

lukeonweb

Utente Attivo
5 Mar 2003
5.177
10
38
43
Napoli
www.lucaruggiero.it
Le funzioni di aggregazione funzionano cosi

https://www.mrw.it/database/sql/guida_sql/lezione196.htm

Fai qualche prova, se hai problemi ne discutiamo!

Non avevo fatto caso che manca il campo sesso nella tabella T_Sedi :)

Ti descrivo la procedura, prova a scrivere le query:

1. seleziona dalla tabella delle persone tutti gli id delle sedi dove sesso = M
2. usa i risultati e lancia N delete nella tabella delle sedi dove combaciano gli id delle sedi reperiti nella query descritta al punto 1

Buon divertimento ;)
 

alexbadboys

Nuovo Utente
14 Feb 2005
10
0
0
ancora problemi......

Ho dato un'occhiata ma.... sono nel buio totale :dipser:
Allora...
La prima query non so proprio come farla, non ho idea da che parte rifarmi.... come la imposto questa query??????
Quanto alla seconda, non posso seguire il tuo consiglio perché devo fare un'unica query che mi elimini le sedi che hanno persone di sesso maschile, non posso fare N query di delete!!!
Anche la query precedente dev'essere una sola.
Come faccio??????? :dipser: :confused: :( :incazz:
Grazie per l'aiuto e ancor di più per la pazienza...
Ciao
 

alexbadboys

Nuovo Utente
14 Feb 2005
10
0
0
Dunque...

Allora, è un database Access banalissimo; contiene solo le 3 tabelle che ho riportato.
Non ci sono maschere né nient'altro a parte le 3 tabelle e le query che devono essere costruite su di esse.
Non c'è nemmeno codice, o interfaccia con visual basic o altro.
Devo semplicemente imparare a fare queste query e devo farle nella maniera che ho specificato.
Le 2 query che mi stanno facendo dannare vanno quindi fatte direttamente da Access, cioè nella finestra del database, e col criterio che ho specificato.
La prima è basata su T_Aziende e T_Sedi e deve permettere di aggiornare in T_Aziende per ciascuna azienda il numero di sedi prendendo il valore massimo dal campo numerosede in T_Sedi.
La seconda è basata su T_Sedi e T_Persone e deve eliminare da T_Sedi tutte le sedi che hanno persone maschi (cioè che hanno record correlati in T_Persone col campo sesso=M).
Puoi aiutarmi? Come vedi sono a zero e avrei bisogno dell'esempio concreto (meglio se la query di cui ho bisogno già fatta :) ) più che delle indicazioni generiche perché non ci capisco proprio nulla.... :( :mad: :incazz: :ister:
Ti ringrazio infinitamente......... :)
Ciao :byebye:
 

wendigo

Nuovo Utente
9 Apr 2007
1
0
0
Anche io problema simile

Premetto che di access nn ci capisco un tubo, così come in Sql ed idem in Vbasic...

Detto ciò sono riuscito a crearmi un database che mi semplifica il lavoro, ma purtroppo è diventato troppo grande.

ecco la mia domanda:

che comando devo usare (nell'evento click di un bottone) per cancellare tutti i dati di una tabella?.

ecco qui cosa ho fatto:
1)creato il bottone dentro una maschera
2)selezionato routine evento nelle proprietà del bottone
3)inserito il seguente comando DELETE * FROM TRENIRIENTRI.......
.....non funziona purtroppo!
4) ho provato ad inserire TreniRientri.Delete*.. ovviamente non funziona !

Vi prego aiutatemi voi non devo mettere nè filtri ne selezionare alcuni record, devo semplicemente CANCELLARE TUTTI I RECORD DELLA TABELLA TreniRientri DAL BOTTONE DI UNA MASCHERA

mi va benissimo qualsiasi escamotage compreso aprire una query di cancellazione o altro, basta che posso farlo da una maschera separata
 
Discussioni simili
Autore Titolo Forum Risposte Data
G access 2003: query di eliminazione o aggiornamento? MS Access 2
A Query di aggiornamento ed eliminazione in Access Database 1
strambotto Query di aggiornamento MS Access 0
PikNuke Query senza aggiornamento pagina Ajax 1
R query di aggiornamento tabella PHP 2
G Problemi con modifica dati in query di aggiornamento MS Access 6
EffeElle Problema per una query di aggiornamento record php PHP 35
A query di aggiornamento, help please PHP 0
S aiuto in query di aggiornamento Database 0
S Query aggiornamento Database 16
A Query di aggiornamento Database 3
V Query per una somma PHP 2
F stampare a video i risultati della query PHP 1
L problema con query select PHP 2
D Query sum Database 1
A form PHP prenotazione tramite query PHP 2
R Problema query con ricerca id numerico PHP 2
G Casella combinata in una query MS Access 4
R Aiuto con le query MS Access 2
Y query di DELETE PHP 4
V Query Oracle Oracle 0
L query somma PHP 8
W Query SQL Classic ASP 2
M Problemi con query a più tabelle PHP 3
Alex_70 Conteggio nella query PHP 0
elpirata Query per leggere dati da una tabella mysql e mostrarli a video in base a parametri passati tramite GET PHP 5
A nome file che contiene punto passato come parametro a query PHP 31
F query e form con select multipla PHP 17
M Problema su query JOIN in tre tabelle PHP 0
M Ordinare una query join PHP 2
Alex_70 Query ORDER BY PHP 18
G Problema ------- con Query PHP 1
G Problema con Query PHP 1
Alex_70 foreach explode query PHP 3
O query con date in formato stringa PHP 3
Tommy03 Unione query di 4 tabelle MySQL 1
Alex_70 Query group actor e film PHP 26
TpD Incolonnare risultati query (mysql_result deprecato...) PHP 3
Tommy03 Query tra 3 tabelle MySQL 2
P Query di ricerca profonda MySQL 0
T Query per ricerca ritardo evento MS Access 7
max1974 2 query not work MySQL 3
M Ottimizzazione Query PHP 8
I Aiuto query MySQL 8
J [PHP] Visualizzare risultato query stessa pagina PHP 3
S [PHP] non prende la query PHP 0
D [PHP] Query che aggiorna tabella PHP 4
A [PHP] Problema query insert [RISOLTO] PHP 14
M [PHP] Ottimizzazione query PHP 13
S [PHP] la query fallisce PHP 2

Discussioni simili