Download Data Access - Tonga Institute of Higher Education

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

SQL wikipedia , lookup

Microsoft Access wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Database wikipedia , lookup

Extensible Storage Engine wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Relational model wikipedia , lookup

Functional Database Model wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

Transcript
Data Access
Tonga Institute of Higher
Education
Introduction
Many programs work with large amounts
of data
 Databases are an good place to store data
 Programs need a way to connect to, get
data from and save data to databases
 ActiveX Data Objects .Net (ADO .Net)
provides way to access data from Object
Linking and Embedding Database (OLE
DB)-compliant data sources such as SQL
Server and Oracle.

ADO .Net Components

.Net Data Providers – Objects designed
for connecting to a database, executing
commands and retrieving results
 Connection
 Command
 DataReader
 DataAdapter
Connection Object

Connection Object – Provides connectivity to a
data source
1.
SQLConnection object – Allows connection to a
Microsoft SQL Server 7.0 or later database

2.
Located in System.Data.SQLClient namespace
OLEDbConnection object – Allows connection to an
OLE DB data source


Located in System.Data.OleDb namespace
Microsoft Access is an OLE DB compliant database
Connection Strings




The SQLConnection and OLEDbConnection objects
both use connection strings to connect to a data source
Connection String – Provides information needed to
connect to a database
You do not need to include everything in a connection
string. Only include what is needed.
SQLConnection object

SQL Server


Initial Catalog=pubs;Data Source=(local);User
ID=sa;password=;
OLEDbConnection object

Oracle


Provider=msdaora;Data Source=MyOracleDB;User
ID=myUsername;Password=myPassword;
Microsoft Access
Local DB
Network DB


Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=c:\northwind.mdb
Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=\\tihe1\student.mdb
You don’t always
need a User ID
and Password
Opening and Closing Connections

Before a Connection object can work with
a database, the connection must be
opened
 Use

the Open() method
After the Connection object is used, the
connection must be closed
 Use
the Close() method
Command Object

Command Object – Enables the execution of
queries and return of data from a data source
 A Connection
object must be specified to connect to a
data source
 A SQL statement must be specified for execution at
the data source
 There are different ways to execute SQL statements


ExecuteNonQuery() – Use this when data will not be returned
ExecuteReader() – Use this when data will be returned
ExecuteNonQuery Code
ExecuteNonQuery does
not return anything
Demonstration
Connections, Commands and
ExecuteNonQuery
DataReader Object


DataReader Object – Provides a stream of data
from the data source
Useful members
 FieldCount
 Get<DataType>
 GetByte
 GetString
 And more
 HasItems
 Item
 Read
DataReader and ExecuteReader Code
Using a DataReader
to display data from
database
ExecuteReader returns
A DataReader
Keeps looping
until all rows
are read
Gets string from first index
Demonstration
Connections, Commands and
DataReader.ExecuteReader Code
DataSet Object


DataSet –An in-memory database
Useful members (* covered later)
 Clear
 Tables*
DataSet
DataTable Object

A DataTable object is an in-memory database table. It contains:

Rows and columns of data
 Primary key, foreign key, constraint and relation information about the
data

Useful members (* covered later)









ChildRelations*
Clear
Columns*
Constraints*
DataSet
NewRow
ParentRelations*
PrimaryKey
TableName
DataTables
DataColumn Object


A DataColumn object represents a table column
Useful members












AllowDBNull
AutoIncrement
AutoIncrementSeed
AutoIncrementStep
Caption
ColumnName
DataType
DefaultValue
MaxLength
Ordinal
Table
Unique
DataColumn
DataRow Object


A DataRow Object represents a row of data in a table
Useful members


Item
Table
DataRow
Demonstration
DataSets, DataTables,
DataColumns and DataRows
DataTableCollection



A DataTableCollection contains DataTables
Access the DataTableCollection of a DataSet by
using the Tables property
Useful members
 Add
 Count
 Clear
 Item
 Remove
Demonstration
DataTableCollection
DataColumnCollection



A DataColumnCollection contains DataColumns
Access the DataColumnCollection of a
DataTable by using the Columns property
Useful members
 Add
 Count
 Clear
 Item
 Remove
Demonstration
DataColumnCollection
DataRowCollection



A DataRowCollection contains DataRows
Access the DataRowCollection of a DataTable
by using the Rows property
Useful members
 Add
 Count
 Clear
 Item
 Remove
Demonstration
DataRowCollection
DataAdapter Object
DataAdapter – Used to retrieve data from
a database and put it in a DataSet. Can
also send changes from the DataSet to the
database
 Useful members

 Fill
 Update
DataAdapter Code
The Fill method opens the Connection if
the connection is not already open. If Fill
opened the connection, it will also close
the connection.
Demonstration
DataAdapter Object
Programmatically Creating DataSet
Objects
DataSets, DataTables, DataRows and
DataColumns are all objects
 We can create and customize all of these
objects

Programmatically Creating DataSet
Objects Code
Demonstration
Programmatically Creating
DataSet Objects
DBNull, Nothing and “”

There is a difference between having
 No
Data
And
 “”


In a database, use null when you have no data
In VB.Net
 Use
“” when you have an empty string
 Use nothing when there is no data in a variable
 Use dbnull when there is no data in a database field
Demonstration
DBNull, Nothing and “”
Storing Single Quotation Marks in a
Database

We often store SQL queries in a string
 Dim
SQL as String = “Insert into Students
(FirstName) values (‘Tevita’)”
SQL queries use single quotation marks
 To store a single quote in a database, use
the single quote twice

 Dim
SQL as String = “Insert into Students
(FirstName) values (‘Ma’’afu’)”
Demonstration
Storing Single Quotation
Marks in a Database
Data Access Exceptions

Often, errors occur when databases are used.




The name of the file is changed
The location of a file is incorrect
The program does not have the proper username and password
to access the database
Common Data Access Exceptions




DataException - Exception that is thrown when errors are
generated using ADO.NET components.
ConstraintException - Exception that is thrown when attempting
an action that violates a constraint.
NoNullAllowedException - Exception that is thrown when
attempting to insert a null value into a column where
AllowDBNull is set to false.
ReadOnlyException - Exception that is thrown when attempting
to change the value of a read-only column.
Demonstration
Data Access Exceptions