Tải bản đầy đủ (.ppt) (16 trang)

công nghệ ado.net cới c# - xử lý các đối tượng lưu trữ thông tin với số lượng lớn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (107.66 KB, 16 trang )

11
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
22
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Xử lý các đối tượng lưu trữ thông
tin với số lượng lớn
1. Binary Large Objects và Character Large Objects là gì?
2. Quá trình đọc Large Objects từ Database
3. Quá trình ghi Large Objects xuống Database
33
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
1. Binary Large Objects và Character
Large Objects là gì?

Binary Large Objects (BLOBs)

Character Large Objects (CLOBs)

Kiểu dữ liệu Large Value
44
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Binary Large Objects
Binary Large Objects

BLOBs là các đối tượng lớn dưới dạng nhị phân, có thể
được lưu trữ trong CSDL


BLOBs có thể chứa hình ảnh, bảng tính, video clips và các
tập tin thi hành

Trong SQL Server 2000, kiểu image được sử dụng để lưu
trữ BLOB.
55
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Character Large Objects

CLOBs là các đối tượng lớn dưới dạng ký tự, có thể được
lưu trữ trong CSDL

CLOBs có thể chứa giá trị dạng văn bản như : thông tin cụ
thể trong văn bản được phân biệt bằng dấu phẩy, hoặc tài liệu
XML

SQL Server 2000 dùng kiểu text và ntext để lưu trữ CLOB.
66
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Kiểu dữ liệu Large Value

Large Value Data Types (LVDT) là kiểu có thể lưu trữ giá
trị trên 8000bytes (8k)

Là khái niệm mới trong SQL Server 2005, thay thế kiểu
LOB

Các kiểu tương ứng với SQL Server 2000:


image = varbinary(MAX)

text = varchar(MAX)

ntext = nvarchar(MAX)
77
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa kiểu
Minh họa kiểu Large Value

Xem kiểu dữ liệu của field LargePhoto trong table
Production.ProductPhoto – CSDL AdventureWorks
88
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
2. Quá trình đọc Large Objects từ
Database

Đọc tuần tự LOB Value từ Database

Đọc LOB hoặc LDT Value trong SQL Server 2005
99
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Đọc tuần tự LOB Value từ Database

Các bước thực hiện:


Tạo đối tượng Command

Tạo đối tượng DataReader bằng cách sử dụng
phương thức ExecuteReader và xác định tham số là
CommandBehavior.SequentialAccess

Sử dụng phương thức GetBytes để đọc dữ liệu BLOB
Hoặc

Phương thức GetChars để đọc dữ liệu CLOB
1010
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa đọc tuần tự LOB Value từ
Minh họa đọc tuần tự LOB Value từ
Database
Database

Sử dụng bảng Production.ProductPhoto, có field
LargePhoto

Tạo Command và lưu nội dung vào DataReader

Dùng GetBytes để đọc dữ liệu cột LargePhoto

Xuất nội dung của cột này ra màn hình
1111
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Đọc LOB hoặc LDT Value trong

SQL Server 2005

Sử dụng phương thức GetSqlBytes để đọc dữ liệu BLOB
hoặc varbinary(MAX)

Phương thức GetSqlChars để đọc dữ liệu CLOB hoặc
varchar(MAX)
1212
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa đọc LOB Value -
Minh họa đọc LOB Value -
GetSqlBytes
GetSqlBytes

Khai báo mảng byte để trữ giá trị đọc được của field
LargePhoto

Tạo Connection và Command, lưu nội dung vào
DataReader

Dùng GetSqlBytes để đọc dữ liệu cột LargePhoto

Xuất nội dung của cột này ra tập tin hình ảnh
1313
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
3. Quá trình ghi Large Objects vào
Database


Ghi Large Objects vào Database
1414
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Ghi Large Objects vào Database

Các bước thực hiện

Tạo Command với câu lệnh thích hợp (Insert/Update)

Truyền tham số có kiểu BLOB/CLOB

Tính toán giá trị cho tham số có kiểu BLOB/CLOB

Thi hành câu lệnh của Command
1515
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Minh họa ghi Large Objects vào
Minh họa ghi Large Objects vào
Database
Database

Cập nhật field LargePhoto trong bảng
Production.ProductPhoto, giá trị là một tập tin hình ảnh có sẵn

Tạo Command, có câu lệnh Update chứa 1 tham số, tham
số có kiểu là VarBinary

Mở tập tin hình ảnh, đọc giá trị vào mảng byte


Thi hành Command với giá trị của tham số là mảng byte
1616
HỌC LẬP TRÌNH WEB TỪ CƠ BẢN ĐẾN NÂNG CAO
HocLapTrinhWeb.COM
Bài thực hành

Đọc BLOB và ghi ra tập tin dạng hình ảnh

×