Tập bài giảng SQL Server (Phần 1)

Tập bài giảng SQL Server  
MỤC LỤC  
i
Tập bài giảng SQL Server  
ii  
Tập bài giảng SQL Server  
iii  
Tập bài giảng SQL Server  
CÁC DANH MỤC HÌNH  
iv  
Tập bài giảng SQL Server  
v
Tập bài giảng SQL Server  
vi  
Tập bài giảng SQL Server  
vii  
Tập bài giảng SQL Server  
viii  
Tập bài giảng SQL Server  
ix  
Tập bài giảng SQL Server  
x
Tập bài giảng SQL Server  
LỜI NÓI ĐẦU  
Microsoft SQL Server ra đời đã và đang chứng minh sức mạnh của nó trong kỷ  
nguyên công nghệ thông tin với nền kinh tế toàn cầu hóa. Chúng góp phần vào quá  
trình phát triển ứng dụng lưu trữ, xử lý, tích hợp lẫn báo cáo dữ liệu, giúp các nhà  
hoạch định chiến lược ra quyết định tốt nhất. Môn học SQL Server là môn học bắt  
buộc và SQL Server là một lựa chọn tốt cho các ứng dụng thương mại điện tử hay  
quản lý. Để giúp sinh viên các ngành thuộc lĩnh vực Công nghệ thông tin trường Đại  
học Sư phạm Kỹ thuật Nam Định học tốt hơn môn học này và vận dụng để quản lý cơ  
sở dữ liệu trong quá trình xây dựng và sử dụng các sản phẩm phần mềm, thì việc xuất  
bản “Tập bài giảng SQL Server” là rất cần thiết.  
Tập bài giảng được chia làm 8 chương:  
Chương 1. Tổng quan về SQL Server  
Chương 2. Ngôn ngữ Transaction SQL (T-SQL)  
Chương 3. Quản lý cơ sở dữ liệu  
Chương 4. Thủ tục lưu trữ và hàm người dùng  
Chương 5. Quản lý Trigger  
Chương 6. Sao lưu và phục hồi dữ liệu  
Chương 7. Quản lý bảo mật và người dùng  
Chương 8. SQL Server và lập trình ứng dụng  
Mỗi chương trong tập bài giảng đều hệ thống hóa các kiến thức cơ bản, cần  
thiết. Tương ứng với mỗi nội dung kiến thức đều có các ví dụ minh họa cụ thể, gán với  
các ứng dụng thực tiễn. Đặc biệt, cuối tập bài giảng, tác giả đưa ra một số bài tập làm  
thêm để sinh viên vận dụng củng cố lại kiến thức và kỹ năng. Trong đó, bài tập đầu  
tiên được hướng dẫn giải chi tiết. Điều đó nhằm giúp sinh viên có thể tự học và làm  
các bài tập tương tự một các dễ dàng.  
Với phần lý thuyết chi tiết, đầy đủ được trình bày một cách khoa học, logic và  
phần bài tập có hướng dẫn giải chi tiết, chúng tôi hy vọng rằng tập bài giảng này sẽ  
mang lại cho bạn đọc nhiều điều bổ ích.  
Trong quá trình biên soạn, tập bài giảng không tránh khỏi những sai sót, rất  
mong đồng nghiệp và các em sinh viên góp ý kiến để tập bài giảng ngày càng được  
hoàn thiện hơn.  
Nhóm biên soạn  
Nguyễn Văn Thẩm  
Vũ Thị Phương-Trần Thị Thuận  
xi  
 
