130 likes | 230 Views
Tworzenie aplikacji bazodanowych w .NET. Piotr Dzierżak. Plan seminarium. 1. Wstęp oraz omówienie podstawowych pojęć. 2. Utworzenie bazy danych oraz tabel w SqlServer 2005. 3. Stworzenie prostej aplikacji która będzie obsługiwać bazę danych. 4. Podsumowanie. Co jest nam potrzebne?.
E N D
Tworzenie aplikacji bazodanowych w .NET Piotr Dzierżak
Plan seminarium 1. Wstęp oraz omówienie podstawowych pojęć. 2. Utworzenie bazy danych oraz tabel w SqlServer 2005. 3. Stworzenie prostej aplikacji która będzie obsługiwać bazę danych. 4. Podsumowanie
Co jest nam potrzebne? • Microsoft SQLServer 2005 Microsoft Visual Studio 2005
Podstawowe pojęcia • Baza danych • Tabela • System.Data.SqlClient • Provider • SqlConnection • SqlCommand
.ASPX Page DataReader Command Company: Northwind Traders Database Connection DataAdapter DataView DataSet List-Bound Control .ASPX Page Obiektowy model ADO.NET
Demonstracja użycia SQLClient data provider do wstawiania rekordów w tabeli SQLClient Data Provider SqlConnection 1 SQL Database 2 SqlCommand Insert Query
SQLClient Data Provider 1 SqlConnection myCn = new SqlConnection("server=srv;uid=;pwd=;database=northwind"); 2 SqlCommand myCmd = new SqlCommand("INSERT INTO Customers(CustomerID, CompanyName) Values ('ABC','ABC Company')", myCn); 3 try { 4 myCn.Open(); 5 myCmd.ExecuteNonQuery(); // wstawiamy rekord } 6 catch(Exception e) { 7 Console.Write(„Nie można wstawić wiersza: " + e.ToString()); } 8 finally { 9 myCn.Close(); // zamykam połączenie }
Dzięki użyciu SqlDataReader w szybki sposób możemy czytać informacje z bazy danych. Użycie SqlDataReader 1 SQL Database SqlConnection SqlCommand 2 SqlDataReader ExecuteReader()
Użycie SqlDataReader 1 SqlDataReader myReader = null; 2 SqlConnection myCn = new SqlConnection(ConStr); 3 SqlCommand myCmd = new SqlCommand("select * from stores", myCn); try { 4 myCn.Open(); 5 myReader = myCmd.ExecuteReader (CommandBehavior.CloseConnection); 6 while (myReader.Read()) { 7 Console.WriteLine(myReader[“StoreLocation"].ToString()); } } 9 catch(Exception e) { 10 Console.WriteLine(e.ToString()); } finally { 11 if (myReader != null) 12 myReader.Close(); }
SqlDataReaderoraz Stored Procedures 1 string connection = @"Data Source=piodi\piodi;Initial Catalog=moja_baza;Integrated Security=True"; 2 SqlConnection conn = new SqlConnection(connection); 3 int result = 0; 4 SqlCommand cmd = new SqlCommand("jaka_cena", conn); 5 cmd.CommandType = CommandType.StoredProcedure; 6 cmd.Parameters.Add("@in_produkt", SqlDbType.NVarChar).Value = comboBox1.Text; try { 7 conn.Open(); 8 SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.SingleRow); 9 while (dr.Read()) { 10 result = (int)dr["cena"]; } 11 cena_lab.Text = result.ToString(); 12 dr.Close(); 13 conn.Close(); } 14 catch (SqlException ex) { cena_lab.Text = ex.Message; }
Otrzymywanie informacji używając DataSet 1 SQL Database SqlConnection 2 SqlDataAdapter Fill DataSet Tables Rows 3
Otrzymywanie informacji używając DataSet 1 SqlConnection myCn = new SqlConnection(cnStr); 2 SqlDataAdapter myDA = new SqlDataAdapter(“Select * from Customers", myCn); try { 3 DataSet myDataSet = new DataSet(); 4 myDA.Fill(myDataSet, "myCustomers"); 5 foreach (DataRow myDataRow in myDataSet.Tables["myCustomers"].Rows) { 6 Console.WriteLine(myDataRow["CustomerId"].ToString() + " " + myDataRow["CompanyName"].ToString()); } } catch (Exception e) { 7 Console.WriteLine(e.Message.ToString()); }
KONIEC Kontakt: piodi@wp.pl