Presentation is loading. Please wait.

Presentation is loading. Please wait.

 It is the primary data access model for.Net applications  Next version of ADO  Can be divided into two parts ◦ Providers ◦ DataSets  Resides in System.Data.

Similar presentations


Presentation on theme: " It is the primary data access model for.Net applications  Next version of ADO  Can be divided into two parts ◦ Providers ◦ DataSets  Resides in System.Data."— Presentation transcript:

1

2  It is the primary data access model for.Net applications  Next version of ADO  Can be divided into two parts ◦ Providers ◦ DataSets  Resides in System.Data namespace

3  It enables connection to the data source  Each data source has it’s own connection provider  Common data access objects ◦ Connection ◦ Command ◦ Parameter ◦ DataAdapter ◦ DataReader

4  It provides the connection that is used for accessing data source  Common types ◦ OleDbConnection ◦ OdbcConnection ◦ SqlConnection

5  Object Linking and Embedding Database  It aims to access to specific set of data sources from.Net applications  Continuous access to data source even path of the source is changes.  Odbc vs OleDb  System.Data.OleDb

6  Commonly used properties and functions ◦ ConnectionString ◦ ConnectionTimeout ◦ BeginTransaction() ◦ Close() ◦ CreateCommand() ◦ Open()

7 To add a connection object to the form, just drag and drop an OleDbConnection from the toolbox

8  Use ConnectionString property in to Properties Window to set connection information.  DataLink properties window will be opened when you ConnectionString property click

9  From the first tab select the type of data provider  To define a connection to an access database, you should select Microsoft Jet 4.0 OLE Db Provider

10

11

12  It performs CRUD (Create-Read-Update- Delete) operations on the database.  Common Types ◦ OdbcCommand ◦ OleDbCommand ◦ SqlCommand

13  It uses OleDb framework  Common properties and functions ◦ CommandText ◦ Connection ◦ Parameters ◦ Transaction ◦ ExecuteNonQuery() ◦ ExecuteReader()

14  Constructors ◦ OleDbCommand() ◦ OleDbCommand(string cmdText) ◦ OleDbCommand(string cmdText, OleDbConnection myoledbConn) ◦ OleDbCommand(string cmdText, OleDbConnection myoledbConn, OleDbTransaction myoledbtrans)

15 Type of the object Name of the object Connection object The SQL command that will be run

16  It provides a data parameter to command object  Usage; ◦ First crate a command object with an SQL statement which contains special characters for placing parameters. ◦ Add parameters to the command object with assigning values ◦ Execute the command object

17 Adding parameters Type of the parameter Length of the parameter Assigning values to the parameter

18  Used for retrieving data from datasource without modifying the actual data (works readonly)  Common types ◦ OdbcDataReader ◦ OleDbDataReader ◦ SqlDataReader ◦ OracleDataReader ◦ Db2DataReader

19  It has no public constructor. So, to crate a DataReader object you should call ExecuteReader() function of the releates command object. ◦ OleDbDataReader ordr = ocmd.ExecuteReader();  When Read() fucntion is called, DateReader object starts to read data or moves to next record. ◦ if(ordr.Read()) ◦ while(ordr.Read())  To access actual data one should use indexes or Get functions of the reader ◦ ordr[0].ToString(); ◦ ordr[“NameOfTheColumn”].ToString() ◦ ordr.GetString(0);

20  If you plan to continue to use Connection object (e.g. to execute another SQL statement), then you should call Close() function of the reader object. ◦ ordr.Close();  Common properties and functions ◦ IsClosed ◦ FieldCount ◦ GetInt32(), GetDecimal(), GetString()...... ◦ IsDBNull() ◦ Read() ◦ Close

21 Reader object If there is data to be read Create reader object by executing the command Fetch the data by providing the column number on the current row

22 Reader object If there is data to be read Create reader object by executing the command Fetch the data by providing the column name on the current row

23  It is a kind of bridge between data source and DataTable object  Constructors ◦ OleDbDataAdapter() ◦ OleDbDataAdapter(OleDbCommand myCmd) ◦ OleDbDataAdapter(string cmdString, OleDbConnection mySqlConn) ◦ OleDbDataAdapter(string cmdString, string conn)

24  Common properties and funtions ◦ Fill() ◦ Update()

25 Transfer data from DB to DataSet object Create DataSet object Create adapter object Connection object

26  DataSet object used as a simple relational in- memory database in C# programs  It uses DataAdapter object to access and modify data source  Internal structures within a DataSet object ◦ DataSet ◦ DataTable ◦ DataColumn ◦ DataRow

