Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Phần mềm xây dựng Website Tuyển Dụng Lao ĐộngTrên Mạng Internet
PREMIUM
Số trang
85
Kích thước
2.6 MB
Định dạng
PDF
Lượt xem
1955

Phần mềm xây dựng Website Tuyển Dụng Lao ĐộngTrên Mạng Internet

Nội dung xem thử

Mô tả chi tiết

Phần mềm xây dựng Website Tuyển Dụng Lao ĐộngTrên Mạng Interne

Lời Cảm Ơn

Em xin chân thành cảm ơn quí thầy cô đã giúp đỡ em thực hiện đề tài

này. Đặc biệt thầy Vũ Thành Nam đã tận tình giúp đỡ, chỉ bảo em. Em

xin chân trọng cảm ơn những tình cảm quí báu mà các thầy cô cùng

các bạn đã truyền đạt cho em, những kinh nghiệm, kỹ thuật và cách

thức trong việc xây dựng đề tài này.

Tuy nhiên, do thời gian có hạn nên em không thể phát huy hết những ý

tưởng, khả năng hỗ trợ của ngôn ngữ và kỹ thuật lập trình vào đồ án.

Trong quá trình xây dựng chương trình, không thể tránh khỏi những

sai xót, mong nhận được sự đóng góp và cảm thông của quí thầy cô và

các bạn.

Em xin chân thành cảm ơn.

Nguyễn Xuân Trung-Tin quản lý-K44

1

Chương 2: GIỚI THIỆU VỀ ADO

1. Tại sao lại sử dụng ADO và ADO là gì:

Trải qua một quá trình phát triển khá dài ,công nghệ tin học đã chứng

tỏ cơ sở dữ liệu là cực kỳ quan trọng và cần thiết đối với hầu hết các ứng

dụng máy tính.KhởI thủy các chương trình đơn giản sử dụng file văn bản

(text file) làm nơi lưu dữ liệu .Những ứng dụng hiện đại như Foxpro,Access

sử dụng hẳn tập tin với cấu trúc đặc biệt làm nơi chứa dữ liệu .Những file

này được gọi là cơ sở dữ liệu .Phát triển hơn nữa ,các hệ cơ sở dữ liệu quan

hệ chuyên nghiệp hơn ra đờI phục vụ cho nhu cầu lưu trữ dữ liệu lớn và truy

xuất nhanh như SQL Server ,Oracle,DB2,…Khó khăn lớn nhất khi lập trình

truy cập cơ sở dữ liệu đó là cơ chế kết nốI ,đọc và xử lý dữ liệu từ các file

của các hệ quản trị cơ sở dữ liệu .Chúng có cấu trúc khác nhau và có cách

xử lý riêng biệt .

Điểm chung nhất mà các hệ cơ sở dữ liệu có thể tương đồng đó là khả

năng sử dụng ngôn ngữ truy vấn chuẩn SQL .Tuy nhiên ,để kết nốI và sử

dụng được câu lệnh SQL tác động vào cơ sở dữ liệu ,lập trình viên cần sử

dụng các trình điều khiển do mỗI hệ quản trị cơ sở dữ liệu cung cấp .Học

cách sử dụng các hàm của trình điều khiển là công việc không mấy dễ dàng

đốI vớI các nhà phát triển ứng dụng .Microsoft đã giảI quyết vấn đề này

bằng cách xây dựng một tập các hàm giao tiếp tổng quát (API-Application

Programming Interface)dành cho kết nốI và truy xuất dữ liệu .Các hệ dữ liệu

muốn những chương trình windows có khả năng truy xuất dữ liệu của mình

một cách thống nhất cần viết chương trình điều khiển cài đặt theo giao tiếp

của những hàm API này .Đây chính là mô hình hoạt động của cơ chế cầu

nốI ODBC (Open Database Connectivity).ODBC cho phép ứng dụng dùng

một cách truy xuất duy nhất kết nốI đến mọI hệ cơ sở dữ liệu .Nó được xem