Tập bài giảng SQL Server  
Chƣơng 1  
TỔNG QUAN VỀ SQL SERVER  
1.1. Giới thiệu về SQL Server  
Năm 1970, IBM đã khởi tạo ra ngôn ngữ máy tính cho các truy vấn trong cơ sở  
dữ liệu có tên là SEQUEL (Structured English Query Language). Năm 1970, IBM đã  
khởi tạo ra ngôn ngữ máy tính cho các truy vấn trong cơ sở dữ liệu có tên là SEQUEL  
(Structured English Query Language). Sau một thời gian, ngôn ngữ này phát triển  
không những chỉ thực hiện các truy vấn mà còn có thể xây dựng và quản trị cơ sở dữ  
liệu. Sau đó, IBM đã phổ biến ngôn ngữ này một cách công khai và trên nhiều phạm vi  
mà ngày nay bạn biết đến với tên là SQL. Năm 1985, IBM kết hợp với Microsoft để  
phát triển một số hệ điều hành và các phần mềm hệ thống khác. Hệ điều hành đầu tiên  
có tên OS/2 được ra đời dựa trên hệ điều hành MS-DOS của Microsoft.  
Ngày 16/12/1987, hệ điều hành OS/2 1.0 đã chính thức được phát hành. Nhưng  
sau đó IBM đã đưa ra phiên bản mới của OS/2 gọi là OS/2 mở rộng (Extended) được  
tích hợp thêm một phần cơ sở dữ liệu SQL của IBM (hệ quản trị cơ sở dữ liệu DB2).  
Microsoft nhận thấy rằng nếu IBM có thể đưa ra giải pháp hoàn chỉnh cho OS/2 mở  
rộng thì liệu có khách hàng nào sẽ mua sản phẩm OS/2 của Microsoft không ?  
Vào thời điểm này, Microsoft chưa hề có một sản phẩm thuộc loại quản trị cơ  
sở dữ liệu. Ngay sau đó, Microsoft đã quay sang kết hợp với công ty Sybase để cùng  
hợp tác làm ra một sản phẩm thuộc loại hệ quản trị cơ sở dữ liệu (Database  
Management System). Với sự hợp tác tốt đẹp, hai công ty này đã thành công cho ra  
đời một sản phẩm thuộc loại cơ sở dữ liệu có tên rất khó nhớ là Ashton-Tate vào năm  
1988, sản phẩm này hoạt động trên môi trường OS/2. Sau đó một thời gian, Sybase đã  
phát triển sản phẩm này trên môi trường UNIX và đổi tên riêng là DataServer mà ngày  
nay còn có tên khác là Sybase Adaptive Server.  
Microsoft quyết định không phát triển hệ điều hành OS/2 mà thay vào đó cho ra  
đời một hệ điều hành mạng máy tính có tên là Windows NT Server. Và thế là SQL  
Server chỉ hoạt động độc lập trên môi trường Windows NT Server mà thôi. Lần lượt  
các phiên bản của Microsoft SQL Server đã ra đời sau sự kiện này từ 4.2. Sau đó được  
nâng cấp thành 4.21, 6.0, 6.5, 7.0. Tuy nhiên, các phiên bản của SQL Server phổ biến  
hiện này trên thị trường là SQL Server 2000, 2005, 2008, và mới nhất là SQL  
Server 2012.  
Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relation  
Database Management System - RDBMS), cung cấp cách tổ chức dữ liệu bằng  
cách lưu chúng vào các bảng. Dữ liệu quan hệ được lưu trữ trong các bảng và các quan  
hệ đó được định nghĩa giữa các bảng với nhau. Người dùng truy cập dữ liệu trên  
1
     
Tập bài giảng SQL Server  
Server thông qua ứng dụng. Người quản trị CSDL truy cập Server trực tiếp để thực  
hiện các chức năng cấu hình, quản trị và thực hiện các thao tác bảo trì CSDL. Ngoài  
ra, SQL Server là một CSDL có khả năng mở rộng, nghĩa là chúng có thể lưu một  
lượng lớn dữ liệu và hỗ trợ tính năng cho phép nhiều người dùng truy cập dữ liệu đồng  
thời.  
1.2. Các mô hình sử dụng trong SQL Server  
Hệ thống được thiết kế sử dụng SQL Server sẽ phụ thuộc vào số lượng người  
dùng truy cập cơ sở dữ liệu đồng thời và loại công việc được thực hiện. Các mô hình  
có thể được sử dụng là: Client/Server, Destop, SOA.  
1.2.1. Mô hình Client/Server  
Hình 1.1. Mô hình Client/Server  
Yếu tố cơ bản trong mô hình khách chủ là trong hệ thống phải có các máy tính  
kết nối chung với nhau sử dụng một giao thức bất kỳ nhằm mục đích sử dụng các tài  
nguyên, dữ liệu của nhau. Hệ thống khách/chủ gồm 3 phần:  
- Hệ thống phía Server: xử lý yêu cầu và phục vụ  
- Hệ thống phía Client: nơi yêu cầu và nhận dữ liệu  
- Hệ thống giao tiếp giữa Client và Server(Network)  
Tiến trình xử lý: Trong mô hình khách chủ, ngoài hệ thống mạng máy tính phải  
có còn đòi hỏi việc tổ chức các xử lý bên dưới sao cho hiệu quả, đảm bảo các yêu cầu  
(request) từ các máy trạm phải được máy chủ phúc đáp (response) một cách nhanh  
chóng, không làm tắc nghẽn hệ thống. Khi thiết kế các ứng dụng theo mô hình khách  
chủ, người ta chia các xử lý ra làm 2 nhánh: nhánh máy trạm và nhánh máy chủ.  
- Nhánh máy trạm (client side): Các ứng dụng sẽ thực hiện các công việc đọc và  
hiển thị dữ liệu hiện có bên trong cơ sở dữ liệu, tính toán dữ liệu đang hiển thị trên các  
màn hình ứng dụng, in dữ liệu ra. Các ngôn ngữ dùng để xây dựng ứng dụng là Delphi,  
2
     