27 Hierarchically defined DateSet objects

28  DataSet object represents the whole DB  It includes tables and the relations between tables  It is filled by calling Fill() function of the DataAdapter object.  Common properties and functions ◦ Tables ◦ AcceptChanges() ◦ Clear()

29  Constructors ◦ DataSet() ◦ DataSet(string dataSetNameString)  Example ◦ DataSet myDataSet = new DataSet(); ◦ DataSet myDataSet = new DataSet("myDataSet"); Type of the DataSet object Name of the DataSet object Create a new DataSet object

30  It resides in DataSet object  It has name, columns and rows  Instead of creating a new DataTable, we usually use the one that is inside a DataSet object  A DataSet object may have more than one (multiple) DataTable objects.

31  DataColumn: It corresponds to a column in a DB table. It holds name and data type information.  DataRow: It corresponds to a row in a DB table. It holds actual data and used in select, update, insert and delete operations.

32 DataSet object Command Fill DataSet DataAdapter object From first row of first table of DataAdapter Fetch data using column numbers

33  Filter a set of data  Eleminates row mismathcing rows, passes matching ones.  If a select sql is executed without a where keyword, then all rows in tables that are used in select sql will be returned.  It needs columns in order to be used  Pay importance to data types while using where keyword.

34  SELECT * FROM PERSONEL WHERE ADI = ‘ALİ’ ◦ This query will return all rows in table PERSONEL whose name are equal to ALİ ◦ where keyword should be used after table name ◦ After then we should write filter statements  SELECT * FROM PERSONEL WHERE ADI LIKE ‘AL%’ ◦ This query will return all rows in table PERSONEL whose name starts with AL ◦ LIKE keyword is used to search for specified patterns in a column.  SELECT * FROM PERSONEL WHERE ADI = ‘ALİ’ AND SOYADI = ‘KAYA’ ◦ Where keyword may include multiple filtering statements ◦ The sql query seen above will return the rows with name equals ALİ and surname equals KAYA

35  It is used for erasing records from table  Generally used with where keyword  It is an irreversible operation (unless used within a transaction), so use it very carefully.  To execute a delete sql, first put it in to a command object, then call ExecuteNonQuery function.

36  DELETE FROM PERSONEL ◦ Deletes all rows (records) in table PERSONEL  DELETE FROM PERSONEL WHERE AGE < 18 ◦ Deletes rows in table PERSONEL who are younger then 18  DELETE FROM PERSONEL WHERE ADI LIKE ‘AL%’ ◦ Deletes rows in table PERSONEL whose names starts with AL

37  It is used for changing values in a tables  More effective then delete->insert  Usually used with where keyword  User should supply column names that will be updated  To execute a update sql, first put it in to a command object, then call ExecuteNonQuery function.

38  UPDATE PERSONEL SET ADI = ‘ALİ’ ◦ Changes all names to ALİ in table PERSONEL  UPDATE PERSONEL SET YAS = 18 WHERE YAS < 18 ◦ Sets the age value of the records to 18 who are younger than 18

39  This operation is called JOIN operation  It combines desired columns from multiple tables in to one data set.  Usually one column of a table is matched to anoter related column in other table  If two tables have column with same name, then we should write table names before column names to get over confusion

40 IDST_NAMEST_SURNAME 1ALİKAYA 2VELİTAN IDLC_NAME 5PHYSICS 6CHEMISTRY IDST_IDLC_IDGRADE 11550 21630 32580 STUDENTS LECTURES GRADES

41  Id, name and surnames are stored in STUDENT table  Id and lecture names are stored in LECTURES table  In grades table we store the scores of students in courses  How to find the score of a student in a specified lecture.

42  Answer: We have to combine (join) three tables.  How? ◦ Pick the id of the student from STUDENTS table ◦ Pick the lecture information from LECTURES table ◦ Pick the lectures that student attends from GRADES table ◦ Fetch grades of students from desired lessons from GRADES table

43  Joining ◦ Join STUDENTS (ID) with GRADES(ST_ID) ◦ Join LECTURED(ID) with GRADES(LC_ID)

44  To select student name, surname, attended lectures and grades we should write the following SQL query SELECT ST_NAME, ST_SURNAME, LC_NAME, GRADE FROM STUDENTS, GRADES, LECTURES WHERE STUDENTS.ID = GRADES.ST_ID AND LECTURES.ID = GRADES. LC_ID


Download ppt " It is the primary data access model for.Net applications  Next version of ADO  Can be divided into two parts ◦ Providers ◦ DataSets  Resides in System.Data."

Similar presentations


Ads by Google