là cầu nốI giữa ứng dụng và cơ sở dữ liệu .Sử dụng ODBC lập trình viên

không cần quan tâm đến sự khác biệt của các hệ dữ liệu .Trình điều khiển

ODBC do nhà phát triển hệ dữ liệu cung cấp sẽ chịu trách nhiệm giao tiếp

vớI bạn thông qua ngôn ngữ SQL do các hàm API của Windows quản lý.

Tuy nhiên ,ODBC tỏ ra quá chậm và không hiệu quả .Microsoft tiến

xa hơn nữa ,xây dựng cầu nốI và tập các hàm truy xuất dữ liệu tổng quát ở

dạng đốI tượng gọI là OLEDB .Đây là các đốI tượng xây dựng theo mô hình

Com (Component Object Model) hoạt động gắn liền vớI hệ điều hành ,cho

phép truy xuất trực tiếp đến mọI nguồn dữ liệu theo một giao tiếp tổng quát

nhất .Tuy nhiên xử dụng OLEDB khá phức tạp ,thường chỉ thuận tiện cho

2

lập trình viên C và C++.ADO(ActiveX Data Object)là lớp đốI tượng đơn

giản hóa hơn cho giao tiếp OLEDB cấp thấp .Thật sự ADO đơn thuần chỉ là

đối tượng Com tập chung vào xử lý dữ liệu thông qua OLEDB của

Windows.

1.1Kiến trúc ADO:

Để hiểu rõ cách sử dụng của ADO ta phảI tìm hiểu qua về kiến trúc

của ADO hình sau là mô hình kiến trúc của ADO tương tác giữa ứng

dụng và nguồn dữ liệu (data store),khái niệm nguồn dữ liệu là để chỉ mọI

loạI dữ liệu và nơi chứa thông tin có thể truy xuất được .ADO thiết kế cho

mục đích truy xuất dữ liệu tổng quát ,không chỉ dùng xử lý các hệ cơ sở dữ

liệu thuần túy ,bạn còn có thể dùng ADO để truy xuất dữ liệu email ,dữ liệu

file hay bất kỳ loạI dữ liệu nào hỗ trợ cơ chế cho phép giao tiếp thông qua

OLEDB.

Data store

(Kiến trúc ADO và OLEDB)

1.2Trình tiêu thụ(consumer) và trình cung cấp(provider):

Mô hình kiến trúc ADO ở hình trên cho thấy cách ADO làm việc nằm

giữa tầng ứng dụng và tầng dữ liệu chứa các loạI dữ liệu như E-mail ,dữ

3

Application

VC++ VB Script Java

ADO

OLE DB

E-Mail CSDL File System

liệu file ,cơ sở dữ liệu …Trong thế giớI lập trình chương trình chính là

trình tiêu thụ dữ liệu (data consumer)bởI nó cần truy xuất vào các nguồn

dữ liệu để xử lý ,còn trình cung cấp dữ liệu là tập lệnh cho phép truy xuất

vào nguồn dữ liệu (data store) theo cách đặc trưng của chúng .Provider cho

phép giao tiếp giữa nguồn dữ liệu và tầng điều khiển OLE DB .ADO chỉ

trao đổI vớI nguồn dữ liệu thông qua OLE DB mà không cần quan tâm đến

cách thức làm việc của Provider .Chính điểm này làm cho ADO mang tính

tổng quát và không phụ thuộc vào nguồn chứa dữ liệu .Để giúp OLE DB

biết được Provider nào cần phảI giao tiếp ,khi mở kết nốI ADO ta phảI chỉ

định trình cung cấp dữ liệu Provider tương ứng .Microsoft cung cấp sẵn

một số Provider cho phép truy xuất dễ dàng vào các nguồn dữ liệu đang

thông dụng như sau:

oJet OLE DB 4.0-Cơ sở dữ liệu MS Access

oDTS Packages-Dịch vụ chuyển đổI dữ liệu trong SQL Server