Tập bài giảng SQL Server  
Visual Basic, C++, ASP, C#, …. Các ứng dụng này còn cho phép người dùng có thể  
thực hiện các thao tác xóa, thêm, sửa dữ liệu hiện có bên trong cơ sở dữ liệu bên nhánh  
máy chủ. Các ứng dụng khi xây dựng nên tránh việc đọc toàn bộ dữ liệu của bảng  
(Table) khi truy xuất dữ liệu từ máy chủ mà chỉ nên lấy về đúng các thong tin cần thiết  
cho các xử lý. Việc này làm giảm đi lượng thông tin lưu thông trên mạng.  
- Nhánh máy chủ (server side): Các xử lý được thực hiện trực tiếp trên máy chủ.  
Để đảm bảo việc bảo mật (security), những người dùng trên mạng phải được cấp phát  
quyền truy cập thì mới có thể truy xuất được các dữ liệu dùng chung. Việc cập nhật dữ  
liệu cho phép đồng thời cùng lúc giữa những người dùng hiện hành trên mạng, ví dụ  
như máy chủ cho phép cùng lúc cả hai người dùng có thể cập nhật thông tin của khách  
hàng trong bảng khách hàng. Việc sao lưu dữ liệu (backup data) được tự động để đảm  
bảo dữ liệu không bị mất trong các trường hợp xấu xảy ra.  
1.2.2. Mô hình Desktop  
Hình 1.2. Mô hình Desktop  
SQL Server có thể được dùng như một cơ sở dữ liệu độc lập chạy trên máy tính  
để bàn (Desktop) hoặc máy tính xách tay (Laptop), gọi chúng là mô hình Destop. Các  
ứng dụng Client chạy trên cùng máy tính lưu phần mềm SQL Server và cơ sở dữ liệu  
SQL Server. Trong hệ thống nay chỉ có một máy tính. Như vậy không có kế nối mạng  
được thực hiện từ phía client tới server, client thực hiện kết nối cục bộ tới chính SQL  
Server cài đặt cục bộ.  
Mô hình Desktop hữu ích trong trường hợp chỉ có một người dùng đơn hoặc  
một số ít người dùng chia sẻ máy tính truy cập cơ sở dữ liệu ở những thời điểm khác  
nhau. Mô hình này thường dùng trong trường hợp cơ sở dữ liệu nhỏ.  
3
   
Tập bài giảng SQL Server  
1.2.3. Mô hình SOA  
Hình 1.3. Mô hình OSA  
Mô hình hướng dịch vụ (Service Oriented Architechture – gọi tắt là mô hình SOA)  
một khái niệm về kiến trúc hệ thống nhằm đem lại một cách thuận tiện nhất những chức  
năng nghiệp vụ, hoặc là những quy trình ứng dụng, tới người sử dụng dưới dạng các dịch  
vụ hoạt động trên môi trường mạng có khả năng chia sẻ và sử dụng lạị. Dịch vụ ở đây được  
hiểu là những mô-đun nghiệp vụ hoặc chức năng ứng dụng với giao diện được thiết kế theo  
quy định và được tương tác bằng cách gửi nhận thông điệp.  
1.3. Các tính năng mới của SQL Server 2008  
SQL Server 2008, phiên bản kế tiếp của Microsoft SQL Server, cung cấp một  
nền tảng dữ liệu toàn diện, bảo mật hơn, đáng tin cậy hơn, dễ quản lý hơn và dễ nâng  
cấp hơn cho các ứng dụng quan trọng của bạn, mà vẫn giúp nhà phát triển tạo ra những  
ứng dụng mới có thể lưu trữ, sử dụng mọi loại dữ liệu trên mọi thiết bị và giúp mọi  
người dùng thấu hiểu để quyết định. Các tính năng mới:  
- Được tín nhiệm: Bảo vệ thông tin quý giá, đảm bảo nghiệp vụ liên tục, tiên  
đoán được phản ứng.  
- Hiệu suất cao: Để có thể tận dụng các cơ hội mới trong thế giới kinh doanh  
phát triển nhanh ngày nay, các công ty cần có khả năng tạo và triển khai các giải pháp  
hướng dữ liệu nhanh chóng. SQL Server 2008 sẽ giảm thời gian và chi phí để quản lý  
và phát triển các ứng dụng như quản lý theo chính sách, đơn giản hoá việc phát triển  
ứng dụng, lưu trữ mọi loại thông tin..  
- Thông minh: SQL Server 2008 cung cấp một nền tảng toàn diện thông minh  
mà người dùng mong muốn chẳng hạn như tích hợp mọi dữ liệu, chuyển giao thông tin  
liên quan, mang lại khả năng thấu hiểu để hành động.  
4
     
