SQL Server là một hệ thống quản lý cơ sở dữ liệu quan hệ(RDBMS) hay còn được gọi là Relational Database Management System.RDBMS là một trong những mô hình cơ sở dữ liệu quan hệ hiện nay.
Sử dụng RDBMS System như là cách thức cơ bản để lưu trữ dữ liệu cho hầu hết các ứng dụng hiện nay.Các loại cơ sở dữ liệu được phân loại hiện nay
Paper –based
o Hệ thống lưu trữ dữ liệu trên giấy ,có hàng tấn hồ sơ dữ liệu được lưu trữ dưới dạng này ngay cả thời đại hiện nay ,nhưng tất cả vẫn được sắp xếp một cách có hệ thống,mặc dù hình thức này không giống như cơ sở dữ liệu của máy tính hiện nay.
117 trang |
Chia sẻ: maiphuongdc | Lượt xem: 1761 | Lượt tải: 5
Bạn đang xem trước 20 trang tài liệu Luận văn Thiết kế website bán hoa, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
vào vùng đêm cache.Trang ASP.NET sẽ được biên dịch ra mã thực thi trung gian IL(khác với mã nhị phân của các trình ứng dụng.exe)Vì lý do này mọi ngôn ngữ lập trình có khả năng tạo ra mã IL đều có thể được dùng để viết trang ASP.NET.Do được biên dịch và lưu trong vùng đệm nên ứng dụng xây dựng dựa trên trang ASP.NET chạy nhanh hơn các trang ASP.
Kiến trúc ASP.NET
Như mô tả ở hình trên, ta thấy tất cả các web clients truyền thông với các ứng dụng ASP.NET thông qua các IIS. IIS giải mã và xác nhận tuỳ ý các request. Nếu Allow Anonymous được đặt là true thì sẽ không có việc chứng thực. IIS cũng tìm kiếm các tài nguyên được yêu cầu và nếu client được cấp quyền thì sẽ trả về các tài nguyên tương ứng.
GIỚI THIỆU SƠ LƯỢC VỀ NGÔN NGỮ C#.NET
C# là một ngôn ngữ lập trình mới và có những đặc điểm đặc biệt sau
Nó được thiết kế một cách đặc biệt và nhằm mục đích sử dụng cho Microsoft’s .NET framwork(Một plateform với nhiều tính năng cho các vấn đề :phát triển ,cài đặt , thực thi các ứng dụng phân tán)
C# là ngôn ngữ lập trình dựa trên các phương pháp thiết kế hướng đối tượng và khi tạo ra nó đã có đuợc kinh nghiệm của tất cả các ngôn ngữ tương tự khác.
Visual C# .NET là một ngôn ngữ lập trình đơn giản, hiện đại, hướng đối tượng an toàn kiểu (type-safe) và có nguồn gốc từ các ngôn ngữ C và C++. C# là một ngôn ngữ rất thân thiện với người lập trình C và C++. C# là kết quả của việc kết hợp hiệu nǎng cao của Visual Basic và sức mạnh của C++.
Với C# ta có thể tạo ra các dạng đề án khác nhau: Các ứng dụng Console, các ứng dụng Windows, các ứng dụng ASP.NET, các thành phần .NET và Web Services. Các ứng dụng này có thể phối hợp với nhau để thực thi các ứng dụng n tầng, có phân phối.
Mặc dù C# được tạo ra để phát sinh ra code cho môi trường .NET.Nhưng nó không phải là thành phần của .NET.Có nhiều tính năng được hỗ trợ bởi .NET ,nhưng không được hỗ trợ bởi C# và ngược lại.
Sử dụng những điều khiển chuẩn của C#
Ta dùng những điều khiển để lấy thông tin mà người sử dụng nhập vào và hiển thị kết quả xuất. Những điều khiển mà ta có thể dùng trong ứng dụng bao gồm hộp văn bản, nút lệnh và hộp danh sách… Những điều khiển khác cho ta truy xuất những ứng dụng khác, xử lý dữ liệu của nó như là một phần mã trong ứng dụng của bạn.
Lập trình với những đối tượng
Những đối tượng là thành phần chủ yếu để lập trình. Các ứng dụng có thể là winform, những điều khiển hay cơ sở dữ liệu.
Đáp ứng những sự kiện chuột và bàn phím
Các ứng dụng C# có thể đáp ứng một lượng lớn sự kiện chuột và bàn phím. Ví dụ form, hộp ảnh và những điều khiển ảnh có thể phát hiện vị trí con trỏ chuột, có thể quyết định phím trái hay phím phải được nhấp, và có thể đáp ứng những tổ hợp của phím chuột vơi phím Shift, Ctrl hay Alt. Sử dụng những điều khiển phím, ta có thể lập trình những điều khiển và form để đáp ứng các hành động phím hoặc biên dịch và xử lý mã Asscii của ký tự.
Gỡ rối và quản lý lỗi
Đôi khi có những lỗi xảy ra bên trong mã của ứng dụng. Những lỗi nghiêm trọng có thể là nguyên nhân một ứng dụng không đáp ứng lệnh, thông thường người sử dụng không đáp ứng lệnh, thông thường hệ thống yêu cầu người sử dụng khởi dọng lại ứng dụng và không lưu lại những gì ta đã làm. Quá trình tìm ra và sửa chữa gọi là gỡ rối. C# cung cấp nhiều công cụ giúp chúng ta phân tích ứng dụng làm việc như thế nào. Những công cụ gỡ rối đặc biệt hữu ích trong việc tìm ra nguồn gốc lỗi, nhưng chúng ta cũng có thể dùng những công cụ này để kiểm tra chương trình hoặc tìm hiểu những ứng dụng khác nhau làm việc thế nào.
Xử lý ổ đĩa, thư mục và file
Khi lập trình trong windows, nó rất quan trọng đẻ có khả năng thêm, di chuyển tạo mới hoặc xoá những thư mục và file, lấy thông tin về xử lý ổ đĩa. C# cho phép chúng ta xử lý ổ đĩa, thư mục và file bằng 2 phương pháp
Qua những phương pháp cũ như là điều lệnh Open, Write
Qua tập hợp các công cụ như là FSO (File System)
Thiết kế cho việc thi hành và tính tương thích
C# chia sẽ hầu hết các tính năng ngon ngữ trong VS.NET, chọn các ứng dụng bao gồm Console, các ứng dụng Windows, đề án ASP.NET và các dịch vụ web.
C# được Microsoft giới thiệu để xây dựng với web và đòi hỏi quyền được cung cấp một môi trường đồng bộ với HTML (HyperText Markup Language – ngôn ngữ siêu đánh dấu văn bản), XML (Extensible Markup Language – ngôn ngữ đánh dấu mở rộng) và SOAP. Tóm lại C# là một ngôn ngữ lập trình hiện đại và là một môi trường phát triển đày tiềm năng để tạo ra các dịch vụ XML, các ứng dụng dựa trên Microsoft .NET và cho cả nền tảng Microsoft Windows cũng như tạo ra các ứng dụng Internet thế hệ kế tiếp một cách nhanh chóng và hiệu quả
Namspace
Là một khoảng không gian dành chứa các tên gốc khác nhau được dùng trong chương trình.Mục tiêu của namspace là tránh đụng độ về tên(tên lớp ,tên biến ,tên thuộc tính…) trong chương trình.Một namspace sẽ giới hạn phạm vi ý nghĩa cùa tên ,nghĩa là tên chỉ có ý nghĩa trong phạm vi của namspace
Kiến trúc .NET sử dụng các namspace lồng nhau xuất phát từ các không gian tên system.Micrsoft cũng đã cung cấp các lớp(class) các giao diện được đặt dưới không gian tên.
Cú pháp khai báo cho một namespace
Namespace some-namespace-name{
// các lớp,các giao diện ,các struct
}
Kiểu dữ liệu
C# là một ngôn ngữ được kiểm tra chặt chẽ về mặt kiểu dữ liệu(strongly language) nghĩa là phải khai báo kiểu dữ liệu của mỗi đối tượng khi tạo ra và trình biên dịch sẽ giúp bạn ngăn ngừa lỗi cú pháp,bằng các kiểm tra chỉ cho phép dữ liệu đúng mới được gán cho các đối tượng này
Kiểu dữ liệu của một đối tượng báo cho trình biên dịch biết kích thước của đối tượng này và khả năng của đối tượng
C# chia kiểu dữ liệu thành 2 loại:Kiểu dữ liệu nội tại(intrinsic type)do ngôn ngữ cung cấp sẵn và kiểu dữ liệu tự tạo bởi người dùng
Biến và hằng
Biến
Một biến là một vị trí ký ức chứa một trị mang một kiểu giữ liệu nào đó
Cú pháp C# để khai báo biến
[modifier] datatype identifier
Modifier là một trong những từ chốt :public,protected,private
Datatype là kiểu dữ liệu(int ,long,float...)
Identifier : Tên biến .Tên biến phải bắt đầu bằng dấu gạch dưới,hoặc bắt đầu bằng chữ cái không được bắt đầu bằng số
Phạm vi sử dụng biến : Tùy thuộc vào cách ta khai báo và nơi ta đặt dòng lệnh khai báo.
Hằng
Hằng là một biến nhưng trị của nó không thể thay đổi được trong suốt thời gian thi hành.
Hằng có 3 loại
Hằng trực kiện (literals) :dữ kiện trực tiếp nằm trong chỉ thị không nằm trong ký ức .Ví dụ x=3 ;
Hằng tượng trưng(Symbolic constant):là gán một cái tên cho một trị hằng.Bạn khai báo hằng tượng trưng bằng cách dùng từ khóa const
Cú pháp : Const datatype identifier=value;
Hằng liệt kê(enumeration)
4. Các toán tử trong C#
Loại toán tử
Toán tử
Primary
() [] . x++ x-- new typeof Sizeof checked unchedked
Left to right
Unary(Toán tử 1 ngôi)
+ - ! ~ ++x --x
Left to right
Multipliacte
* / %
Left to right
Additive
+ -
Left to right
Shift(Dịch chuyển bit)
>
Left to right
Relational(Toán tử quan hệ)
=
Left to right
Equality
== !=
Left to right
Logical AND
&
Left to right
Logical OR
|
Left to right
Logical XOR
^
Left to right
Condition AND
&&
Left to right
Condition OR
||
Left to right
Condition(Điều kiện)
?:
Right to left
Assigment(Phép gán)
= += -= /= *= ?= %= >= |= &= ^=
Right to left
5. Một số câu lệnh
Các câu lệnh rẽ nhánh có điều kiện
Câu lệnh if…else
Câu lệnh if….else cho rẽ nhánh dựa trên một điều kiện(condition).Điều kiện là một biểu thức được kiểm tra ở đầu câu lệnh if.Nếu thỏa điều kiện thì câu lệnh(hoặc khối lệnh)trong phần thân if sẽ đuợc thực thi.Câu lệnh if có thể có một câu lệnh else.Câu lệnh else được thi hành khi điều kiện suy ra không thỏa.
If(Condition-Expression)
Statement1
Else
Statement2
Ở điều kiện phức tạp ta có thể có những câu lệnh if lồng nhau
Câu lệnh Switch:
Dùng để thay thế cho câu lệnh if lồng nhau.Vì những câu lệnh if nằm gần nhau rất khó đọc,khó gỡ rối.Khi có sự lựa chọn phức tạp thì cấu trúx Switch rất mạnh
Switch(expression)
{
case comstant expression
Statement
Jump-Statement
Default:Statement
}
Các câu lệnh lặp
C# cung cấp một số câu lệnh lặp bao gồm for,while ,do…while và foreach.Ngoài ra C# còn cung cấp một số lệnh nhảy goto,break,continue,return..
Vòng lặp While
While(expression)
Statement;
Vòng lặp Do…While
Vòng lặp do..while gọi là post-test loop.Nghĩa là việc kiểm tra điều kiện vòng lặp chỉ được thực thi sau khi thân vòng lặp đã được thi hành
Do
{
Statement;
}While(expression)
- Vòng lặp for
Vòng lặp for đuợc gọi là vòng lặp pre-test loop.Vì điều kiện vòng lặp đuợc kiểm tra trước khi thân vòng lặp
Cú pháp
For ([initializers];[condition];[iterators]
Statement;
GIỚI THIỆU SƠ LƯỢC VỀ SQL SERVER
KHÁI NIỆM CƠ BẢN VỀ CÁC HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
SQL Server là một hệ thống quản lý cơ sở dữ liệu quan hệ(RDBMS) hay còn được gọi là Relational Database Management System.RDBMS là một trong những mô hình cơ sở dữ liệu quan hệ hiện nay.
Sử dụng RDBMS System như là cách thức cơ bản để lưu trữ dữ liệu cho hầu hết các ứng dụng hiện nay.Các loại cơ sở dữ liệu được phân loại hiện nay
Paper –based
Hệ thống lưu trữ dữ liệu trên giấy ,có hàng tấn hồ sơ dữ liệu được lưu trữ dưới dạng này ngay cả thời đại hiện nay ,nhưng tất cả vẫn được sắp xếp một cách có hệ thống,mặc dù hình thức này không giống như cơ sở dữ liệu của máy tính hiện nay.
Legacy mainframe
Thông thường là các máy VSAM(Virtual Storage Accsess Method),loại này khá thông thướng trong hệ thống IBM.Hiện nay vẫn còn tồn tại với dung lượng khá lớn và rất quan trọng,vì chúng có đặc thù kết nối đến hệ thống máy chủ với số lượng dữ liệu.
dBase
dBase hoặc một số tập tin cơ sở dữ liệu chúng bao gồm cả ISAM-Indexed Sequential Access Method .ISM thường dùng để tách một tập tin thành một bảng các dữ liệu,nhưng ISM còn lưu trữ hay truy cập đến những cơ sở dữ liệu khác
RDBMS Systems
Khi cần lưu trữ dữ liệu dưới dạng mẫu tin và ngay cả khi dữ liệu có quan hệ với nhau thì hệ thống này không những có khả năng lưu trữ khối lượng lớn dữ liệu mà còn thực hiện cả việc truy vấn dữ liệu
Ngoài ra chúng còn có khả năng ràng buộc dữ liệu.Chúng không giống hệ cơ sở dữ liệu VSAM hay ISAM những hệ này không thể kiểm soát nguồn dữ liệu vào,nếu có chăng nữa thì không thật sự như hệ thống RDBMS,chúng có thể có một vài ràng buộc nhưng không hoàn hảo.
Khi sử dụng RDBMS System,bản thân hệ này có thể kiểm sóat nguồn dữ liệu,ràng buộc theo quy định đã được định sẵn trong hệ thống.Mặt khác RDBMS còn có khả năng kiểm soát và có trách nhiệm khi nhận cũng như gởi dữ liệu
Xuất phát từ những yếu tố tối ưu như vậy khi sử dụng hệ thống RDBMS sẽ tránh được những sự cố sai sót dữ liệu,dữ liệu dư thừa và cảm thấy an toàn hơn.
Object-Oriented databases(cơ sở dữ liệu hướng đối tượng)
Hệ này còn được gọi là ODBMS.Loại cơ sở dữ liệu này đã và đang được chú ý phát triển đến trong thời gian gần đây.Với mô hình chúng ta thật sự suy nghĩ khác về phương thức lưu trữ dữ liệu và thời gian theo một thể thống nhất
Ví dụ khi lưu trữ một dữ liệu tương tự như văn bản thông thường chúng ta dùng nhiều bảng để lưu trữ,tuy nhiên trong hệ cơ sở dữ liệu này chỉ dùng một đối tượng.Hệ ODBMS thường đưa ra khái niệm đối tượng kế thừa trọn gói
Trong kỷ nguyên tin học hiện nay thì RDBMS là một mô hình cơ sở dữ liệu tối ưu.Chúng thiết kế trên một ý tưởng không những làm việc trên một bảng mà còn làm việc trên nhiều bảng khác nhau ứng với những quan hệ đã định nghĩa trước.
Chúng còn là phương thức dùng để kết nối và truy vấn dũ liệu theo những chuyển tác của hệ thống.
GIỚI THIỆU SQL SERVER 2000
SQL Server 2000 tối ưu hơn nhiều mô hình cơ sở dữ liệu quan hệ.Chúng phát triển để ứng dụng trên nhiều ấn bản như CE,Presonal,Desktop Engine,Standar ,Developer,Enterprise.
Những thành phần trong SQL Server 2000 gồm
Hệ thống
Diễn giải
Ấn bảng
SQL SERVER 2000
Đây là phần chính của hệ thống ,là trung tâm điều hành những phần thực thi khác.Với Desktop Engine bạn sẽ tìm thấy các dịch vụ trong hệ thống như SQL Server Agent(Schedule),Distributed Transaction Coordinator (DTC),Sql Server Profiler(Trouble Shooting),Enterprise Manager(EM) và một số hỗ trợ khác
Destop
Engine
Personal
Standard
Developer
Enterprise
Full-Text-Search
Đây là phần tự chọn trong lúc cài đặt,nếu bạn muốn chức năng tìm kiếm thì nên chọn hệ thống này vì đây không phải là phần mặc nhiên
Full-t=Text Search cung cấp các chức năng tìm kiếm từ(word) rất mạnh ,nếu sử dụng Internet để tìm kiếm thì đây là giải pháp tuyệt vời.Nếu bạn muốn tìm kiếm chuỗi con trong một đoạn văn lớn thì đây là công cụ thích hợp cho công việc đó
Personal
(Except Win 95)
Standard
Developer
Enterprise
English Query
English query cho phép người sử dụng không có kỹ thuật về SQL cũng có thể sử dụng SQL SERVER,bằng cách đặt câu hỏi bằng chuỗi English sau đó được dịch ra query mà có thể thực thi trên SQL SERVER.Nhưng công cụ này được cài đặt tách biệt Sql Server
Personal
Standard
Developer
Enterprise
Analysis Service
Phần này không bao gồm mặt định trong phần cài đặt,chúng là dạng sản phẩm tự chọn và là công cụ phân tích OLAP (ONLINE ANALYTICAL PROCESSING),sử dụng cho cơ sở dữ liệu lớn.Những phiên bản có OLAP đầy đủ chức năng là Enterprise và Developer nhưng trong ấn bản Standard và Personal cũng có một số chức năng của OLAP
Personal
Standard
Deverloper
Standard
Enterprise
Replication
Chức năng cho phép tái tạo một bàng sao đến SQl Server khác ,thông thường dùng chức năng này cho các hệ thống Server từ xa hay trong network ,nhằm để làm giảm các SQL Server với nhau
Destop
Engine
Personal
Standard
Developer
Enterprise
Data transformation Service
Data Transformation Service(DTS) được mở rộng trong phiên bản SQL Server 2000,bao gồm những chức năng trao đổi dữ liệu và giao tiếp dữ liệu giữa các cơ sở dữ liệu khác nhau,đây là giải pháp lập trình trên Visual Basic
Destop
Engine
Personal
Standard
Developer
Enterprise
CÁC THÀNH PHẦN CẤU THÀNH CỦA SQL SERVER 2000
RDBMS cũng như SQL Server chứa đựng nhiều đối tượng bao gồm
Database:Cơ sở dữ liệu của SQL Server
Tập tin log:Tập tin lưu trữ những chuyển tác của SQL
Tables:Bảng dữ liệu
Filegroups:Tập tin nhóm
Diagrams:Sơ đồ quan hệ
Views:Khung nhìn(hay bảng ảo)số liệu dựa trên bảng
Stored Procedure: thủ tục và hàm nội.
User defined Function: hàm do người dùng định nghĩa.
User: người sử dụng cơ sở dữ liệu.
Roles: các quy định vai trò và chức năng trong hệ thống.
Rules: những quy tắc.
Default: các giá trị mặc định.
User-defined data types: kiểu dữ liệu do người dùng tự định nghĩa.
Full-text catalogs: tập phân loại dữ liệu text.
ĐỐI TƯỢNG CƠ SỞ DỮ LIỆU CỦA SQL Server 2000:
Cơ sở dữ liệu là đối tượng có ảnh hưởng cao nhất khi bạn làm việc với SQL Server, tuy nhiên những đối tượng con của cơ sở dữ liệu mới là thành phần chính của cơ sở dữ liệu.
Cơ sở dữ liệu SQL là một CSDL đa người dùng, với mỗi Server bạn chỉ có một hệ quản trị CSDL. Nếu muốn có nhiều hệ CSDL bạn cần có nhiều Server tương ứng.
Truy cập CSDL SQL Server dựa vào những tài khoản người dùng riêng biệt và ứng với quyền truy cập nhất định. Khi cài đặt SQL Server bạn có 6 CSDL mặc định sau:
Master: bất kì hệ CSDL nào cũng có CSDL Master, chúng chứa đựng tất cả các bảng dữ liệu đặc biệt (bảng hệ thống) và kiểm soát tất cả hoạt động của hệ thống.
Model: CSDL này chứa đựng tất cả các Template dùng làm mẫu để tạo CSDL mới, vì vậy bạn không được xoá CSDL này. Khi một CSDL được tạo ra thì CSDL mới này ít nhất cũng bằng và giống như CSDL model.
Msdb: như đã nêu trên, nếu ta xoá 2 CSDL Master và Model đã nêu trên thì hệ thống bị lỗi, nhưng với CSDL Msdb thì khác, Msdb chính là quá trình SQL Agent lưu trữ tất cả các tác vụ xảy ra trong SQK Server. Nếu xoá CSDL này, bạn phải cài đặt lại khi nó cần dùng hay khi hệ thống yêu cầu.
Tempdb: CSDL tempdb là một trong những CSDL chính của SQL Server. CSDL này cho phép người dùng tạo những ứng dụng tham khảo hay thực tập khi bắt đàu với CSDL thực.
Pubs: CSDL pubs chứa hầu hết nội dung về hướng dẫn, trợ giúp và cả tham khảo về SQL Server. Bạn cũng có thể xoá CSDL này mà không cần xác nhận với SQL Server.
Northwind: giống CSDL pubs, đây là CSDL mẫu cho người dùng tham khảo, hay các lập trình viên dùng để truy cập dữ liệu SQL Server.
4.CÁC ĐỐI TƯỢNG CỦA MỘT CƠ SỞ DỮ LIỆU
Bảng – Table:
Trong CSDL, bảng là phần chính, do bảng lưu trữ các dữ liệu thực, khi cần giao tiếp với các dữ liệu khác. Bảng là đối tượng căn bản nhất. Trong bất kì loại CSDL nào, chúng được coi như một miền dữ liệu.
Khi định nghĩa bảng dữ liệu cần quan tâm đến các yếu tố:
Key: trường đó có khoá hay không.
ID: trường đó có thuộc tính Identify hay không
Column name: tên của cột.
Data types: dữ liệu tương ứng.
Size: kích thước dữ liệu.
Allow null: cho phếp giá trị rỗng hay không.
Default: giá trị mặc nhiên cho trường.
Identity: nếu bạn cần sử dụng một trường có giá trị tự động như Autonumber trong Access, not null và Identity: Yes (on).
Identity Seed: nếu cột này Identity, số bắt đầu phải là 1 hoặc 2.
Identity Increament: số nhảy cho mỗi lần tăng.
Chỉ mục – Indexs:
Chỉ tồn tại trong khung nhìn (View) hay Tables. Chỉ mục có ảnh hưởng đến tốc độ truy cập số liệu, nhất là khi cần tìm kiếm thông tin trên bảng. Chỉ mục giúp làm tăng tốc độ cho việc tìm kiếm.
Có 2 loại chỉ mục:
Clustered: ứng với loại chỉ mục này, một bảng chỉ có một chỉ mục, số liệu được sắp theo trang.
Non – Clustered: ứng với chỉ mục này, một bảng có thể có nhiều chỉ mục, số liệu được sắp theo dữ liệu mà bạn trỏ đến.
Bẫy lỗi – Triggers:
Triggers là đối tượng chỉ tồn tại trong bảng, cụ thể là một đoạn mã, và tự động thực thi khi có một hành động nào đó xảy ra đối với dữ liệu trong bảng như: Insert, Update, Delete.
Ràng buộc – Constraints:
Constraint là một đối tượng, nó là một phần nhỏ trong bảng, chúng ràng buộc dữ liệu trong bảng hoặc một bảng khác.
Diagram - Lược đồ quan hệ:
Khi xây dựng CSDL cho ứng dụng hay thương mại điện tử đều phải dựa trên việc phân tích thiết kế hệ thống, sau đó sẽ thiết lập quan hệ dữ liệu giữa các thực thể ERD.
Bằng mô hình quan hệ này, bạn đưa chúng vào xây dựng trên CSDL thực của SQL. Diagram là công cụ duy nhất giúp bạn thực hiện việc kết nối trên.
Khung nhìn – Views:
View là một khung nhìn hay bảng ảo của bảng. Cũng giống như bảng nhưng View không thể chứa dữ liệu. Ngoài ra, View còn có thể liên kết nhiều bảng lại với nhau theo quan hệ nhất định cùng với những tiêu chuẩn theo yêu cầu của người dùng.
Thủ tục nội – Stored Procedure:
Stored Procedure hay còn gọi là spocs, tiếp tục triển khai như một phần lập trình SQL trên CSDL. Stored Procedure cho phép khai báo biến, nhận tham số cũng như các phat biểu có điều kiện.
KHÁI NIỆM CƠ BẢN VỀ RÀNG BUỘC
Constraints hay còn gọi là ràng buộc, dùng để kiểm tra khi có sự thay đổi từ phía dữ liệu như thêm vào, xoá, cập nhật từ bất kì nguồn nào khác nhau.
Các loại ràng buộc:
Ràng buộc miền – Domain constraints: liên quan đến một hay nhiều cột, ứng với một cột có thể có các quy luật hay tiêu chuẩn. Khi bạn thêm hay cập nhật, ràng buộc này kiểm tra mà không cần quan tâm đến sự liên quan của các mẩu tin trong bảng.
Ràng buộc miền – Domain constraints: liên quan đến một hay nhiều cột, ứng với một cột có thể có các quuy luật hay tiêu chuẩn.
Ràng buộc thực thể - Entity constraints: kiểm tra số liệu đúng hay không.
Ràng buộc dữ liệu toàn vẹn: Kiểm tra giá trị của cột có phù hợp với cột trong bảng khác quan hệ với bảng hiện chứa cột ràng buộc hay không.
Ràng buộc khoá chính – Primary key constraints: chỉ cần khai báo Primary key ngay sau khai báo dữ liệu nếu tạo mới, với bảng đang tồn tại dùng phát biểu ALTER.
Ràng buộc khoá ngoại – Foreign key constraints: tương tự như ràng buộc khoá chính.
Ràng buộc duy nhất – Unique constraints: kiểm tra sự duy nhất trong bảng .
Ràng buộc kiểm tra – Check constraints: kiểm tra giá trị trong cột của ràng buộc có đúng hay không.
Ràng buộc mặc nhiên – Default constraints: giúp định nghĩa của bảng dữ liệu có phù hợp hay không ngay cả khi không có người dùng nhập liệu.
Ràng buộc theo quy tắc hay quy luật – Rules: tạo giới hạn cho phép giá trị trong cột có thể nhập trong một phạm vi nhất định.
KIỂU DỮ LIỆU
Bất kì cột nào trong bảng dữ liệu đều phải có kiểu dữ liệu. Một số kiểu dữ liệu trong SQL cho phép định nghĩa chiều dài của kiểu, một số khác thì không.
Bảng kiểu dữ liệu:
Kiểu dữ liệu
Loại
Bytes
Bit
Interger
1
Bigint
Int
SmallInt
TinyInt
Decimal numeric
Money
Small Monney
Float
DateTime
Small Datetime
Cursor
Unique identity
Char
Varchar
Nchar
Nvarchar
Text
Ntext
Binary
VarBinary
Image
Interger
Interger
Interger
Interger
Decimal /numeric
Money
Money
Approximate nummerics
Date/Time
Date/Time
Kiểu số đặc biệt
Số đặc biệt (Binary Character)
Character
Character
Unicode
Unicode
Character
Unicode
Binary
Binary
Binary
8
4
2
1
Varies
8
4
Varies
8
4
1
16
Varies
Varies
Varies
Varies
Varies
Varies
Varies
Varies
Varies
CÁC HÀM THÔNG DỤNG TRONG SQL SERVER
Các hàm trong phát biểu Group By:
AVG: trả về giá trị trung bình.
MIN: trả về giá trị nhỏ nhất.
MAX: trả về giá trị lớn nhất.
COUNT: trả về số lượng mẫu tin trong câu truy vấn.
SUM: trả về giá trị tổng.
Các hàm xử lý chuỗi:
ASSCI: trả về mã ASSCII của kí tự bên trái của chuỗi.
CHAR: chuyển đỗi mã ASSCI từ số nguyên sang dạng chuối.
UPPER: chuyển đổi chuỗi qua kiểu hoa.
LOWER: chuyển đổi chuỗi qua kiểu chữ thường.
LEN: trả về chiều dài của chuỗi.
LTRIM: thủ tục loại bỏ khoảng trắng bên trái của chuỗi.
RTRIM: thủ tục loại bỏ khoảng trắng bên phải của chuỗi.
LEFT: trả về chuỗi bên trái tính từ đầu đến vị trí thứ n.
RIGHT: trả về chuỗi bên phải tính từ đầu đến vị trí thứ n.
CHARINDEX: trả về vị trí chuỗi bắt đầu của chuỗi con.
Các hàm về xử lý thời gian:
GETDATE: trả về ngày tháng năm của hệ thống.
DAY: trả về ngày thứ mấy trong tháng
DATEPART: trả về giá trị chuỗi dạng ngày th.ng đầy đủ.
DATEDIFF: trả về số ngày trong khoảng thời gian giữa ngày.
MONTH: trả về tháng thứ mấy trong năm.
YEAR: trả về năm.
Các hàm về toán học:
ROUND: trả về số làm tròn.
SQUARE: trả về bình phương của một biểu thức.
SQRT: trả về căn bậc hai của một biểu thức.
Các hàm về chuyển đổi:
CAST: trả về giá trị kiểu dữ liệu theo định nghĩa
CÁC PHÁT BIỂU CƠ BẢN CỦA T-SQL
Select:
Cú pháp:
[Select ]
[From ]
[Where ]
[Group By ]
[Having ]
[Order By ]
Insert: dùng để thêm dữ liệu vào bảng
Cú pháp:
Insert vào bảng lấy giá trị cụ thể:
INSERT INTO []
Value (data_value)
Insert vào bảng lấy giá trị từ bảng khác:
INSERT INTO []
Select [Columnname list]
From
Where
Update: dùng cập nhất dữ liều vào bảng.
Cú pháp
Update
Set = ,[ = ]
Delete: dùng xoá mẫu tin trong bảng.
Cú pháp:
Delete from
Where
CÁC PHÁT BIỂU CREATE
Tạo CSDL:
Cú pháp:
CREATE DATABASE
[ON{PRIMARY](
[Name=,] FileName =
[,SIZE=]
[,MAXSIZE= ][,FILEGROUWTH= ]
)]
[LOG ON
(
[Name=,] FileName =
[,SIZE=]
[,MAXSIZE= ][,FILEGROUWTH= ]
)]
[COLLATE]
[For Load|For Attach]
Tạo Table
Cú pháp
CREATE TABLE [ database_name.[ owner ] . | owner. ] table_name
(
[[ DEFAULT ]
[[ IDENTITY (seed,increament) [NOT FOR REPLICATION ]]]]
[ROWGUIDCOL]
[NULL|NOT NULL]
[]
[]
…
)
ON{|DEFAULT}]
Tạo View
Cú pháp:
CREATE VIEW [ . ] [ . ] view_name [ ( column [ ,...n ] ) ] [ WITH [ ,...n ] ] AS select_statement [ WITH CHECK OPTION ]
Tạo STORE PROCEDURE
Cú pháp:
CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ]
Tạo Trigger
Cú pháp:
CREATE TRIGGER trigger_name ON { table | view } [ WITH ENCRYPTION ] { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] } [ WITH APPEND ] [ NOT FOR REPLICATION ] AS [ { IF UPDATE ( column ) [ { AND | OR } UPDATE ( column ) ] [ ...n ] | IF ( COLUMNS_UPDATED ( ) { bitwise_operator } updated_bitmask ) { comparison_operator } column_bitmask [ ...n ] } ] sql_statement [ ...n ] } }
THAY ĐỔI CẤU TRÚC – ALTER
Database:
ALTER DATABASE
ADD FILE
[NAME=,]FILENAME=
[,SIZE=]
[,MAXSIZE=]
[,FILEGROWTH=]
| ADD LOG FILE
[NAME=,]
FILENAME=
[,SIZE=]
[,MAXSIZE=]
[,FILEGROWTH=]
)
| REMOVE FILE[WITH DELETE]
| ADD FILEGROUP
| MODIFY NAME=
Thay đổi Table
ALTER TABLE table { [ ALTER COLUMN column_name { new_data_type [ ( precision [ , scale ] ) ] [ COLLATE ] [ NULL | NOT NULL ] | {ADD | DROP } ROWGUIDCOL } ] | ADD { [ ] | column_name AS computed_column_expression } [ ,...n ] | [ WITH CHECK | WITH NOCHECK ] ADD { } [ ,...n ] | DROP { [ CONSTRAINT ] constraint_name | COLUMN column } [ ,...n ] | { CHECK | NOCHECK } CONSTRAINT { ALL | constraint_name [ ,...n ] } | { ENABLE | DISABLE } TRIGGER { ALL | trigger_name [ ,...n ] } }
XÓA
DROP[,…n]
CHƯƠNG III:PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
I-MÔ HÌNH THỰC THỂ KẾT HỢP
1. MÔ HÌNH
2. DIỄN GIẢI MÔ HÌNH THỰC THỂ KẾT HỢP
Thực thể GIFT và GIFCATEGOTIES
Xét 2 thực thể GIFT (Món quà) và GIFCATEGORIES (Loại quà) ta
Các file đính kèm theo tài liệu này:
- BAOCAOLUANVAN.doc
- chương trình.rar