oODBC Driver-Provider cho phép truy xuất nguồn dữ liệu thông qua

ODBC

oSQL Server-Cơ sở dữ liệu SQL

oOracle-Cơ sở dữ liệu Oracle

oSimple Provider-Truy xuất dữ liệu dạng text

oIndex Service-Sử dụng cho dịch vụ tìm kiếm site server

oMicrosoft Directory Service-Sử dụng cho truy xuất dịch vụ thư mục

của Windows 2000

Danh sách này sẽ được mở rộng bằng các nhà cung cấp khác.

1.3Trình cung cấp(Provider) và trình điều khiển (driver):

Ta cần phảI phân biệt giữa trình cung cấp và trình điều khiển .Về ý

nghĩa thì cả hai đều có mục đích như nhau đó là cho phép các chương

trình ngoài cũng như hệ điều hành giao tiếp vớI nguồn dữ liệu thông qua

hàm xử lý trực tiếp (native).Tuy nhiên Provider hướng đến tính tổng quát

của OLE DB trong khi trình điều khiển cơ sở dữ liệu Driver lạI nhắm vào

giao tiếp chung cho thành phần kết nốI theo kiến trúc ODBC .Điều quan

trọng đó là Provider mang tính tổng quát hơn Driver .Bạn có thể dùng

ODBC Provider để truy xuất dữ liệu thông qua các trình điều khiển

Driver cho cơ chế ODBC.Hình sau sẽ minh họa rõ khái niệm này.

Do ODBC đã khá phổ biến và nhiều trình điều khiển hỗ trợ nó nên cho đến

khi nhà cung cấp đưa ra một Provider mớI tương thích vớI cơ sở dữ liệu của

họ ,chúng ta chỉ có cách sử dụng ADO kết nốI vào nguồn dữ liệu thông qua

ODBC Provider .ODBC Provider sẽ chuyển lờI gọI và truy xuất đến tầng

4

ODBC yêu cầu các trình điều khiển Driver bên dướI tiếp cận vớI cơ sở dữ

liệu mà nó quản lý .

OLE DB Layer

(Provider vàDrivers)

Rõ ràng sử dụng ODBC Driver sẽ chậm hơn trình cung cấp OLE DB

Provider cho phép truy xuất trực tiếp (do phảI qua lớp trung gian của trình

điều khiển ODBC ).Tuy nhiên ODBC Provider giúp ADO tiếp cận vớI mọI

nguồn dữ liệu thông dụng nhất trên Windows dựa vào trình điều khiển

ODBC sẵn có trong khi chờ nhà cung cấp đưa ra một phiên bản tiếp cận vớI

dữ liệu bằng OLE DB Provider khác.

2.Mô hình đối tượng ADO 2.5:

Hình sau mô tả mối quan hệ giữa các đối tượng ADO .Trước khi tìm hiểu

cách sử dụng chi tiết những đối tượng này trong trang ASP ta sẽ xem qua

tổng quan và mục đích sử dụng của chúng.

2.1. Đối tượng Connection(kết nối):

Đối tượng Connection cho phép thực hiện việc mở kết nối đến nguồn

dữ liệu cần truy xuất.Thông qua đối tượng Connection ta chỉ định trình cung

cấp OLE DB Provider sẽ dùng để tiếp cận dữ liệu .Các thông tin kết nối bổ

sung khác như: Tên đăng nhập cơ sở dữ liệu (username),mật

khẩu(password),tên máy chủ(Server)…Tất cả những thông tin này thường

5

ADO

OLE DB

Jet SQL Oracle ODBC

Jet SQL Oracle

Access SQL Oracle Access SQL Oracle

được lưu vào một chuỗi gọi là chuỗi kết nối (connection string).Một lưu ý là

để kết nốI và truy xuất vào nguồn dữ liệu ,không bắt buộc phảI tạo ra đốI

tượng Connection .Các đốI tượng như Command ,Recordset,Record…cũng

cho phép mở trực tiếp kết nốI .Tuy nhiên sử dụng đốI tượng Connection sẽ