Tập bài giảng SQL Server  
Hình 1.4. Đặc tính mới của SQL Server  
1.4. Các phiên bản của SQL Server 2008:  
Trước khi đi vào các thành phần của SQL Server 2008, ta xét các phiên bản của  
SQL Server 2008. SQL Server 2008 được sử dụng rộng rãi cho nhiều đối tượng khác  
nhau nên Microsoft cung cấp nhiều phiên bản khác nhau cho phù hợp với các yêu cầu  
về chi phí, thời gian thực hiện, của các tổ chức, cá nhân.  
Hầu hết các tổ chức đều chọn trong ba phiên bản SQL Server 2008  
Enterprise Edition, SQL Server 2008 Standard Edition, và SQL Server 2008  
Workgroup Edition. Các tổ chức chọn một trong ba phiên bản này với lý do là chỉ có  
các phiên bản Enterprise, Standard, và Workgroup được cài đặt và sử dụng trong môi  
trường server phục vụ cho hoạt động thực tế.  
- Phiên bản phí bảo hiểm (Premium Editions): Datacenter, Parallel Data,  
Warehouse  
- Phiên bản cốt lõi (Core Editions): Enterprise, Standard.  
Hình 1.5. Một số phiên bản của SQL Server  
+ SQL Server 2008 Enterprise Edition (32-bit và 64-bit): Enterprise Edition  
được sử dụng trong các doanh nghiệp, tổ chức có các mức yêu cầu xử lý giao dịch trực  
tuyến trên diện rộng (online transaction processing - OLTP), khả năng phân tích dữ  
liệu phức tạp cao, hệ thống kho dữ liệu (data warehousing systems) và web sites.  
Enterprise Edition phù hợp cho các tổ chức lớn và các yêu cầu phức tạp.  
5
     
Tập bài giảng SQL Server  
+ SQL Server 2008 Standard Edition (32-bit và 64-bit): Standard Edition là phiên bản  
phục vụ cho việc quản trị và phân tích dữ liệu phù hợp cho các doanh nghiệp, tổ chức vừa và  
nhỏ. Nó bao gồm các giải pháp cần thiết cho thương mại điện tử (e-commerce), kho dữ liệu  
(data warehousing) và dòng doanh nghiệp (line-of-business).  
- Phiên bản chuyên ngành (Specialized Editions): Workgroup, Developer,  
Express, Web, Compact.  
+ SQL Server 2008 Workgroup Edition (32-bit only): Workgroup Edition là  
giải pháp quản trị dữ liệu phù hợp cho các doanh nghiệp, tổ chức nhỏ chỉ cần một cơ  
sở dữ liệu không giới hạn kích thước hoặc số người sử dụng. Workgroup Edition là lý  
tưởng cho các mức cơ sở dữ liệu tin cậy, mạnh mẽ và dễ quản trị.  
+ SQL Server 2008 Developer Edition (32-bit và 64-bit): Developer Edition có  
tất cả các tính năng của phiên bản SQL Server 2008 Enterprise Edition, nhưng nó chỉ  
là phiên bản sử dụng cho phát triển và kiểm tra ứng dụng. Phiên bản này phù hợp cho  
các cá nhân, tổ chức xây dựng và kiểm tra ứng dụng.  
+ SQL Server 2008 Express Edition (32-bit only): SQL Server Express, dễ sử  
dụng và quản trị cơ sở dữ liệu đơn giản. Được tích hợp với Microsoft Visual Studio  
2008, SQL Server Express trở nên dẽ dàng để phát triển các ứng dụng dữ liệu giầu khả  
năng, an toàn trong lưu trữ, và nhanh chóng triển khai. SQL Server Express là phiên bản  
miễn phí, có thể dùng như một cơ sở dữ liệu máy khách hoặc cơ sở dữ liệu máy chủ đơn  
giản. SQL Server Express là lựa chọn tốt cho những người dùng chỉ cần một phiên bản  
SQL Server 2008 nhỏ gọn, dùng trên máy chủ có cấu hình thấp, những nhà phát triển  
ứng dụng không chuyên hay những người yêu thích xây dựng các ứng dụng nhỏ.  
+ SQL Server 2008 Web Edition: Nó được thiết kế cho các ứng dụng Web mà  
không bị giới hạn bởi phiên bản Express. Nó rẻ hơn phiên bản Standard. Phiên bản  
Web không giới hạn dung lượng của cơ sở dữ liệu.  
Hình 1.6. Phiên bản Web  
+ SQL Server 2008 Compact Edition: Là cơ sở dữ liệu mặc định cho Microsoft  
WebMatrix mà nó là một ngăn xếp cho công nghệ Web, dễ dàng xây dựng và phát  
triển các Websites trên nền tảng Window.  
6
 
