Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Connessione a serversql
mercoledì 07 maggio 2008 - 11.23
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
mame37
Profilo
| Junior Member
50
messaggi | Data Invio:
mer 7 mag 2008 - 11:23
Buon giorno a tutti devo creare un collegamento a un server sql con in c# avendo come dati l'ip del server il nome del database l'user e la psw nonchè la tabella a cui dovrò aggiungere i dati. non so come poter creare una connessione con il server. ho provato con sqlConnection ma non so dove inserire i dati di autenticazione. potete darmi un aiuto grazie! a tutti
Lucifel
Profilo
| Junior Member
104
messaggi | Data Invio:
mer 7 mag 2008 - 11:57
In questa pagina ci sono tutte le stringhe di connessione possibili. Sicuramente c'è anche quella che serve a te.
www.connectionstrings.com
Per quanto riguarda la tabella... prima apri la connessione (di norma io scrivo la stringa di connessione sul file di configurazione) con la stringa e con SqlConnection e poi tramite SqlCommand faccio l'execute della query.
Diego
-----------------------------------
Avanti sempre e comunque!
-----------------------------------
mame37
Profilo
| Junior Member
50
messaggi | Data Invio:
mer 7 mag 2008 - 14:08
grazie mille x l'aiuto ci sono riuscito sono entrato nel server del database adesso devo andare a lavorare all'interno di una tabella di questo server e sostituire i valori presenti con quelli che devo inserire io. le colonne della table del db di cui devo sostituire la table sono "nome casella" e "pwd"..sapete darmi qualche consiglio su come fare? grazie x eventuali risp
io ho prensato
sql = insert into nometabella (some casella,pwd) values (+campo1,+campo2);
secondo voi va bene?
Lucifel
Profilo
| Junior Member
104
messaggi | Data Invio:
mer 7 mag 2008 - 14:22
Non ho capito cosa vuoi fare.
Vuoi SOSTITUIRE il valore presente con il tuo o vuoi SOMMARE il valore presente con il tuo?
Perchè la query che hai fatto serve a INSERIRE un nuovo record alla fine della tabella. Se vuoi sommare devi usare un'altro metodo:
--Estrai i 2 valori
SELECT val1, val2
FROM tabella
WHERE <condizione>
--Sommi
val1 = val1 + mio valore 1
val2 = val2 + mio valore 2
--Sostituisci
UPDATE tabella
SET
Nome_Colonna1 = val1,
Nome_Colonna2 = val2,
WHERE <condizione> (condizione è uguale a quella che hai usato per estrarre i valori)
Tutto chiaro?
Se invece vuoi solo sostituire i valori eviti di estrarli prima.
Io farei così.
Diego
-----------------------------------
Avanti sempre e comunque!
-----------------------------------
mame37
Profilo
| Junior Member
50
messaggi | Data Invio:
mer 7 mag 2008 - 14:31
Ti spiego meglio io devo sostituire i valori della tabella presente sul db con i miei che ho estratto da un'altra tabella presente nel mio hd. Con un ciclo foreach ho estratto solo di dati che mi interessavanodalla mia tabella origine per poi doverli inserire nella tabella del db..ho fatto questo
foreach (string var in riga)
{
string[] val_riga = var.Split(',');
string campo1 = val_riga[0] + "@prova.it";
string campo2 = val_riga[1];
string campo3 = val_riga[2];
string campo4 = val_riga[3];
Console.WriteLine (campo1);
adesso quello che devo fare è inserire il campo1 e il campo 4 nella colonna user e psw della tabella del db. che mi consigli?
devo fare un'altro cisclo per farli inserire tutti nella tabella del db?
Lucifel
Profilo
| Junior Member
104
messaggi | Data Invio:
mer 7 mag 2008 - 14:43
>Ti spiego meglio io devo sostituire i valori della tabella presente
>sul db con i miei che ho estratto da un'altra tabella presente
>nel mio hd. Con un ciclo foreach ho estratto solo di dati che
>mi interessavanodalla mia tabella origine per poi doverli inserire
>nella tabella del db..ho fatto questo
>
>foreach (string var in riga)
>
> {
> string[] val_riga = var.Split(',');
>string campo1 = val_riga[0] + "@prova.it";
> string campo2 = val_riga[1];
> string campo3 = val_riga[2];
> string campo4 = val_riga[3];
> Console.WriteLine (campo1);
>
>adesso quello che devo fare è inserire il campo1 e il campo 4
>nella colonna user e psw della tabella del db. che mi consigli?
>devo fare un'altro cisclo per farli inserire tutti nella tabella
>del db?
Non puoi usare l'insert, perché l'insert ti AGGIUNGE nuove righe alla tabella. Devi usare l'update. Ho capito che devi mettere campo 1 e campo 4 nella tabella, ma devi inserirla su tutte le righe o solo su determinare righe?
Devi usare l'update che ti ho messo prima. Se usi non usi il WHERE inserisci in tutte le righe
Diego
-----------------------------------
Avanti sempre e comunque!
-----------------------------------
mame37
Profilo
| Junior Member
50
messaggi | Data Invio:
mer 7 mag 2008 - 14:58
Se guardi il ciclo al campo 1 gli viene aggiunto @... mentre il campo 4 rimane inviariato io devo inserire tutti questi valori nella tabella per tutte le righe della tabella. nella tabella del db dovrebbe apparire
nome utente psw
..1@..it ps1
..2@..it ps2
..3@..it ps3
..
per tutti i dati che elaboro.. in poche parole vado a riempire tutta la tabella
Lucifel
Profilo
| Junior Member
104
messaggi | Data Invio:
mer 7 mag 2008 - 15:04
>Se guardi il ciclo al campo 1 gli viene aggiunto @... mentre
>il campo 4 rimane inviariato io devo inserire tutti questi valori
>nella tabella per tutte le righe della tabella. nella tabella
>del db dovrebbe apparire
>nome utente psw
>..1@..it ps1
>..2@..it ps2
>..3@..it ps3
>..
>per tutti i dati che elaboro.. in poche parole vado a riempire
>tutta la tabella
E allora fai un semplice update
UDATE tabella
SET
campo1 = valore1
campo4 = valore4
dove valore1 è quello che hai modificato e valore4 è la tua password
Ricorda che ti cambia tutti i valori di quelle colonne di tutte le righe della tabella
Se è questo che ti serve...
Diego
-----------------------------------
Avanti sempre e comunque!
-----------------------------------
mame37
Profilo
| Junior Member
50
messaggi | Data Invio:
mer 7 mag 2008 - 15:09
un'ultima cosa se guardi il mio ciclo foreach mi parte dalla prima riga della mia tabella quindi mi scrive anche l'intestazione cosa che io nn vorrei..quindi vorrei partire a sostituire dal secondo valore
usurname,pass,nome,cognome
pinco,xxx,xxxx,xxxxx
io vorrei che iniziasse dalla seconda linea ovvero da pinco..
Lucifel
Profilo
| Junior Member
104
messaggi | Data Invio:
mer 7 mag 2008 - 15:27
Non riesco a capirti.
Le "riga" cosa sono? da dove le hai estratte???
Se è una query da db non dovresti avere l'intestazione.
Da quello che vedo immagino che riga è fatto così:
a1,b1,c1,d1
a2,b2,c2,d2
...
quindi l'unico modo per evitare di leggere la prima riga di questa cosa (che penso sia una datatable) devi usare un semplice ciclo for
for (int i = 1; i < riga.Count; i++)
{
string[] val_riga = riga[i].Split(',');
...
}
Nota che i parte da 1 e non da 0
Dentro il tuo var è sostituito da riga[i]
Diego
-----------------------------------
Avanti sempre e comunque!
-----------------------------------
mame37
Profilo
| Junior Member
50
messaggi | Data Invio:
mer 7 mag 2008 - 15:57
ho provato a fare come mi hai detto ma continua a prendere i dati dalla prima linea..io prendo i dati da uan tabella .csv composto da 5 colonne io mi sono separato splittando le varie colonne così da poterle separare come vedi ho fatto un ciclo forech per estrarre tutte le righe..
questo è il contenuto del file .csv
username,first name,last name,password
grup1,grup1,grup1,password,grup2
grup2,grup2,grup2,password,grup2
io come vedi alla colonna 1 ho inserito la @..it
il mio problema che nel mio ciclo come primo valore ho usurname@...it mentre non ci dovrebbe essere..ma iniziare con grup1@...it
potresti aiutarmi utilizzando il mio programma perchè non sono esperto e non so riadattarle..grazie ancora scusa il disturbo
Lucifel
Profilo
| Junior Member
104
messaggi | Data Invio:
mer 7 mag 2008 - 16:23
come hai estratto i dati dal csv?
Diego
-----------------------------------
Avanti sempre e comunque!
-----------------------------------
mame37
Profilo
| Junior Member
50
messaggi | Data Invio:
mer 7 mag 2008 - 16:32
con questa
string[] riga = System.IO.File.ReadAllLines(@"C:\.....................csv");
Lucifel
Profilo
| Junior Member
104
messaggi | Data Invio:
mer 7 mag 2008 - 16:48
quindi hai un array di stringe...
sicuro che questa sintassi non funzioni?
for (int i = 1; i < riga.Lenght; i++) { }
Mi sembra corretta... alla fine hai un array di n elementi...
Diego
-----------------------------------
Avanti sempre e comunque!
-----------------------------------
mame37
Profilo
| Junior Member
50
messaggi | Data Invio:
mer 7 mag 2008 - 16:57
adesso funziona grazie mille!
Lucifel
Profilo
| Junior Member
104
messaggi | Data Invio:
gio 8 mag 2008 - 09:12
Figurati,
ciao
Diego
-----------------------------------
Avanti sempre e comunque!
-----------------------------------
Torna su
Stanze Forum
Elenco Threads
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 !