TỔNGQUANVỀCƠSỞDỮLIỆU I. Cơsởdữliệu trong thế giới hiện đại : Mô hình cơ sởdữliệuquan hệ do tiến sĩ E.F.Codd sáng chế đầu tiên vào năm 1970 để lưu trữ thông tin. Mô hình này là nền tảng của tất cả các hệ quản trị cơsởdữliệu thương mại như Access, SQL Server, Oracle, vv . Trong cơ sởdữliệuquan hệ, các mục dữliệu được lưu trữ trong các bảng (table), được cấu tạo bởi các dòng gọi là các mẫu tin (record) và các cột gọi là các trường (field). Cơ sởdữliệuquan hệ cho phép nối các bảng với nhau với mục đích truy cập các mẫu tin liên quan với nhau chứa trong các bảng khác nhau. Ví dụ, ta có một cơsởdữliệu để lưu trữ thông tin học sinh. Trong cơsởdữliệu này, mỗi mẩu tin tương ứng với một học sinh. Mỗi mẩu tin có 6 trường : mã số , họ , tên , ngày sinh, giới tính, mã nơi sinh. Đối với mọi học sinh, ta muốn biết cùng loại thông tin nhưng những chi tiết cụ thể về từng học sinh dĩ nhiên là khác nhau. Từng học sinh phải được xác định một cách riêng rẽ, do đó mỗi mẫu tin sẽ có một mã nhận dạng duy nhất được gọi là khóa (key). Khóa có thể được dùng để tham chiếu chéo (cross reference) thông tin lưu trong các bảng khác nhau trong cùng cơsởdữ liệu. Các mẩu tin trong cơsởdữliệucó dạng như sau: Mã số Họ Tên Ngày sinh Giới tính Mã nơi sinh 0058613 Bùi Danh Đạt 26/01/1980 Nam 31 0058614 Nguyễn Thị Trinh 8/10/1985 Nữ 31 I. Sơ lược về ODBC ( Open DataBase Connectivity ) : Chuẩn ODBC ra đời năm 1982 và được hỗ trợ bởi Microsoft. ODBC là một định nghĩa chuẩn của ứng dụng lập trình giao tiếp (API) được sử dụng để truy cập dữliệuquan hệ hoặc truy xuất tuần tự theo chỉ mục (indexed sequential access method (SAM)) . Mọi hệ quản trị cơsởdữliệu đều hỗ trợ giao tiếp ODBC bằng cách cung cấp cho nó một driver tương ứng. Các ứng dụng được viết bằng C, C++, Visual Basic đều có thể truy xuất được mọi cơsởdữliệu được cài đặt trong các hệ quản trị cơsởdữliệu . ODBC nhắm tới một thiên đường cho việc truy cập dữliệu . Đó là một công nghệ cho phép ứng dụng client nối với cơsởdữliệu từ xa. Lưu trú trên máy Client, ODBC tìm cách làm cho nguồn dữliệuquan hệ trở thành tổng quát đối với ứng dụng Client. Điều này có nghĩa là ứng dụng Client không cần quan tâm kiểu cơsởdữliệu nó đang nối là gì. ODBC không phù hợp với cơsởdữliệu không phải là cơ sởdữliệuquan hệ như dữliệu dạng ISAM bởi vì nó không có các giao tiếp cho phép tìm kiếm truy cập ngẫu nhiên các mẫu tin, việc thiết lập các phạm vi hoặc duyệt qua các chỉ mục . ODBC đơn giản là không được thiết kế để truy cập dữliệu ISAM. II. Các cách truy xuất cơsởdữliệu : II.1.DAO ( Data Access Objects ): Như tên gọi của nó, các đối tượng truy cập dữ liệu, DAO được sử dụng để thao tác với cơsởdữliệu thông qua lập trình. . Với DAO ta có thể thi hành các câu truy vấn, cập nhật dữliệu trong các bảng và cấu trúc cho cơsởdữ liệu. DAO cũng được các nhà lập trình sử dụng để truy cập các cơsởdữliệu trên máy cá nhân hay Client/Server và DAO hoạt động khá hiệu quả với cơsởdữliệu Access II.2.RDO (Remote Data Object) : RDO tương tự như DAO nhưng mục đích chính là để truy cập dữliệu từ xa thông qua ODBC. II.3.ADO (ActiveX Data Objects) : ADO là nền tảng của kỹ thuật truy cập cơsởdữliệu Internet. Tuy nhiên, ta có thể sử dụng ADO không chỉ để truy cập dữliệu thông qua trang Web mà còn có thể dùng nó để lấy dữliệu từ ứng dụng. ADO là giao diện dựa trên đối tượng cho công nghệ dữliệu mới nổi gọi là OLE DB. OLE DB được thiết kế để thay thế ODBC như một phương thức truy cập dữ liệu. ODBC hiện thời là tiêu chuẩn phía Client để truy cập các cơ sởdữliệuquan hệ . OLE DB đi sâu hơn một bước bằng cách làm cho tất cả các nguồn dữliệu trở thành tổng quát đối với ứng dụng Client. III. Sơ lược về SQL ( Structured Query Language ) : SQL là viết tắt của cụm từ “Structured Query Language” , tạm dịch là ngôn ngữ truy vấn có cấu trúc. SQL thuộc loại ngôn ngữ thế hệ thứ tư. Việc sử dụng nó có thể giải quyết nhanh chóng vấn đề cung cấp thông tin mà với ngôn ngữ thế hệ thứ ba phải tốn khá nhiều thời gian mã hóa. Cùng với sự phát triển mạnh mẽ của các hệ quản trị cơsởdữ liệu, SQL ngày càng được mở rộng. ♦ Ngôn ngữ : SQL không phải là ngôn ngữ thảo chương theo nghĩa cổ điển mà là một tập hợp các động từ cho phép thao tác các bảng (table). Các động từ này có thể có ở trong các ngôn ngữ khác ( C, COBOL, FORTRAN, . ) ♦ Truy vấn : Đây không phải là chức năng duy nhất. SQL còn cho phép xác định cấu trúc dữliệu , đặc trưng hóa ràng buộc toàn vẹn để đảm bảo sự tương thích giữa chúng, thiết lập các luật truy cập để đảm bảo bí mật thông tin. Những chức năng này đều thực hiện một cách đơn giản thông qua khả năng hỏi và truy xuất . Hiện tại mọi cố gắng để làm phong phú SQL đều nhằm vào hướng này. ♦ Có cấu trúc : SQL không phải là một mô hình hợp thức khi đối chiếu với lý thuyết ngôn ngữ hình thức. Trong nó còn các tồn tại , ví dụ khi dùng kỹ thuật lồng nhau , tổ hợp các chức năng, vv Ngày nay SQL đã được chuẩn hóa và trở thành chuẩn mực của việc truy xuất các cơsởdữliệuquan hệ. Những giao diện khác thực hiện qua thực đơn , cửa sổ, lưới, vv thường được cung cấp bởi SQL. SQL trở thành các điểm vào bắt buộc đối với các hệ quản trị cơsởdữliệuquan hệ . Ngoài SQL, trên thế giới còn có các ngôn ngữ khác như QUEL, QBE cũng cho phép thao tác cơsởdữliệuquan hệ. QUEL là ngôn ngữ do đại học Berkeley đề nghị cho hệ quản trị cơsởdữliệuquan hệ INGRES của họ. Hiện tại QUEL ngày càng ít được dùng. QBE (Query By Example) là ngôn ngữ “mắt lưới” xuất phát từ logic, thông thường nó được xây dựng trên SQL. QBE ngày nay vẫn còn được sử dụng bởi Access Một cách tổng quát, SQL dùng mọi tiêu chuẩn tìm kiếm được xây dựng từ logic mệnh đề bậc nhất, nó gồm 4 từ khóa cơ bản : SELECT (Tìm), INSERT (Chèn), DELETE (Xóa), UPDATE (Sửa) Các đối tượng truy cập dữliệu DAO, RDO, ADO đều hỗ trợ rất mạnh việc thực thi các câu lệnh SQL nhằm tạo sự uyển chuyển, linh động và tối ưu trong các thao tác dữ liệu. . TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU I. Cơ sở dữ liệu trong thế giới hiện đại : Mô hình cơ sở dữ liệu quan hệ do tiến sĩ E.F.Codd sáng. Client không cần quan tâm kiểu cơ sở dữ liệu nó đang nối là gì. ODBC không phù hợp với cơ sở dữ liệu không phải là cơ sở dữ liệu quan hệ như dữ liệu dạng ISAM