cho phép ta tách biệt thao tác kết nốI và thao tác truy xuất dữ liệu ,hơn nữa

đốI tượng Connection còn cung cấp thêm một số chức năng chuyên dụng

khác như cho phép thực thi câu lệnh SQL tác động lên dữ liệu

(Insert,Update,Delete,gọI thủ tục nộI Store Procedure…)hoặc kiểm soát giao

tác (transaction) như Rollback(hủy mọi thay đổi lên dữ liệu ),Commit(xác

nhận thay đổi)…

2.2. Đối tượng Command (lệnh thực thi):

Mặc dù ta có thể sử dụng đốI tượng Connection để thực hiện các lệnh

SQL ,nhưng tốt nhất ta chỉ nên dùng đốI tượng Connection cho mục đích kết

nốI .ĐốI tượng Command sẽ được dùng cho mục đích thực thi lệnh tốt

hơn.Khi đốI tượng Connection thực thi lệnh ,mặc định Connection sẽ khởI

tạo và gọI đến đốI tượng Command.

ĐốI tượng Command cho phép chuyển tham số vào các lệnh thực thi

SQL .Tham số có thể chỉ định kiểu và giá trị tường minh .Các tham số có

thể nhận trị trả về sau khi thực thi…ĐốI tượng Command có thể dùng cho

hai mục đích:Thực thi các lệnh SQL không cần nhận kết quả trả về(như

Insert,Update,Delete,Các thủ tục Store Proceduce)hoặc thực thi các lệnh trả

về tập Recordset như lệnh Select.

2.3.Đối tượng Recordset(tập các mẩu tin):

Recordset có thể nói là đốI tượng được sử dụng thường xuyên nhất trong

ADO .ĐốI tượng này cung cấp cho ta kết quả trả về từ câu lệnh truy vấn một

tập các mẩu tin .Trang ASP có thể dùng vòng lặp duyệt qua các mẩu tin này

và hiển thị dữ liệu kết xuất ra trang web phía trình duyệt .Ngoài ra Recordset

còn cho phép lọc dữ liệu (filter)từ tập các mẩu tin ,truy xuất đến từng trường

cụ thể của mẩu tin thông qua đốI tượng Field hoặc danh sách các trường

trong trong mẩu tin thông qua đốI tượng Fields.

2.4.Đối tượng Record (mẩu tin):

ĐốI tượng Record cho phép ta truy cập chi tiết đến thông tin của từng

mẩu tin .Thật sự nếu chỉ dùng đến loạI dữ liệu dạng bảng của cơ sở dữ liệu

thì có thể không cần dùng đến đốI tượng Record .Tuy nhiên đốI tượng

Record giúp ta truy xuất tổng quát đến mọI nguồn dữ liệu không riêng gì dữ

liệu bảng .Hãy hình dung nếu ta muốn truy xuất nộI dung của nguồn dữ liệu

là thư mục thì sao?Thư mục có thể xem là một bảng dữ liệu vớI danh sách

file là các mẩu tin (Record ).Tuy nhiên ,mỗI mẩu tin của file trong thư mục

không đơn thuần chỉ chứa các trường như tên file ,ngày giờ tạo file,kích

6

thước file …Thông tin về mỗI mẩu tin biểu diễn cho file có thể khác nhau

về quyền truy xuất trên file ,nộI dung file.ĐốI tượng Record sẽ giúp thể hiện

sự khác biệt này của từng mẩu tin thông qua phương thức và thuộc tính .Nếu

chỉ sứ dụng và truy xuất mẩu tin thông qua Recordset theo cách thông

thường bạn sẽ không xử lý được .

2.5.Đối tượng Stream(Luồng):

ĐốI tượng Stream cho phép biểu diễn nộI dung của một nút (node)dữ liệu

.Cụ thể thông qua Stream ,bạn có thể xem và truy xuất được các loạI dữ liệu

nhị phân không thuộc dạng bảng như nộI dung file,e-mail,trang web,dữ liệu

