1. Trang chủ
  2. » Công Nghệ Thông Tin

Giới thiệu MS SQL Server

34 97 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 34
Dung lượng 353 KB

Nội dung

Chương 1: Giới thiệu SQL-Server 1.1 Chức SQL - SQL-Server phần mềm dùng để quản lý sở liệu: tạo, tổ chức, xử lý liệu Các phần mềm tương tự: Access, Excel, Visual Fox, Oracle, - Cách học, nghiên cứu SQL giống Access, - Ứng dụng: + Xây dựng CSDL cho ứng dụng Web + Xây dựng CSDL cho ứng dụng quản lý 1.2 Đặc điểm sql (so với access, Visual Fox) Ưu điểm: (text, number, yen/no, memo, ole object, ) - Thích hợp cho ứng dụng mạng - Có tính an tồn, bảo mật tốt - Quản lý khối lượng liệu lớn - Hỗ trợ nhiều kiểu liệu + Ký tự: char, Nchar, VarChar, Nvarchar + Văn bản: Text, Ntext + Số nguyên: byte, tinyInt, SmallInt, Int, BigInt + Số thực: number, float, decimal, money + logic: bit + Khác: binary, - Hỗ trợ tốt ngôn ngữ SQL Do vậy, ta dễ dàng xây dựng view, thủ tục chứa, hàm hay nói cách khác mở rộng câu lệnh SQL Nhược điểm - Khơng có đối tượng Form (để tạo giao diện ứng dụng), Report (để tạo báo cáo), module (lập trình ứng dụng CSDL) - Ta cần sử dụng cơng cụ bên ngồi để lập trình cho ứng dụng CSDL SQL: Visual Basic.Net, C#.net, ADO.Net, , Crystal Report 1.3 Cài đặt a Phần cứng: - Pentium IV - 512MB - 20GB b Phần mềm: - Windows XP SP2 (.com), tốt Windows server 2003 (.net) - SQL server 2000, sql server 2005 - Visual Studio 2005, 2008 1.4 Các chức thường dùng SQL 2000 - Enterprise Manager (EM): Quản lý khai thác liệu thông qua giao diện đồ họa Thường dùng cho người nghiệp dư - Query Analyzer: (QA)Thực truy vấn thông qua câu lệnh SQL Trong SQL 2005, hai chức kết hợp làm một: studio Management 1.5 Tài liệu tham khảo: - Nghe giảng - Xem tài liệu đề cương - ADO.net 1.6 Các đối tượng SQL server - Databases: (CSDL): quản lý CSDL SQL - Security: quản lý user - 1.7 Các đối tượng CSDL SQL server a Các đối tượng CSDL Access: + Tables: quản lý bảng liệu + Queries: quản lý câu truy vấn khai thác Dữ liệu + Forms: Quản lý CSổ giao diện + Reports: in ấn báo cáo + Macros: Khai thác, sử dụng chương trình có sẵn + Modules: Lập trình thêm chức chưa có Visual Basic + Pages: Xuất liệu dạng web b Các đối tượng Databases SQL + Tables: quản lý bảng liệu (giống hoàn toàn Acc) + View: Quản lý bảng (ảo) cho phép nhìn liệu nhiều góc độ khác (gần giống Queries) + Stored Procedure: Quản lý module cho phép khai thác CSDL ngôn ngữ SQL (gần giống Queries) + User’s Function: Quản lý hàm viết ngôn ngữ SQL + Diagrams: Quản lý tập hợp bảng, View, nhóm Users + Users: Quản lý tài khoản người dùng CSDL: UserName, Password, thời gian truy cập, dung lượng, quyền khai thác, + Roles (vai trò): quản lý nhóm quyền + Rules (quy tắc): quản lý quy tắc ràng buộc liệu 1.8 Xây dựng CSDL cho toán QL a Xác định đối tượng cần quản lý (QL ai? QL gì?) - Khách hàng - Mặt hàng - Nhân viên bán hàng - Đơn đặt hàng - Nhà cung cấp hàng - Đội vận chuyển hàng - Hồ sơ giao hàng b Xác định thông tin đối tượng Khách hàng(HT, ĐC, Phái, SĐT, Email, , MaKH) Mặt hàng(Tên hàng, Giá mua, ngày nhập, SL, mã MH) Đon hang(MaKH, MaHH, ngàyBán, SL bán, giá bán, Kmãi, , sohd) c Sử dụng CSDL quan hệ để mô tả đối tượng * Một đối tượng đươc mô tả bảng (Table) * Mỗi thông tin đối tượng cột (trường) bảng * Cần xác định trường hay tổ hợp trường làm khóa (mã ) 1.9 Giới thiệu CSDL Northwind a Chức năng: CSDL quản lý việc kinh doanh mua bán b Các bảng liệu (các đối tượng cần quản lý) Northwind + Customers (Khách hàng) + Products (Hàng hóa) + Employees (Nhân Viên) + Categories(chủng loại hàng) + Orders (hoa don, đơn đặt hàng) + Order Details (chi tiet hóa đơn) + Suppliers (nhà cung cấp hàng) Thông tin Orders - Categories + CategoryID: mã chủng loại + CategoryName: tên chủng loại - Products + ProductName: Tên hàng + ProductID: Mã hàng + UnitPrice: đơn giá + CategoryID + SupplierID: Mã nhà cung cấp - Customers + CustomerID: Mã khách hàng + CompanyName: tên công ty + ContactName: tên đối tác + Address: địa + City: Thành phố + Country: quốc gia - Employes (tương tự trên) - Orders + OrderID: mã đơn hàng + OrderDate: ngày đặt hàng + CustomerID: Mã khách hàng - Order Details + OrderID: mã đơn hàng + ProductID: mã sản phẩm + Quantity: số lượng + UnitPrice: giá bán - Suppliers (tương tự Customers) MaHD, NgayBan, Khachhang, Nhanvien Tivi 2.Tu lanh 7, 10000 555 Order Details Chương Tạo sở liệu (CSDL) Bảng Tạo CSDL VD: Tạo CSDL quản lý nhân viên (QLNV) a Cách 1: Dùng Enterprise Manager (EM) B1 Chạy E.M (Register Server) b2 Chọn đối tượng Databases B3 \ New Databases (nhiều cách làm) \ Gõ tên CSDL Kết quả: Có file cất folder C:\Program Files\Microsoft SQL Server\MSSQL\Data QLNV_data.MDF QLNV_log.LDF Ưu điểm: Thực dễ, khỏe Nhược điểm: Trực tiếp làm việc với Server Không lập trình b Cách 2: Dùng lệnh SQL (ngơn ngữ SQL) B1 Chạy Query Analyzer (QA) B2 Gõ lệnh sau cửa sổ QA Create Database VD: Create database QLNV B3 Thực hiên câu lệnh (Nhấp nút Execute gõ F5, chọn lệnh) Làm tươi cửa sổ object browser: nhấp phải \ Refresh (f5) Ưu điểm: Khắc phục nhược điểm Có khả lập trình Nhược điểm: Dành cho người chuyên lập trình Xóa CSDL C1 Dùng E.M Nhấp phải vào CSDL \ Delete C2 Dùng lệnh Drop database Tạo bảng (tables) a Tables: Đối tượng quan trọng bậc CSDL Đây đối tượng chứa liệu Mỗi bảng tương ứng với đơí tượng tốn quản lý VD đối tượng khách hàng có bảng customers Mỗi bảng có hai phần: Cấu trúc (structure, cột) Records * Cấu trúc (Header): bao gồm trường (Fields, columns) Mỗi trường tương ứng với thông tin đối tượng quản lý Tên trường nên viết ngắn gọn, rõ nghĩa, khơng nên dùng chữ Việt có dấu, nên viết sít * Các Record: Mỗi Rec đối tượng cụ thể Mỗi Rec giá trị trường Dữ liệu Rec viết chữ Việt có dấu, nên dùng Font Unicode (arial, Time new Roman, Courier, Tahoma) b Tạo bảng Nhanvien(MaNV, Hoten, Phai, ngaysinh, Hesl, Macv, Maph) Phong(MaPh, tenPh) Chucvu(MaCV, TenCV, Phucap) C1 Dùng E.M (Y chang Access) B1 Bung CSDL cần tạo bảng B2 Nhấp phải vào tables\ New Table B3 Lần lượt khai báo trường B4 Nhập liệu cho Rec C2 Dùng lệnh Create table c Sửa bảng C1 Dùng E.M C2 Dùng lệnh Hơi phức tạp, khó nhớ (Alter table ) d Hủy bảng C1 Dùng E.M C2 Dùng lệnh Drop table Các kiểu DL SQL (rất nhiều so với Access) * Kiểu số: - Số nguyên: BigInt (8B); Int (4B), SmallInt (2B), TinyInt (1B) - Số thực: Real (4B), Float (8B)2.15 - Số: Decimal, Numeric (8B) * Kiểu ký tự Char (lấp đầy ký tự trống cho Byte rỗng) Varchar(Max) (Cắt bỏ Byte rỗng) Nchar (chữ Việt) NVarchar * Kiểu văn Text (chứa văn bản, trang web) Ntext (dùng cho chữ Việt) * Kiểu ngày tháng DateTime * Các kiểu khác: - Binary: liệu dạng nhị phân (phải có phần mềm xử lý) - Image: Dữ liệu dạng nhị phân - Money (tiền tệ: thích hợp cho loại tiền USD, EUR ) Khóa (trường có thuộc tính khóa) - Khóa trường hay tổ hợp trường cho phép phân biêtj rec với rec khác bảng DL Hai Rec khác giá trị trường khóa phải khác - Thường ta chon cột mã làm trường khóa - Trong SQL, bảng liệu phải có trường khóa Tạo khóa: B1 Chọn trường (hoặc tổ hợp nhiều trường) B2 Nhấp nút Primary Key Trường có thuộc tính Identity (AutoNumber – access) - Đây trường kiểu số, liệu tự sinh, tự tăng, khác nhau, không nhập - Ta chọn trường khóa có thuộc tính Identity Cách làm: + Chọn trường (thường trường khóa) + Cho Identity = Yes; cho seed = 1; Increment = 1; Thiết lập quan hệ cho bảng * Ích lợi: Tận dụng chức kiểm tra ràng buộc liệu bảng để hạn chế sai sót nhập liệu * Yêu cầu cho bảng DL có quan hệ với nhau: - Có trường chung: kiểu, size, nên chung tên - Có trường chung khóa Cách làm: (giống y chang Access) B1 Nhấp phải diagram \ New B2 Đưa bảng lên sân khấu (add table) B3 Kéo thả trường chung bảng Kiểm tra ràng buộc liệu - Nhấp phải vào đường quan hệ \ properties - Khai báo: • Cascade Update: sửa Tchung of cha > sửa (nên) • Cascade Delete: Hủy rec Cha > Hủy rec (không nên) Chương Giới thiệu lệnh SQL Bài Giới thiệu lệnh (ngôn ngữ) SQL Lệnh SQL (Structure Query Language) Đây câu lệnh dùng để xử lý liệu SQL Server Các câu lệnh SQL trở thành chuẩn cho phần mềm CSDL Tuy nhiên phần mềm có số lệnh riêng Trong SQL Server ta dùng chức Q.A để thử nghiệm, chạy câu lệnh Phân nhóm: có hai nhóm lệnh - Nhóm thai thác: khơng làm thay đổi DL Lệnh Select - Nhóm thay đổi DL: Insert, Delete, Create, Update, Drop Bài Các lệnh Select SQL lấy DL từ bảng Chức lệnh Select: - Trích số cột liệu - Lọc liệu - Tìm kiếm liệu - Thống kê liệu Câu lệnh tổng quát Select from [Where ] [Order by , ] [Group by , ] Having Lệnh Select lấy liệu gồm tất trường a Dạng lệnh: Select * from b VD: Cho xem danh sách Customers (mặt hàng, nhân viên, nhà cung cấp, ) - Mở CSDL NorthWind: C1 Nhấp hộp chọn tên CSDL C2 Lệnh: Use - Ẩn | bảng Objects: F8 - Thay đổi Font chữ: Tools \ Option \ Font - Tạo thích (tạm tắt câu lệnh): + Mỗi dòng: -+ Nhiều dòng: /* */ Select from Lệnh Select lấy liệu gồm số trường (trích – phép chiếu) a DL: Select , , from b.VD: Cho xem (lấy ra) khách hàng gồm thông tin: CustomerID, CompanyName, Address, City Lấy Record số Rec giống a DL: Select distinct from b Vd: Cho xem Tên thành phố có mua hàng cơng ty Xem số rec a DL: Select [distinct] top from b Xem 10 mặt hàng Chú ý: - Trong MySQL ta xem số Rec khoảng - Trong SQL ta phải lập trình để xem n Records Rec thứ k - Trong ADO.net ta xem số Rec khoảng phương thức Fill lớp DataAdapter Lệnh Select có xếp thứ tự liệu a DL: Select from Order by [asc | desc], [asc | desc], b.Giải thích: - Sắp xếp theo thứ tự ưu tiên , , - Asc (hoặc để trống): tăng dần (ascending) - Desc: giảm dần (descending) c VD: - Cho xem tên mặt hàng xếp theo thứ tự Unitprice tăng dần - Lấy 11 mặt hàng có giá cao Chú ý: để lấy hết record thỏa mãn điều kiện ta thêm từ With ties sau top N Bài Lệnh Select có trường tính tốn (calculated fields) Trường tính tốn: Trường khơng có sẵn bảng Đây biểu thức (expression) bao gồm trường VD: Cho xem thêm cột Ttien bảng Order details Chú ý: Nếu tên trường, tên bảng viết có dấu cách (viết hở) dùng dấu [ ] " " để bao lại Các phép toán dùng biểu thức: a Số học: +,-,*,/, % (modulus: phép chia lấy phần dư) b Phép nối chuỗi: + Vd1: Cho xem thêm cột Ttien bảng Order details Vd2: Cho xem giá mặt hàng có tăng thêm 5% giá cũ Chú ý: - Để đặt tên khác cho trường ta viết: as Vd3 Cho xem tên khách hàng, phía trước có ghi chữ “ơng/bà” Chú ý: - Dùng dấu + để nối chuỗi - Chuỗi bao dấu nháy đơn - Thêm ký tự N để dùng Font Unicode VD4: Hãy chuẩn bị DL để xuất ContactName trang web dạng chữ màu đỏ (đậm) VD5: Hãy chuẩn bị liệu để xuất ảnh nhân viên trang web Các hàm dùng biểu thức tính tốn a Hàm (Function): Các module có sẵn (mua) ta tự viết b Hàm thực chức tính tốn phức tạp, trả giá trị dùng toán hạng biểu thức c Các hàm SQL giống Y chang hàm Excel, Access, VisualFox d Các nhóm hàm: + Hàm số: Sqrt, Abs, Round + Hàm ngày tháng: Day, Month, Year, DatePart + Hàm chuỗi: Left, Right, Substring, Ltrim, Rtrim, Len, Space, + Hàm thống kê: Count(*): đếm số Rec Sum: Tính tổng, AVG: Tính trung bình, Max, Min + Hàm đổi kiểu liệu: Cast, Convert + Hàm điều kiện: Case when end Xem phần Help VD1: Xem Thêm cột Tiền bảng [order details.] (UnitPrice*Quantity) VD2: Cho xem ngày (tháng, năm, quý) đơn đặt hàng (Orders) Day(Orderdate) VD3 Cho xem số lượng khách hàng (Đơn đặt hàng) – Count(*) Cho xem số lượng thành phố có làm ăn với NortWind VD4 Cho xem giá thấp (cao nhất) mặt hàng – Max(UnitPrice) VD5 Tính tồn doanh số bán cơng ty Sum(UnitPrice*Quantity) Bài Lệnh Select có lọc liệu Vd: Cho xem khách hành thành phố london Dạng lệnh: Select from Where order by Biểu thức lọc: biểu thức (expression) bao gồm trường, hằng, hàm dấu phép toán cho kết True False Vd: City = N’London’ VD: Cho xem đơn đặt hàng tháng Month(OrderDate) = Các phép toán dùng biểu thức lọc a Phép so sánh: >, =, , != 70 = 70) AND (UnitPrice = 70 and = 50 tên bắt chữ M Cho xem khách hàng Không thành phố London, Berlin, Madrid Cho xem tên mặt hàng chưa bán Bài Lệnh Select dùng để thống kê liệu Các hàm thống kê: Count(*), Sum, AVG, Max, Min, Vd: - Cho xem số lượng Nhân viên, Nhà cung cấp, ) - Tính giá trung bình mặt hàng 30, - Cho xem tổng tiền bán hàng Chú ý: Các thống kế dạng thường cho giá trị (scalar), lệnh Select lấy nhiều cột chứa hàm thống kê Thống kê liệu có phân nhóm a Vd: Theo dõi số lượng khách hàng City b Các lệnh thường lấy hai cột: cột phân nhóm (city) cột thống kê (sum, count ) City Count Hue Da Nang 10 c Dạng lệnh Select , From Where Group by Having Vd: - Theo dõi số lượng khách hàng City - Tính tổng tiền bán đơn hàng (orderID) - Đếm số mặt hàng đơn hàng (orderID) - Đếm số lượt khách mua hàng tháng (month(OrderDate)) - Đếm số khách mua hàng tháng (month(OrderDate)) Thống kê liệu có phân nhóm lọc liệu a Trường hợp 1: dùng lọc sau Where (bình thường) - Tham số có từ output tham số (giống var Pascal, byRef VB) - Tham số khơng có từ output tham số đầu vào Vd: Viết thủ tục tính diện tích hình chữ nhật cho sử dụng tiếp kết Phiên ALTER procedure SP_DTHCN @d real ,@r real, @kq real output as Set @kq = @d*@r - Gọi thủ tục có tham số output declare @kq real exec sp_DTHCN 5, 6, @kq output select (@kq * 7) +15 Ví dụ - Viết viết thủ tục xem khách hàng tất cụ thể - Viết thủ tục xem DL bảng Customers Suppliers tùy thuộc yêu cầu người dùng a Viết thủ tục cho xem khách hàng thành phố có tên bắt đầu ký tự (like) b Viết TT cho xem tên mặt hàng bán tháng X c Viết TT với tham số vào @chon Nếu @chon = cho xem danh sách khách hàng, @chon = xem danh sách nhân viên bán hàng d Viết TT bổ sung thêm khách có contactname vào bảng Customers_2 e Viết TT bổ sung thêm chủng loại hàng vào bảng categories_2 f Viết TT tăng giá thêm X ($) cho mặt hàng có mã ProductID bảng Products_2 g Viết TT nhập lại số lượng (quantity) mặt hàng có mã ProductID đơn hàng có mã OrderID [order details_2] h Viết TT hủy Rec khỏi bảng [order details_2] có productID OrderID Bài Function (hàm) Hàm: Là đối tượng CSDL SQL Hàm nói chung giống thủ tục (Chức năng, cách viết, hiệu sử dụng) Khác với thủ tục, hàm trả giá trị bảng DL Hàm tham gia vào biểu thức toán hạng Cách viết hàm trả giá trị a Lệnh SQL: Create Function ( Tham_số_1 Kiểu 1, Tham_số_2 Kiểu 2, ) ReturnS KiểuDL As Begin Lệnh xử lý Return End b Khác biệt so với TT - Các tham số đặt cặp ngoặc ( ) - Kiểu DL hàm - Từ khóa Begin end bao lấy lệnh hàm - Lệnh Return Chú ý: Ta sử dụng hàm toán hạng biểu thức c VD: - Viết hàm tính diện tích HCN d Gọi hàm - Hàm lệnh (Thủ tục xem lệnh) - Hàm tham gia vào biểu thức tính tốn tốn hạng - Gọi hàm dbo.(giá trị 1, giá trị 2, ) VD: Print dbo.F_DTHCN (10, 20)*500 VD: select dbo.F_DTHCN(4,2) Print dbo.F_DTHCN(4,2) d.Một vài VD: Viết hàm trả số khách hàng quốc gia (country) Viết lệnh cho xem tên thành phố có số KH nhiều Viết lệnh cho xem mặt hàng có giá mức trung bình e Bài tập: - Viết hàm trả tổng tiền bán tháng - Viết hàm trả số lượng đơn đặt hàng tháng X năm Y - Viết hàm trả số lượng khách hàng thành phố X - Viết hàm trả số mặt hàng đơn hàng có mã OrderID - Hàm trả bảng DL a Dạng lệnh: Create Function ( ) Returns Table As Return () b Ví dụ: Viết hàm trả bảng liệu chứa danh sách KH thành phố bắt đầu ký tự c Gọi hàm: Hàm trả bảng DL thực chất bảng (table, View) Cho nên ta sử dụng hàm Table, view Vd: select * from dbo.F_KH_City('Ba') Viết hàm cho xem liệu mặt hàng có đơn giá giá trị Bài Kiểu liệu Cursor (con trỏ) Kiểu liệu Cursor Kiểu liệu cho phép lưu tập record nhớ Khác với bảng, Ta duyệt qua record Điều giúp ta lấy liệu từ rec Vd: - Cho xem record thứ k bảng liệu - Cho xem n recs rec thứ k Giải quyết: - Trong MySQL có lệnh Xlý vấn đề - Dùng đối tượng ADO.Net, vấn đề giải đơn giản - Sử dụng biến Cursor SQL ADO.net Web appliaction Các lệnh liên quan đến kiểu DL cursor a Khai báo biến kiểu cursor: để lưu tập rec Declare CURSOR FOR b Mở cursor Open c Đọc liệu từ Cursor (đọc rec bieens) Fetch From [into ] • Giải thích - Next: đến rec Lúc open Next rec số - Prior: đến rec trước - first : Rec (số 1) - last: rec cuối - absolute n: đến rec thứ n kể từ rec (n biến ) - absolute - n: đến rec thứ n kể từ rec cuối - relative n: đến re thứ n kể từ rec trỏ (đang làm việc) - relative -n: nhảy ngược đến re thứ n kể tù rec trỏ • Muốn lưu DL vào biến ta phải khai báo danh sách biến d Đóng cursor CLOSE (Tam thoi) e Huỷ cursor DeAllocate VD: Lấy ContactName, City Rec thứ bảng customers lưu vào hai biến tuơng ứng Declare Cur1 Cursor For Select customerID , companyName From customers Open Cur1 Declare @CustomerId nchar(5) Declare @CompanyName nVarchar(40) Fetch absolute from Cur1 Into @CustomerId , @CompanyName Hàm @@Fetch_status dùng để kiểm tra lệnh Fetch có thành cơng khơng Nếu @@Fetch_status = thành cơng, ngược lại (=1, = -1) không thành công VD: Viết thủ tục lấy n rec bảng customers rec thứ k (chỉ lấy hai trường ContactName, city) lưu kết vào bảng tbl_tam in hình Mở rộng lệnh khai báo cursor a Cách mở rộng Declare Cursor For Select … b Các từ mở rộng • loại Cursor o Forward-only (mặc nhiên) o Scroll (duyệt hai chiều) Chú ý: dùng Absolute Relative phải có Scroll • Phạm vi Cursor o Local : địa phương, cục (mặc nhiên) o Global (ngồi thủ tục) • Kiểu Cursor o Static (mặc nhiên): Cắt đứt quan hệ o Dynamic (động): Duy trì quan hệ Customers cur_customer s Khi Dynamic bảng DL cursor có quan hệ ràng buộc Cụm từ current of cho phép làm việc với rec bảng DL ứng với rec cursor BT: Lấy từ Customers, n Recs kể từ Rec thứ k Lưu vào hai biến tương ứng ContactName City, xuất hình Customers CurKH Create Procedure SPCursor_HS @k smallint, @n SmallInt As Declare CurSorHS Cursor Scroll Global For Select Mahs, tenhs, Malop from Hoc_sinh Open CurSorHS Declare @Mahs char(3), @tenhs Nvarchar(3), @Malop Char(2) Declare @dem SmallInt Fetch Absolute @k From CurSorHS Into @Mahs , @tenhs , @Malop Set @dem = While (@@Fetch_Status = and @dem khac II Bảo mật (Sercurity) - Phải có tài khoản (account) để truy cập vào SQL Server Tài khoản bao gồm: tên đăng nhập, mật khẩu, thời điểm sử dụng, thời hạn sử dụng, phạm vi sử dụng - Phải có quyền đăng nhập vào CSDL cụ thể - hạn chế vai trò người dùng CSDL - hạn chế bảng, view, SP, Function sử dụng - hạn chế cột liệu bảng Cấp quyền truy cập vào SQL Server C1 Sử dụng thủ tục hệ thống Sp_addlogin @Loginame @Passwd @defdb VD: • Xố login Sp_droplogin @loginame Chú ý: Có thể sử dụng lệnh Create login Drop login … C2 Dùng công cụ EM B1 Chay EM B2 Chọn đối tượng security B3 Nhấp phải login\new … Cấp quyền người dùng CSDL C1 Dùng EM B1 Mở CSDL phép đăng nhập B2 Users\ nhấp phải \ … C2 Dùng thủ tục Sp_GrantDBAccess @loginame @Name_in_db VD: Use DiemHT Sp_GrantDBAccess ‘Phuoc’, ‘Phuoc2’ Xem thêm thủ tục huỷ bỏ Sp_revokeDBAccess @name_in_db Cấp quyền CSDL(Create …) C1 Dùng EM B1 Nhấp phải vào tên CSDL \ Properties B2 Permision \ … C2 Dùng lệnh … Grant |ALL to Các quyền: Create Database Create view Create Procedure Create rule Create default Back database Back log VD: Grant Create view to tuan Chú ý: sử dụng thủ tục hệ thống Deny revoke (xem thêm) Cấp quyền bảng liệu column C1 Dùng EM B1 MỞ đối tượng Users B2 Nhấp phải vào user\Permission B3 Gán quyền bảng, cột … C2 Dùng lệnh Grant On To Chú ý: quyền: select, insert, delete, Update Vd: Grant Select On categories To tuan Huỷ Deny On … To … Vd: Deny select, insert, Update, Drop, Execute On Categories To Tuan Thay đổi quyền truy cập vào máy SQL Server B1 EM\ Option\ Security B2 Chọn quyền Windows User Dung xem Vai trò đặc điểm SQL Server a Vai trò: phần mem dùng để quản trị sở liệu Tương tự Access, Visual Fox, Oracle b Đặc điểm (so với Access) Ưu điểm: - Quản lý liệu mạng - Số lượng Rec bảng lớn - Có nhiều kiểu liệu o Số nguyên: Int, BigInt, SmallInt, TinyInt o Số thực: Real, Float, money, Decimal o Ký tư: Char, VarChar, Nchar, NvarChar o Chuỗi: Text, Ntext o Boolean: bit o - Khả bảo mật tốt - Cung cấp ngơn ngữ truy vấn áp dụng cho hệ Quản trị khác Nhược điểm: - Không có đối tượng Report, Form, Module - Phải vay mượn ngơn ngữ khác để lập trình: VB.Net, C#, Các đối tượng CSDL SQL - Table: Chứa liệu - View: chứa câu lệnh để truy cập vào liệu - Store Procedure: Xử lý bảng liệu - Function: Tạo hàm người dùng - User: để quản lý account người dùng Bảo mật: SQL có chế bảo mật chặt chẽ - Quyền truy cập vào máy server (Windows Server) - Quyền trung cập vào SQL Server - Quyền truy cập vào CSDL - Quyền xử lý CSDL: Thêm, hủy, sửa, đọc - Quyền truy cập vào bảng, View, SP, Function - Quyền xử lý cột (Fields) bảng Bài Ôn tập lệnh SQL Gồm hai nhóm - Nhóm lệnh khai thác DL: Select SQL - Nhóm lệnh thay đổi DL: Insert, Delete, Update, Drop Lệnh Select SQL a Công dụng: - Trích liệu - Lọc liệu - Thống kê (đếm, tổng, trung bình, Max, min) - Tìm kiếm b Câu lệnh Select [Top ] *| from A [ inner join B ON A.Trgchung = B.Trgchung ] Where Order by [Asc|desc], Group by c Một số hàm thống kê hay dùng - Count(*) : đếm số Record - Sum(Trg số): Tính tổng giá trị trường số - AVG(Trg Số): Tính trị trung bình trường số - Max(Trg số): cho giá trị lớn - Min(Trg số): cho giá trị bé d Các phép toán liên quan đến - Phép so sánh: >, =, @don_gia_ban) end Bài ôn tập Biến Cursor Biến Cursor: Lưu tập liệu Records nhớ Các lệnh Cursor a Lệnh tạo Cursor Declare CURSOR Scroll | [Forward-only] Global | [Local] Dynamic | [Static] FOR b Mở Cursor Open c Đóng Cursor Close d Hủy Cursor DeAllocate e Lệnh Lấy DL từ Rec Cursor Fetch Next | Prior | First | Last | Absolute | From [Into ] * Hàm @@Fetch_status dùng để kiểm tra lệnh Fetch thành công không? Nếu @@Fetch_status = thành công, # 0: không thành công Hoc_sinh(Mahs, TenHs, Malop) Bangdiem(Mahs, Mamon, Diem) Mon_hoc(Mamon, Tenmon) h Create Procedure SPCursor_HS @k smallint, @n SmallInt As Declare CurSorHS Cursor Scroll Global For Select Mahs, tenhs, Malop from Hoc_sinh Open CurSorHS Declare @Mahs char(3), @tenhs Nvarchar(3), @Malop Char(2) Declare @dem SmallInt Fetch Absolute @k From CurSorHS Into @Mahs , @tenhs , @Malop Set @dem = While (@@Fetch_Status = and @dem

Ngày đăng: 17/12/2019, 18:50

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w