Ricerca e salvataggio di una tabella

sabato 25 ottobre 2008 - 22.20

rikicecchi Profilo | Newbie

Ciao a tutti! Non sono molto esperto di sql,allora volevo fare due domande:
come si fa a cercare un dato conoscendone un altro in una tabella?
Esempio:
In una tabella una colonna riporta il nome e cognome di una persona e un altra riporta il loro codice fiscale. Se io conosco il nome e cognome di una persona,scrivendola in un textbox,vorrei che mi apparisse in un altro textbox il suo codice fiscale. Qual'è il codice da utilizzare per tutto ciò?
Nel frattempo io aggiungo nuovi nome (e i loro codice fiscale) attraverso un data view grid. Ora vorrei salvare la tabella nel database. Come si fa eseguire un salvataggio di una tabella su modifiche apportate su data view grid?
Il linguaggio di programmazione è C#.
P.S.
Ironicamente fino ad un anno fa riuscivo a fare tutte queste funzioni su vb .net,ma mi sono dimenticato tutto!E' proprio vero che la scuola provoca gravi danni al cervello e alla relativa memoria...

alx_81 Profilo | Guru

>Ciao a tutti!
Ciao!

>Non sono molto esperto di sql,allora volevo fare due domande:
>come si fa a cercare un dato conoscendone un altro in una tabella?
>Esempio:
>In una tabella una colonna riporta il nome e cognome di una persona
>e un altra riporta il loro codice fiscale. Se io conosco il nome
>e cognome di una persona,scrivendola in un textbox,vorrei che
>mi apparisse in un altro textbox il suo codice fiscale. Qual'è
>il codice da utilizzare per tutto ciò?
Dunque, per prima cosa non è buona norma mettere un valore come "Nome e Cognome" all'interno di una sola cella. E' preferibile usare una colonna Nome ed una Cognome e salvare le informazioni atomicamente. Una volta superato questo problema, dovrai andare a cercare sulla tua tabella per Nome e Cognome andandoti a legare, in base ad una chiave di relazione, all'altra tabella, contenente il codice fiscale.
Ti faccio un esempio con tabelle inventate (SQL Server):
USE tempdb; GO -- creo le tabelle CREATE TABLE dbo.Utenti ( IDUtente int IDENTITY(1,1) NOT NULL , Nome varchar(30) NOT NULL , Cognome varchar(30) NOT NULL , CONSTRAINT PK_dboUtenti PRIMARY KEY CLUSTERED ( IDUtente ) ) GO CREATE TABLE dbo.UtentiDettaglio ( IDUtente int NOT NULL , CodiceFiscale char(16) NOT NULL , CONSTRAINT PK_dboUtentiDettaglio PRIMARY KEY CLUSTERED ( IDUtente ) ) GO -- imposto la relazione ALTER TABLE dbo.UtentiDettaglio ADD CONSTRAINT FK_dboUtenti_dboUtentiDettaglio FOREIGN KEY (IDUtente) REFERENCES dbo.Utenti (IDUtente) GO -- inserisco i valori INSERT INTO dbo.Utenti (Nome, Cognome) VALUES ('Alessandro', 'Alpi') INSERT INTO dbo.Utenti (Nome, Cognome) VALUES ('Michael', 'Denny') INSERT INTO dbo.Utenti (Nome, Cognome) VALUES ('Daniele', 'Zanella') INSERT INTO dbo.Utenti (Nome, Cognome) VALUES ('Nicholas', 'Denny') INSERT INTO dbo.Utenti (Nome, Cognome) VALUES ('Andrea', 'Cavallini') INSERT INTO dbo.Utenti (Nome, Cognome) VALUES ('Lorenzo', 'Buscicchio') INSERT INTO dbo.Utenti (Nome, Cognome) VALUES ('Marco', 'Rossi') GO INSERT INTO dbo.UtentiDettaglio (IDUtente, CodiceFiscale) VALUES (1, 'LPALSN81D22G337T') INSERT INTO dbo.UtentiDettaglio (IDUtente, CodiceFiscale) VALUES (2, 'MCLDNN81D22G337T') INSERT INTO dbo.UtentiDettaglio (IDUtente, CodiceFiscale) VALUES (3, 'DNLZNL81D22G337T') INSERT INTO dbo.UtentiDettaglio (IDUtente, CodiceFiscale) VALUES (4, 'NCLDNN81D22G337T') INSERT INTO dbo.UtentiDettaglio (IDUtente, CodiceFiscale) VALUES (5, 'ADRCVL81D22G337T') INSERT INTO dbo.UtentiDettaglio (IDUtente, CodiceFiscale) VALUES (6, 'LRZBSH81D22G337T') INSERT INTO dbo.UtentiDettaglio (IDUtente, CodiceFiscale) VALUES (7, 'MRCRSS81D22G337T') GO -- ricero per nome e cognome, ricavando il codice fiscale SELECT Ute.Nome , Ute.Cognome , Dett.CodiceFiscale FROM dbo.Utenti Ute JOIN dbo.UtentiDettaglio Dett ON Ute.IDUtente = Dett.IDUtente WHERE Ute.Nome = 'Alessandro' AND Ute.Cognome = 'Alpi' /* Nome Cognome CodiceFiscale ------------------------------ ------------------------------ ---------------- Alessandro Alpi LPALSN81D22G337T */ -- pulizia DROP TABLE dbo.UtentiDettaglio DROP TABLE dbo.Utenti GO

>Nel frattempo io aggiungo nuovi nome (e i loro codice fiscale)
>attraverso un data view grid. Ora vorrei salvare la tabella nel
>database. Come si fa eseguire un salvataggio di una tabella su
>modifiche apportate su data view grid?
>Il linguaggio di programmazione è C#.
Devi gestire gli eventi di inserimento del gridview. Oppure basta impostare un DataSource fatto seguendo le linee guida per avere già un inserimento funzionante.
Leggi un pochino qui:

Classe DataGridView
http://msdn.microsoft.com/it-it/library/system.windows.forms.datagridview(VS.80).aspx
http://msdn.microsoft.com/it-it/library/k39d6s23(VS.80).aspx
http://msdn.microsoft.com/it-it/library/ak81b67y(VS.80).aspx

Ciao!


--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

rikicecchi Profilo | Newbie

graziee!!

alx_81 Profilo | Guru

>graziee!!
eheheh.. di nulla!

ricordati, se il post ti ha aiutato, di accettare la risposta, così chiudiamo il thread.
Ciao!
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
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-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5