Aiuto Programma : scelta Db

lunedì 06 aprile 2009 - 18.04

alexkane Profilo | Newbie

salve a tutti piacere, sono Alessandro
molti anni fa, "programmavo" semplici programmini con VB6
qualche giorno fa, mi e' stato chiesto da un mio parente, la possibilita' di fargli un piccolo programmino...purtroppo non ho mai lavorato con i Db quindi non saprei come muovermi su certe cose.
vi spiego il programma

all'apertura, richiedere un DB, una volta collegato ad esso, creare un Datagridview per poter inserire, eliminare e modificare i record...........


+/- ho capito come cisi allaccia ad un Db e come si prelevano i dati da esso....
ma come si fa in caso di "diversi DB"?
nel senso........
se in un programma semplice, tramite i comandi sql SELECT * FROM "CLIENTI"
come faccio se non si conosce la struttura del db di origine?
grazie!

ps scuisate il titolo..ho letto dopo di evitare "appendici" inutili

Anonimo Profilo | Senior Member

Per fortuna con .net usando ado non ti preoccupi minimamente di che db c'è sotto, ma pe la tua applicazione un'abbinata vb.net in versione express e access 2000 o 2007 direi che è azzeccatissima e fai fare tutto al wizard.

alexkane Profilo | Newbie

negativo......il tutto via codice senza l'utlizzo di wizard o altro :(
piu che altro mi preoccupa capire come fa a prelevare i campi per poter costruire il dgv

Anonimo Profilo | Senior Member

Il wizard duìi microsoft scrive codice ed è velocissimo... se basta che scivi queste due funzioni:

public DataTable executeQuery(string SQL) { SqlConnection sqlConn = new SqlConnection(); try { sqlConn.ConnectionString = connString; sqlConn.Open(); DataSet ds = new DataSet(); SqlDataAdapter adapt = new SqlDataAdapter(SQL, sqlConn); adapt.Fill(ds); return ds.Tables[0]; } catch { return null; } finally { sqlConn.Close(); } } public bool executeNoQuery(string SQL) { SqlConnection sqlConn = new SqlConnection(); try { sqlConn.ConnectionString = connString; sqlConn.Open(); SqlCommand sqlComm = new SqlCommand(SQL, sqlConn); return (sqlComm.ExecuteNonQuery()==1); } catch { return false; } finally { sqlConn.Close(); } }

A patto che dove leggi connString scrivi la stringa di connessione al tuo db che puoi creare grazie a questo sito:
http://www.connectionstrings.com

Ti colleghi esegui una query e lui ti restituisce un oggetto DataTable che contiene la tua tabella virtualizzata. Per eseguire insert, update o delete usa la seconda funzione. Per sapere nel dettaglio cosa sono i DataTable e come funzionano collegati a questo indirizzo:

http://msdn.microsoft.com/it-it/library/system.data.datatable(VS.80).aspx

Ciao e se hai bisogno chiedi pure...

alexkane Profilo | Newbie

ciao grazie per la risposta
guarda questo e' il codice che ho scritto


Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

mi da (sia che lo scrivo da solo, sia che lo "copio" pari pari da un libro) il seguente errore :


OLEDB EXCEPTION WAS UNHANDLED

COD ERRORE : DB_sEC_E_AUTH_FAILED 0X80040E4D
sicuramente e' un errrore banale che proprio pero' non riesco a capire

grazie

llamanna Profilo | Junior Member

Un ulteriore consiglio. visto che non hai molta dimistichezza con la connessione ad un db, per ottenere una stringa di connessione che sia sicuramente esastta, ti consiglio di usare l'oggetto OleDbConnectionStringBuilder (http://msdn.microsoft.com/it-it/library/system.data.oledb.oledbconnectionstringbuilder.aspx).

In questo modo sei sicuro che la stringa di connessione sia esatta e ti permette di ottenerla in maniera più semplice, ogni volta che selezioni un db.

Buon lavoro.
Laura.
http://lauralamanna.blogspot.com/

alexkane Profilo | Newbie

mmmm
non l ' ho capito molto questo passaggio...la stringa da me inserita quindi e' errata?


grazie ancora per l'aiuto, davvero
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-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5