LINK DOWNLOAD MIỄN PHÍ TÀI LIỆU "Tài liệu Lập trình ADO tren Visual 6.0 pdf": http://123doc.vn/document/1050329-tai-lieu-lap-trinh-ado-tren-visual-6-0-pdf.htm
system database:
cn.Open "driver={Microsoft Access Driver (*.mdb)};"
& _
"dbq=c:\foldername\databasename.mdb;" & _
"systemdb=c:\foldername\databasename.mdw;", _
"userid", "userpassword"
Kết nối vào một Access database exclusively:
cn.Open "driver={Microsoft Access Driver (*.mdb)};"
& _
"dbq=c:\foldername\databasename.mdb;" & _
"exclusive=1;uid=admin;pwd="
Kết nối vào một SQL server dùng standard sequrity:
cn.Open "driver={SQL Server};" & _
"server=servername;database=databasename;" & _
"uid=userid;pwd=userpassword"
Kết nối vào SQL server dùng trusted connection security:
cn.Open "driver={SQL Server};" & _
"server=servername;database=databasename;" & _
"uid=;pwd="
Kết nối vào một SQL server từ name và password:
cn.Properties("Prompt") = adPromptAlways
cn.Open "driver={SQL Server};" & _
"server=servername;database=databasename"
Connecting to a Sybase database using the Sybase System
12 driver:
cn.Open "driver={SYBASE ASE ODBC Driver};" & _
"srvr=servername;" & _
"uid=userid;pwd=userpassword"
Connecting to a Sybase database using the Sybase System
11 driver:
cn.Open "driver={SYBASE SYSTEM 11};" & _
"srvr=servername;" & _
"uid=userid;pwd=userpassword"
Connecting to an Oracle database using the current
Microsoft ODBC driver:
cn.Open "driver={Microsoft ODBC for Oracle};" & _
"server=servername.world;" & _
"uid=userid;pwd=userpassword"
Connecting to an Oracle database using the Oracle ODBC
driver:
cn.Open "driver={Oracle ODBC Driver};" & _
"dbq=databasename;" & _
"uid=userid;pwd=userpassword"
Bạn phải định nghĩa dbq databasename trong file
tnsnames.ora.
Kết nối vào một Excel workbook:
cn.Open "driver={Microsoft Excel Driver (*.xls)};"
& _
"driverid=790;dbq=c:\foldername\workbookname.xls;"
& _
"defaultdir=c:\foldername"
Kết nối vào một dBase database:
cn.Open "driver={Microsoft dBase Driver (*.dbf)};"
& _
"driverid=277;dbq=c:\foldername"
' specify the filename when you open the
recordset
rs.Open "select * from tablename.dbf", cn, , ,
adCmdText
Bạn phải cần Borland Database Engine (BDE) để cập nhật
file dBase.
Kết nối vào một Paradox database:
cn.Open "driver={Microsoft Paradox Driver
(*.db )};" & _
"driverid=538;fil=Paradox 5.X;" & _
"defaultdir=c:\foldername\;" & _
"dbq=c:\foldername\;collatingsequence=ASCII"
The extra space character after *.db in the driver name is
necessary.
Bạn phải cần Borland Database Engine (BDE) để cập nhật
file ISAM.
Kết nối vào một file text:
cn.Open "driver={Microsoft Text Driver (*.txt;
*.csv)};" & _
"dbq=c:\foldername\;" & _
"extensions=asc,csv,tab,txt,log,*."
rs.Open "select * from filename.csv", cn,
adOpenStatic, adLockReadOnly, adCmdText
Định dạng của file text được định nghĩa bởi file schema. File
thông tin schema luôn luôn được đặt tên là Schema.ini và
luôn luôn được đặt trong cùng thư mục với file nguồn. File
này cung cấp thông tin về định dạng tổng quát của file, tên
cột và kiểu dữ liệu. File Schema.ini luôn luôn được yêu cầu
để lấy dữ liệu từ fixed-width data.
Một số ví dụ về file Schema.ini
Ví dụ file Schema.ini cho file filename.txt chứa tên các cột ở
dùng đầu tiên:
[filename.txt]
Format=TabDelimited
ColNameHeader=True
MaxScanRows=0
CharacterSet=ANSI
Ví dụ file Schema.ini cho filefilename.txt chứa dấu ";" phân
cách giữa các trường dữ liệu, và hàng đầu tiên chứa các tên
của các cột dữ liệu:
[filename.txt]
Format=Delimited(;)
ColNameHeader=True
MaxScanRows=0
CharacterSet=ANSI
Ví dụ về file Schema.ini cho filefilename.txt chứa fixed width
data không có tên các cột dữ liệu ở dòng đầu:
[filename.txt]
Format=FixedLength
ColNameHeader=False
Col1=FieldName1 Char Width 30
Col2=FieldName2 Date Width 15
Col3=FieldName3 Integer Width 15
Col4=FieldName4 Float Width 20
CharacterSet=ANSI
_Thuộc tính CursorLocation: đây là thuộc tính quy định con
trỏ liên kết dữ liệu sẽ được tạo tại máy chủ hay máy con.
Các hằng số dùng cho thuộc tính này gồm:
• adUseServer: con trỏ liên kết dữ liệu được tạo ra tại máy
chủ. Mọi sửa đổi của các người dùng khác trên mạng được
thể hiện tức thời trên dữ liệu của máy trạm.
• adUseClient: con trỏ liên kết dữ liệu được tạo tại máy
trạm. Mọi sửa đổi của người dùng khác trên mạng không
được thể hiện trên dữ liệu của máy trạm cho đến khi được
truy xuất lại. Với kiểu con trỏ này, dữ liệu trên máy trạm có
những thuận lợi mà kiểu adUseServer không có.
Thuộc tính này chung cho Connection lẫn Recordset, nghĩa là
tất cả các Recordset tạo ra từ một Connection sẽ có cùng
kiểu con trỏ nếu không được qui định tường minh.
2.Tạo đối tượng Connection dùng lệnh
Tại thời điểm
ứng dụng đang thực thi (runtime), chúng ta có thể tạo
Connection với các bước sau:
2.1 Bước1: Khai báo tham chiếu đến thư viện ADO
Để sử dụng kỹ thuật ADO, ta phải khai báo tham chiếu đến
thư viện ADO trong ứng dụng như sau:
• Chọn Project | References
• Chọn Microsoft ActiveX Data Objects X.X Library, với X.X là
phiên bản có trên máy trạm tùy theo hệ thống, sau đó chọn
OK.
2.2 Bước 2: Khai báo và khởi tạo một đối tượng Connection
Trước tiên, ta khai báo một biến đối tượng kiểu Connection
của ADO như sau:
Dim cnn as New ADODB.Connection
Trong trường hợp ứng dụng có tham chiếu đến nhiều thư
viện lập trình ADO, RDO (Remote Data Object), nếu chúng
ta khai báo một biến Connection nhưng không chỉ cụ thể
Connection thuộc thư viện nào thì đối tượng Connection
được tạo ra sẽ thuộc thư viện tham chiếu ưu tiên. Thư viện
tham chiếu ưu tiên là thư viện được liên kết trước các thư
viện khác trong danh sách của bảng References.
2.3 Bước 3: Khai báo thuộc tính liên kết dữ liệu
Gán thuộc tính ConnectionString cho đối tượng Connection
cnn theo cú pháp sau:
cnn.ConnectionString ="Provider= "
cnn.CursorLocation = adUseClient hay adUseServer
Các chuổi ConnectionString xin tham khảo phần trên đã giới
thiệu.
2.4 Bước 4: Kết nối
Dùng phương thức Open của Connection để thực hiện kết
nối. Cú pháp sử dụng có dạng:
cnn.Open
Ví dụ: để thực hiện kết nối với cơ sở dữ liệu Biblio.mdb, ta
viết đọan mã như sau:
DBName= ActiveWorkbook.Path & "\Biblio.mdb"
cnn.ConnectionString="Provider=" &
"Microsoft.Jet.OLEDB.4.0; Data Source=" & DBname
cnn.CursorLocation=adUseClient
cnn.Open
3. Thuộc tính State
Trong môi trường nhiều người dùng, để tránh có quá nhiều
Connection kết nối vào cơ sở dữ liệu, đôi lúc sau khi tạo liên
kết và lấy dữ liệu về máy đơn xong chương trình sẽ đóng kết
nối đi. Khi cần thiết sẽ liên kết lại. Trong trường hợp này,
chúng ta sẽ dựa vào thuộc tính State của Connection để
kiểm tra trạng thái liên kết của Connection đang đóng hay
đang mở.
Sau khi kết nối, chúng ta dùng thuộc tính State để kiểm tra
kết nối có thành công hay không.
H ng |Tr |Ý ngh a adStateClosed |0 |Không k t n i ằ ị ĩ ế ố
adStateOpen |1 | ang k t n iĐ ế ố Ví dụ như đọan mã sau:
If cnn.State=1 Then
Msgbox "Kết nối thành công."
Else
Msgbox "Kết nối không thành công."
End If
4. Phương thức Excecute
Sau khi kết nối thành công, ta có thể dùng phương thức
Execute của connection để thực hiện truy vấn hay cập nhật
dữ liệu. Cú pháp như sau:
Set <biến Recordset> = <biến Connection>.Execute
(<Nội dung truy vấn>[<biến chứa số mẫu tin>][,<hằng
kiểu nội dung truy vấn>])
cho truy xuất Hoặc
<biến Connection>.Execute (<Nội dung truy
vấn>[,<biến chứa số mẫu tin>][,<hằng kiểu nội dung
truy vấn>])
cho cập nhật
Nếu <nội dung truy vấn> kiểu chuỗi là: Thì <hằng kiểu nội
dung truy vấn> kiểu số Có trị là Tên b ng adCmdTable 2 ả
Câu truy v n Select adCmdText 1 Tên Query trên ấ
Access ho c Stored Procedure trong SQL Server ặ
adCmdStoreProc 4
Chú ý:
• Trong trường hợp rút trích đối số <biến chứa số mẫu tin>
không cần chỉ ra.
• Đối số <hằng kiểu nội dung truy vấn> có thể không chỉ ra,
nhưng nếu chỉ ra thì phải phù hợp với <nội dung truy vấn>,
nếu không sẽ gây lỗi.
• Recordset được tạo ra theo cách này có thuộc tính chỉ đọc
(ReadOnly)
Ví dụ:
<BR><br>
Dim rstdmnv as New ADOB.Recordset
Set rstdmnv=cnn.Execute ("dmnv", , adCmdTable)
5. Đóng liên kết dữ liệu
Một liên kết dữ liệu (Connection) sẽ tự động được đóng khi
đóng ứng dụng. Tuy nhiên trong chương trình khi cần đóng
liên kết dữ liệu lại, chúng ta có thể dùng phương thức Close
theo cú pháp sau:
cnn.Close
COMMAND
Sau khi thực hiện kết nối với nguồn dữ liệu qua Connection,
chúng ta có thể dùng Command để thực hiện một lệnh truy
vấn SQL trên nguồn dữ liệu đó hay gọi thực hiện một thủ tục
nội trong cơ sở dữ liệu này. Command đặc biệt hữu dụng khi
phải thực hiện nhiều lần cùng một lệnh hay các truy vấn có
tham số. Khởi tạo và làm việc với Command
Các thuộc tính chính
• CommandText: đây là thuộc tính quan trọng nhất của
Command. Nội dung của thuộc tính này là chuỗi lệnh SQL,
tên truy vấn, tên bảng hoặc tên thủ tục nội muốn thực hiện
trên nguồn dữ liệu.
• CommandType: là thuộc tính giúp ADO nhanh chóng xác
định kiểu lệnh có trong CommandText. Nếu trị của
CommandType dùng không đúng kiểu của CommandText thì
chương trình sẽ báo lỗi. Chính vì vậy, chúng ta cần phải biết
Không có nhận xét nào:
Đăng nhận xét