Download Active Data Objects

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

Microsoft SQL Server wikipedia , lookup

Concurrency control wikipedia , lookup

Microsoft Access wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Ingres (database) wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Database wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Functional Database Model wikipedia , lookup

Extensible Storage Engine wikipedia , lookup

Clusterpoint wikipedia , lookup

Versant Object Database wikipedia , lookup

Relational model wikipedia , lookup

Database model wikipedia , lookup

Transcript
Active Data Objects in .Net
Jim Fawcett
CSE691/891 – Internet Programming
Summer 2002
Introduction to Relational Databases
• A relational database is composed of one or more
(usually more) tables.
• Each table consists of rows and columns.
– A row is referred to as a record
• A record refers to a single entity – person, place, or thing
• Each record in the database is unique, no duplicates are allowed
– A column is referred to as a field or attribute
• a column holds a specified data type – an attribute of the record
– Almost all tables define a primary key
• The primary key is an attribute that serves to uniquely identify
records in the database.
• Relationships are defined between tables.
– A relationship is a unique association between two tables
• Usually a column in one table is filled with (foreign) primary keys
from the other table
Final Project Data Design
• The Final Project is concerned with managing Work
Packages
– Each package contains one or more Software Products, e.g.,
specs, design docs, code, test data, …
– A Work Package resides on a single machine.
• Each Participant is assigned a Software Product
– A Participant assigns status to her Software Product
– A Participant is associated with a single machine on which she
receives messages
– Participants create reviews of their own and other Software
Products
– Participants create new versions of products assigned to them
Entity Relationship Diagram (ERD)
Final Project – Internet Programming
about
m
review
m
1
status
1
achieves
1
software
product
1
m
assigned
1
m
participant
1
contains
owns
1
Work
Package
creates
1
m
resides
1
machine
Creating an Access Database
Creating an Access Database
• An Access Database can contain:
– Multiple tables with relationships between them
– Structured Query Language (SQL) based queries
• Can form joins of data from multiple tables
– Forms which provide views of the database data
• Extracts data from tables but can hide the table structure from
clients
• Access supports a complete relational model with a fairly
low performance engine, suitable for at most a few
users.
• If you need to support large numbers of concurrent
users you want to use SQLServer or some other high
perform-ance tool.
Table Design View
Creating a Relationship Between Tables
Creating a Relationship
Creating a Relationship
“Contains” Relationship
Building Query
Query Results
Construct Form View
Support for Data in .Net
• Connected data access:
– Use Connection object and Command to connect a DataReader
object to database and read iteratively.
– Use Connection object and Command to connect a DataReader
and execute an SQL statement or stored procedure.
• Disconnected data access:
– Use a Connection and Command to connect a DataAdapter to the
database and fill a DataSet with the results.
– Use a Connection and Command to connect a DataAdaptor to the
database and then call Update method of the DataSet.
Data Provider Classes
OleDbConnection
OleDbCommand
OleDbDataReader
SqlConnection
OleDbDataAdapter
SqlDataAdapter
DataSet
SqlCommand
SqlDataReader
ADO Objects
DataAdapter
SelectCommand
Command
Connection
UpdateCommand
Connection
CommandText
ConnectionString
InsertCommand
CommandType
DeleteCommand
DataTable
DataSet
Rows Collection
Tables Collection
Columns Collection
Relations Collection
database
Constraints Collection
DataGrid
ChildRelations
Collection
ParentRelations
Collection
Connection Object
• Methods
– Open()
– Close()
– BeginTransaction()
• Properties
– ConnectionString
Command Object
• Used to connect Connection Object to DataReader or a DataAdapter
object
• Methods
– ExecuteNonQuery()
• Executes command defined in CommandText property, e.g., UPDATE,
DELETE, INSERT
– ExecuteReader(CommandBehavior)
• Returns a reader attached to the resulting rowset
– ExecuteScalar()
• Properties
– Connection
– CommandText
– CommandType
Data Adapter Object
• Used to:
– extract data from data source and populate tables in a DataSet
– Push changes in DataSet back to source
• Methods
– Fill(DataSet, Table)
– FillSchema(DataSet, SchemaType)
– Update()
• Properties
–
–
–
–
SelectCommand
UpdateCommand
InsertCommand
DeleteCommand
DataSet Object
• Used for Disconnected manipulation of a source’s data.
• Methods
–
–
–
–
–
–
Clear()
ReadXML(XmlReader)
WriteXML(XmlWriter)
AcceptChanges()
HasChanges()
AbandonChanges()
• Properties
– Tables collection
• ds.Tables[tableStr].Rows[3]["Responsible Individual"] = userID;
– Relations collection
DataReader Object
• Supports one-way, forward-only, access to data
• Methods
– Read()
• Advances current row pointer
– GetBoolean, GetInt16, GetChars, GetString, GetValue
– Close()
• Properties
– this[string]
– this[int]