Tập bài giảng SQL Server  
1.5. Cài đặt SQL Server  
Trước khi cài đặt SQL Server  
2008, ta cần phải đảm bảo ràng rằng  
máy của bạn sẽ đáp ứng được các yêu  
cầu đối với SQL Server 2008. Có rất  
nhiều các yêu cầu khác nhau về SQL  
Server 2008 mà máy phải đáp ứng, nó  
phụ thuộc vào phiên bản SQL Server  
ta đang cài đặt và nền tảng hệ điều  
hành đang sử dụng. Trước khi cài đặt  
SQL Server 2008, ta nên xem lại  
trang web sau  
Hình 1.7. Phiên bản Compact  
đây để xác định các cài đặt máy đúng cho môi trường của bạn:  
Lần đầu tiên cho đĩa CD SQL Server 2008 vào ổ đĩa, nó sẽ tự động khởi động quá  
trình thiết lập cho SQL Server 2008. Nếu cài đặt không bắt đầu bạn có thể tìm tập tin  
setup.exe” và chạy nó.  
Các bƣớc cài đặt:  
Bước 1: Để cài đặt, ta phải chọn mục "I accept the license Terms" để chấp nhận  
bản quyền của phiên bản cài đặt, sau đó chon nút Next.  
Hình 1.8. Xác định bản quyền cài đặt  
7
     
Tập bài giảng SQL Server  
Bước 2: Khi bắt đầu quá trình cài đặt nó sẽ kiểm tra máy tính để đảm bảo .Net  
Framework và một bản copy update của bộ cài đặt Windows đang ở trên máy tính.  
Hình 1.9. Kiểm tra trước khi cài đặt  
Bước 3: Nếu quá trình này không xảy ra trên máy tính, nó sẽ yêu cầu thiết lập cài đặt trước khi  
cài đặt SQL Sever 2008. Khi bạn đã cài đặt đầy đủ thì máy sẽ yêu cầu khởi động lại trước khi  
có thể tiến hành cài đặt SQL Server 2008. Một khi máy tính đã có tất cả các điều kiện thích hợp  
thì nó sẽ tiến hành cài đặt. Để cài đặt, ta chọn "New Installation".  
Hình 1.10. Các lựa chọn khi cài đặt  
Bước 4: Sau khi tất cả các file được cài đặt, một bản tóm tắt của quá trình thiết lập cài đặt sẽ  
được đưa ra. Nếu tất cả các điều kiện thiết lập cần thiết có đủ, ta sẽ cho phép để tiến hành  
cài đặt, nếu không ta sẽ cần phải khắc phục những vấn đề trong báo cáo và chạy lại việc cài  
đặt thiết lập. Một lần nữa quá trình này đã thiết lập một đường link để ta có thể xem lại các  
chi tiết của việc cài đặt thiết lập. Ta nên xem lại các chi tiết trước khi tiến hành, để biết  
chính xác về mỗi quy tắc cài đặt. Một khi đã sẵn sàng cài đặt ta nhấp vào nút "Next".  
8
   
Tải về để xem bản đầy đủ
pdf 192 trang baolam 10/05/2022 4260
Bạn đang xem 20 trang mẫu của tài liệu "Tập bài giảng SQL Server (Phần 1)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdftap_bai_giang_sql_server_phan_1.pdf