Newsgroup: it.comp.lang.visual-basic
Titolo: ? QUERY SQL cosa sono??

Mi vergogno a chiederlo, ma siccome sono ancora una schiappa.....
C'è qualcuno che mispiega cosa sono le query SQL e cosa hanno a che fare con
i controlli DATA  e DBGRID???
Scusate se vi ho disturbato per così poco, ma.....
Forse un giorno sarò io ad aiutare Voi !!!!!!
Ciao a presto
C E S A R E

Structured Query Language SQL e' un linguaggio di interrogazione per
databases
puoi estrarre dati da banche dati con una SQL legarla ad un controllo DATA e
visualizzare la risposta con una DBGRID. All'inizio puo' essere ostico ma i
vantaggi rispetto ad altre soluzioni sono enormi. Prova a pensare cosa fai
adesso se vuoi estrarre tutti i comuni di Milano dall'archivio dei comuni
d'Italia. Se puoi usare access puoi provare SQL. Non so se datamanager di
vb5 e' di facile utilizzo con SQL.

Cesare ha scritto:

cia Cesare,
Prima di tutto inquadriamo l'argomento: Gestione Database.
Le DBGrid sono particolari griglie predisposte ad essere connesse con un
DB
visualizzandone i dati sotto forma di tabelle.
Le Query servono per 'filtrare' questi dati, per esempio per
visualizzare non
tutti i clienti, ma solo quelli che hanno sede a Roma puoi utilizzare la
Query
"SELECT * FROM Clienti WHERE [Sede] = Roma"
(La roba in maiusc è SQL ....)
Associando alla DBGrid la query ottieni la tabella voluta.
Un Data Control ha i metodi e le proprietà per gestire il DB .
Ovviamente questa è solo un'introduzione molto discorsiva, il discorso è
ben più
ampio ed affascinante.
Magari parti dalla guida o da un libro con un po' di esempi ; ))
 
vol...@tin.it


SQL = Structured Query Language (linguaggio strutturato di interrogazione).
E' un linguaggio standard per l'interrogazione di basi di dati (databases)
relazionali, nato intorno ala meta' degli anni '70.
Ossia serve per richiedere ad un database un gruppo di dati, corrispondenti
ai criteri di ricerca specificati nell'istruzione SQL.
SQL e' un linguaggio procedurale (come il Basic o il Pascal, per
intenderci), derivato dalla teoria dell'ALGEBRA RELAZIONALE, intimamente
legata alla teoria insiemistica.
Infatti i gruppi di dati di un database sono INSIEMI, da essi si possono
estrarre SOTTOINSIEMI, se ne puo' fare l'UNIONE, l'INTERSEZIONE e la
DIFFERENZA, piu' altre operazioni piu' complesse.
Quando associ ad un controllo Data un RecordSource come "Tabella1", stai
aprendo una intera tabella, e qui non entra in campo SQL;
mentre quando fai Data.RecordSource = "SELECT Campo1, Campo2 FROM Tabella1
WHERE Campo3 = ""MILANO""", allora stai usando un'istruzione SQL per
ricevere NON l'intera tabella1, ma un sottoinsieme dei suoi dati (nel caso
specifico, tutti i records che hanno "MILANO" in campo3).
Per informazioni piu' dettagliate, puoi fare riferimento all'help in linea
di VB (cerca SQL)
Per la sintassi del linguaggio SQL esistono libri appositi (dovrebbe
essercene almeno uno edito dalla McGraw-Hill).
Se, invece ti interessa approfondire la teoria che ci sta dietro, ti
consiglio il seguente libro (e' un testo universitario di Ingegneria
Informatica):
Atzeni, Ceri, Paraboschi, Torlone  "Basi di dati", editore: McGraw-Hill.
--
Roal Zanazzi
z...@iol.it

i controlli DATA  e DBGRID???
SQL è un set di istruzioni (SELECT, FROM, WHERE, ....) che serve per
compiere delle azioni su un database ( estrazione informazioni secondo
alcuni condizioni, creazione tabelle, eliminazione dati ecc..).
I controlli DATA  e DBGRID servono per collegarsi alla tabella ed avere
accesso ai dati in essa contenuti (DATA) e mostrare i valore dei campi
(DBGRID).
I controlli quindi possono riferirsi all'intera tabella oppure ad una parte
di essa, in questo caso, attraverso le SQL indichiamo quale parte.
Per complicare un pò le cose le SQL servono anche per collegare più tabelle
relazionate per formare un'unica tabella (per questo devi vedere le tabelle
relazionali e l'istruzione JOIN ).
Per ora penso di averti dato già un pò di informazioni che per ovvie ragioni
non posso approfondire, magari cercati un libro o qualche sito che tratta
l'argomento.
Spero di essere stato chiaro
Ciao
MAX