Download presentation
Presentation is loading. Please wait.
Published byBertha Holly Joseph Modified over 9 years ago
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
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.