PDA

View Full Version : [C#]Database con funzione ricerca


Gabber2003
29-01-2007, 14:46
Ho inserito il database con la funzione aggiungi e elimina nel mio forum...
...ma ora vorrei inserigli anche la funzione di ricerca...
...in modo da trovare i campi in modo veloce...

o almeno una funzione filtro...
chi riesce ad iutarmi x favore?
dovrebbe essere una fesseria da fare in teoria :muro:

RaouL_BennetH
29-01-2007, 15:56
qual'è il database che stai usando?

In linea di massima ti dovrebbe bastare una query del tipo:



SELECT tuoi_campi FROM tua_tabella WHERE tua_condizione = 'valore'

oppure

SELECT tuoi_campi FROM tua_tabella WHERE tua_condizione LIKE 'valore'

e opzionalmente raggruppare i risultati e/o ordinarli con GROUP BY e ORDER BY

RaouL_BennetH
29-01-2007, 16:02
abbinandola al C#



string findRecords = "SELECT campo1, campo2, campo3 FROM tabella WHERE ID_tabella = 'valore' (per esempio) ' " + casellaDiTesto.Text + " ' ";

SqlCommand eseguiQuery = new SqlCommand(findRecords);
esegyuQuery.ExecuteNonQuery();

//poi devi fare il bind dei risultati ai controlli che hai sul form



Oppure, se si vuole anche dare un occhio di riguardo alla sicurezza e prevenire sql iniection:



string trova = "SELECT _tuoi_campi_ FROM tabella WHERE campo_da_confrontare = ?parametro ";

SqlParameter parametro = new SqlParameter("?parametro", SqlDbType.TuoTipoDiDatoNelDB);

parametro.Value = valore_del_dato_contenuto_nel_tuo_oggetto; //per es. casellaDiTesto.Text;

SqlDataAdapter adapter = new SqlDataAdapter(trova, tua_connessione_al_db);

adapter.SelectCommand.Parameters.Add(parametro);

Gabber2003
29-01-2007, 16:53
grazie ;)
é un database creato con mygeneration
me l'ha dato un amico per fare pratica.

il bind cos'é?

RaouL_BennetH
30-01-2007, 09:41
grazie ;)
é un database creato con mygeneration
me l'ha dato un amico per fare pratica.

il bind cos'é?

E' l'azione che ci permette di "legare" i risultati ottenuti a determinati oggetti (riferendomi in questo caso al database).

Mygeneration non lo conosco come database, quindi secondo me dovresti vedere se ha delle istruzioni particolari per eseguire le query.

Gabber2003
30-01-2007, 10:59
ah ok.
cerco su internet :D
perché il database non é stato fatto da me.. quindi non so quasi nulla su quel programma. :mc: