Lucrul cu bazele de date. Executarea unei instrucţiuni SQL

Multe din aplicaţiile ASP .NET realizate vor avea nevoie de acces la o bază de date. Mai jos voi prezenta o metodă pentru conectarea la baza de date din cod şi executarea unei comenzi SQL.

Pentru instalarea serverului SQL precum şi a unui tool de management a bazei de date (pentru a putea crea tabelele şi baza de date vizual) accesaţi această adresă: http://www.microsoft.com/express/Downloads/. Aici puteţi alege SQL Server 2008 Express (Runtime with Advanced Services sau Runtime With Management Tools).

La instalare puteţi alege metoda de conectare la serverul SQL (SQL authentication sau Windows autenthication). Numele serviciului SQL este denumit implicit SQLEXPRESS. Pentru a vedea cum se defineste conexiunea la baza de date, citiţi secţiunea "Conectarea la baza de date" de aici: http://punctnet.blogspot.com/2009/11/webconfig.html.

Executarea unei comenzi SELECT.

private string connectionstring = WebConfigurationManager.ConnectionStrings["nume_conexiune"].ConnectionString; /* conexiunea e definită în web.config, sau pur şi simplu se poate scrie aici string-ul de conectare */

private void conectare()
{

SqlConnection conn = new SqlConnection(connectionstring);
/* definim conexiunea sql*/

conn.Open(); // se deschide conexiunea


string command = "SELECT * FROM nume_tabela";// definim comanda sql

SqlCommand comm = new SqlCommand(command, conn);

SqlDataReader reader;


try
{
reader = comm.ExecuteReader();
while (reader.Read())
{
/*preluare date. Putem prelua primul câmp din rezultatul selectului astfel: reader[0].ToString() sau reader["nume_camp"].ToString() */
}
reader.Close();

}
catch
{
//în caz că avem erori, le putem prelucra aici.
}
finally
{
conn.Close(); //orice s-ar întâmpla, conexiunea se închide.

}
}


În cazul unei instrucţiuni INSERT, UPDATE sau DELETE se procedează astfel:


private string connectionstring = WebConfigurationManager.ConnectionStrings["nume_conexiune"].ConnectionString;

private void executare_sql()
{

SqlConnection conn = new SqlConnection(connectionstring);

conn.Open(); //se poate folosi si aici try...catch

string command = "INSERT INTO ...";

SqlCommand comm = new SqlCommand(command, conn);

comm.ExecuteNonQuery();

conn.Close();
}

Un comentariu:

Andi spunea...

Sunt aproape sigur ca ma aflu in afara subiectului dar am sa intreb oricum ca nu mai stiu unde sa caut. Ce fel de contectori imi trebuie la un cablu care se adauga intre un patch panel si un server... Ma tot uit la mufe si nu-mi dau seama... Am gasit pe site-ul asta ceea ce caut dar nu stiu ce mufe imi trebuie. OAre cum pot afla ca nu gasesc o schita nicaieri si dupa cum se intelege nu ma pricep deloc. Poate aveti vreo idee... Multumesc!