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

Chuong ii xay dung csdl

47 0 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

Nội dung

Quản trị Cơ sở Dữ liệu CHƯƠNG II: XÂY DỰNG CƠ SỞ DỮ LIỆU GV: Tuấn Nguyên Hoài Đức Email: tnhduc@fit.hcmus.edu.vn Nội dung trình bày •Kiểu liệu •Kiểu liệu người dùng định nghĩa •Tạo thay đổi Cơ sở Dữ liệu •Tạo thay đổi bảng liệu •Các công cụ quan sát cấu trúc liệu •Cập nhật liệu Chương II : Xây dựng CSDL Kiểu liệu •Bit : Nhận giá trị (1 byte) •Bigint : -263 đến 263-1 (8 bytes) •Int : -2,147,483,648 đến 2,147,483,647 (4 bytes) •Smallint : -32,168 đến 32,767 (2 bytes) •Tinyint : đến 255 (1 byte) •Numeric : -1038-1 đến 1038-1 (số bytes thay đổi) Chương II : Xây dựng CSDL Kiểu liệu •Money : -263 đến 263, cho phép số thập phân (8 bytes) •SmallMoney : -214,748,3648 đến 214,748,3647 (4 bytes) •Float : -1.79E+308 đến 1.79E+308 (số bytes thay đổi) •DateTime : 1753-1-1 đến 9999-12-31 (8 bytes) •Date (chỉ có từ phiên 2008) •Time (chỉ có từ phiên 2008) Chương II : Xây dựng CSDL Kiểu liệu •Small date)me : 1-1-1900 đến 31-122079 (4 bytes) •Cursor : Sẽ @m hiểu kỹ chương sau •Char : Tối đa 8000 ký tự, không hỗ trợ Unicode Chiều dài cố định •Varchar : Tối đa 8000 ký tự, không hỗ trợ Unicode Chiều dài biến đổi Chương II : Xây dựng CSDL Kiểu liệu •NChar : Tối đa 4000 ký tự, có hỗ trợ Unicode Chiều dài cố định •NVarchar : Tối đa 4000 ký tự, có hỗ trợ Unicode Chiều dài biến đổi •Text : Dài tối đa 2,147,483,647 ký tự Không hỗ trợ Unicode •NText : Dài tối đa 1,073,741,823 ký tự Có hỗ trợ Unicode Chương II : Xây dựng CSDL Kiểu liệu •Image : Dữ liệu nhị phân có độ dài biến đổi, tối đa 2,147,483,647 bytes •Table : Kiểu liệu đặc biệt Table cursor hai kiểu liệu vô hướng, hầu hết kiểu liệu cịn lại liệu vơ hướng (scalar) Chương II : Xây dựng CSDL Nội dung trình bày •Kiểu liệu •Kiểu liệu người dùng định nghĩa •Tạo thay đổi Cơ sở Dữ liệu •Tạo thay đổi bảng liệu •Các cơng cụ quan sát cấu trúc liệu •Cập nhật liệu Chương II : Xây dựng CSDL Kiểu liệu người dùng định nghĩa •Dùng thủ tục sp_addtype Tên kiểu liệu (do người dùng đặt) sp_addtype Kiểu liệu built-in SQL Server (không default) [ @typename = ] type, [ @phystype = ] system_data_type [ , [ @nulltype = ] 'null_type' ] Cho phép null hay không : ‘NULL’ (mặc [ , [ @owner = ] 'owner_name' ] định) hay ‘NOT NULL’ Tên tác giả kiểu liệu này, mặc định lấy tên user hành Chương II : Xây dựng CSDL Kiểu liệu người dùng định nghĩa •Ví dụ : • EXEC sp_addtype SoCMND, 'VARCHAR(11)', 'NOT NULL' • EXEC sp_addtype NgaySinh, dateFme, 'NULL' • EXEC sp_addtype SoDT, 'varchar(24)', 'NOT NULL' • EXEC sp_addtype SoFax, 'varchar(24)', 'NULL' •Xóa kiểu DL người dùng định nghĩa • EXEC sp_droptype NgaySinh • EXEC sp_droptype SoCMND Chương II : Xây dựng CSDL 10 Các công cụ quan sát cấu trúc DL •Thơng tin bảng, ràng buộc lưu bảng hệ thống sysobjects •Ví dụ: Đọc thơng tin bảng người dùng định nghĩa (không phải bảng hệ thống) database hành: •Select * from sys.objects where type = ‘U’ User-defined Chương II : Xây dựng CSDL 33 Các công cụ quan sát cấu trúc DL •Exec sp_databases • Cho biết danh sách CSDL có với kich thước chúng (Znh KB) •EXEC sp_tables [@table_name=]SinhVien, [@table_owner=] ws201, [@table_qualifier=] QuanLySinhVien, [@table_type=] "'TABLE'" Chương II : Xây dựng CSDL 34 Các công cụ quan sát cấu trúc DL •Exec sp_databases • Cho biết danh sách CSDL có với kich thước chúng (Znh bắng KB) Cho danh sách table hệ thống, tham số không bắt buộc dùng để lọc table Càng định nhiều tham số, kết cho •EXEC sp_tables [@table_name=]SinhVien, [@table_owner=] ws201, Tên table cần xem [@table_qualifier=] QuanLySinhVien, Tên user tạo table [@table_type=] "'TABLE'" Tên DB chứa table Loại table (giữa cặp “ “), loại : TABLE, SYSTEM TABLE, VIEW Chương II : Xây dựng CSDL 35 Các công cụ quan sát cấu trúc DL •Exec sp_help [Object_name] • Cung cấp thơng Fn đối tượng lưu (trong bảng sysobjects) hay kiểu dl người dùng định nghĩa (lưu bảng systypes) •Exec sp_column [@Table_name=]Tab_name [@Column_name=]Col_name • Cung cấp thông Fn tất (hay – có định Col_name) cột table có tên định Tab_name Chương II : Xây dựng CSDL 36 Các công cụ quan sát cấu trúc DL •Exec sp_helpconstraint Tab_name • Cho biết thông _n constraints table định với Tab_name • Với constraint loại foreignkey, default check, cung cấp biểu thức định nghĩa constraint Chương II : Xây dựng CSDL 37 Nội dung trình bày •Kiểu liệu •Kiểu liệu người dùng định nghĩa •Tạo thay đổi Cơ sở Dữ liệu •Tạo thay đổi bảng liệu •Các công cụ quan sát cấu trúc liệu •Cập nhật liệu Chương II : Xây dựng CSDL 38 Cập nhật liệu •Chú ý cập nhật (ins / del / upd) • Dữ liệu nhập phải phù hợp với kiểu liệu • Đảm bảo Znh quán liệu (tuân thủ ràng buộc toàn vẹn CSDL hành) • Định dạng giá trị kiểu chuỗi unicode Với kiểu date_me, lưu ý ynh trạng hệ thống chấp nhận ‘d-m-y’ hay ‘m-d-y’ hay… • Chú ý giá trị rỗng (null) Chương II : Xây dựng CSDL 39 Cập nhật liệu •Thêm liệu : • Thêm dịng liệu vào bảng Insert [into] Table_name [ (column_name[,…n] )] values ( value [,…n] ) • Thêm 0-n dòng liệu từ bảng khác Insert [into] Table_name Select_statement Chương II : Xây dựng CSDL 40 Cập nhật liệu • Lưu ý: Nếu thêm 0-n dịng DL câu select, ta đọc liệu từ bảng database khác Khi đó, tên bảng viết đầy đủ sau: • Database_name.Owner.Table_name • Ví dụ: • Insert into SV select * from QLSinhVien.dbo.SinhVien Chương II : Xây dựng CSDL 41 Cập nhật liệu •Sửa liệu : Udate Table_name set [ (column_name = new_value[,…n] )] [where (update condi_on)] • Ví dụ : Update HangHoa set DonGia = DonGia*110/100 Where LoaiHang = ‘Milk’ Chương II : Xây dựng CSDL 42 Cập nhật liệu •Xố liệu Delete [from] Table_name [where (delete condi_on)] • Ví dụ : Delete from SinhVien Where DTB < 3.0 Chương II : Xây dựng CSDL 43 Cập nhật liệu •Chỉ thị OUTPUT • Update HangHoa set DonGia = DonGia*110/100 output deleted.DonGia, inserted.dongia where LoaiHang = ‘Milk’ • Insert into LoaiDiaOc (maLoai,tenLoai) output inserted.tenLoai values(15, N‘biệt thự’) • Delete from HangHoa output deleted.DonGia where DonGia < 100000 Chương II : Xây dựng CSDL Chỉ có với phiên Bản SQL Server 2005 Trở lên 44 Cập nhật liệu •Chỉ thị OUTPUT • Create table HH ( MaHH varchar(10) primary key, DonGia float) • Update HangHoa set DonGia = DonGia*110/100 output deleted.MaHg, deleted.DonGia into HH where LoaiHang = ‘Milk’ • Delete from HangHoa output deleted.MaHg, deleted.DonGia into HH where DonGia < 100000 Chương II : Xây dựng CSDL Chương II : Xây dựng CSDL 45 45 Cập nhật liệu •Chỉ thị TOP • Update Top(@n) HangHoa set DonGia = DonGia*110/100 where LoaiHang = ‘Milk’ • Insert Top(@n) into LoaiDiaOc (maLoai,tenLoai) select maLoai,tenLoai from LoaiDiaOc2 • Delete Top(@n) from HangHoa where DonGia < 100000 Có thể biến, hay câu truy vấn Liên hệ thị Top n câu select Chỉ có với phiên Bản SQL Server 2005 Trở lên Chương II : Xây dựng CSDL 46 Hết chương II Chương II : Xây dựng CSDL 47

Ngày đăng: 06/04/2023, 09:30