XML…ĐốI tượng Stream thường được kết hợp xử lý thông qua đốI tượng

Record và Recordset

2.6.Đối tượng Collections(Tập hợp):

Thư viện ADO cung cấp rất nhiều loạI tập hợp .MỗI tập hợp có thể nắm

giữ một hoặc nhiều đốI tượng khác thậm chí có thể là một tập hợp rỗng

không chứa phần tử nào cả.Bạn có thể dùng vòng lặp để duyệt qua các phần

tử trong tập hợp theo cấu trúc sau:

ĐốI với VBScript:

For each Object In Collection

‘Sử lý nộI dung của phần tử đốI tượng Object trong tập hợp

Next

Ví dụ để duyệt qua tập hợp Fields chứa các trường trong recordset mang

tên rs

For each objField In rs.Fields

Reponse.write objField.Name &”<BR>”

Next

Thư viện ADO cung cấp các tập hợp thường xuyên sử dụng là :

oĐối tượng tập hợp Fields:Chứa danh sách các trường trong bảng dữ

liệu

oĐốI tượng tập hợp Parameters:Chứa danh sách các tham số sử dụng

trong câu lệnh SQL

oĐối tượng tập hợp Errors:Chứa danh sách các lỗi ,ta có thể duyệt qua

đối tượng tập hợp Errors để biết các lỗi mà các đối tượng ADO gặp

phải trong quá trình triệu gọi hoặc thực thi lệnh .

oĐối tượng tập hợp Properties:Chứa danh sách các thuộc tính có thể

dùng chung giữa các đối tượng .

2.7.Các hằng ADO:

7

Khi sử dụng ADO ,ta sẽ cần dùng đến rất nhiều loại hằng số để thiết lập

cho các tham số tùy chọn dành cho phương thức của đối tượng .Ví dụ cursor

type,Lock type.ASP không tự động định nghĩa sẵn các hằng này.Ta dùng chỉ

thị <!—INCLUDE FILE =”adovbs.inc”-- >để khai báo đưa vào danh sách

các hằng ADO cần sử dụng .Một cách khác để khai báo hằng là tham chiếu

trực tiếp đến thư viện định nghĩa kiểu (type library)bằng thẻ METADATA

như sau:

<!—METADATA TYPE=”typelib” FILE=”C:\Program Files\Common

Files\System\ado\msado15.dll”-- >

3.Kết nối với nguồn dữ liệu:

3.1.Chuỗi kết nối :

Chuỗi kết nối như đã đề cập ở phần trên ,nó cung cấp thông tin cho

đối tượng Connection biết đặc điểm của cơ sở hay nguồn dữ liệu mà ADO

cần truy xuất ,dưới đây là một số kết nối đến các loại cơ sở dữ liệu thông

dụng:

Cơ sở dữ liệu MS Access

Connstr=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=””

Set conn=Server.CreateObject(“ADODB.Connection”)

Conn.open connStr

Cơ sở dữ liệu MS SQL Server

Connstr=”Provider=SQLOLEDB;Data Source=servername; Initial

catalog=database_name;user ID=user_name;PWD=user_password”

Set conn=Server.CreateObject(“ADODB.Connection”)

Conn.open Connstr

Cơ sở dữ liệu Oracle:

ADODB hỗ trợ truy xuất cơ sở dữ liệu nổi tiếng Oracle thông qua

chuỗi kết nối OLEDB như sau :

connstr=”Provider=MSDAORA.1;Data Source=orcl;User

ID=scott;PWD=;Persist Security Info=False”

Set conn=Server.CreateObject(“ADODB.Connection”)

Conn.open connstr

Cơ sở dữ liệu MS Access thông qua trình điều khiển ODBC

ConnStr=”Driver=Microsoft Access Driver(*.mdb);DBQ=database

path”

Set Conn=Server.CreateObject(“ADODB.Connection”)

Conn.open ConnStr

8

Tải ngay đi em, còn do dự, trời tối mất!