Bài giảng Hệ quản trị cơ sở dữ liệu: Phần 2 - Trường ĐH Công nghiệp Quảng Ninh
Số trang: 89
Loại file: pdf
Dung lượng: 433.05 KB
Lượt xem: 12
Lượt tải: 0
Xem trước 9 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Phần 2 của bài giảng "Hệ quản trị cơ sở dữ liệu" tiếp tục cung cấp cho học viên những nội dung về: câu lệnh T-SQL; thao tác với dữ liệu (data manipulation language - DML); truy vấn dữ liệu; toán tử union; truy vấn tổng hợp; truy vấn lồng nhau;... Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ quản trị cơ sở dữ liệu: Phần 2 - Trường ĐH Công nghiệp Quảng Ninh Phần 2. CÂU LỆNH T-SQL Trong phần này sẽ giới thiệu cấu trúc, kỹ thuật soạn kịch bản lệnh T-SQL, đối với các hệ quản trị CSDL Foxfro, Access thì câu lệnh thực hiện truy vấn, khai thác CSDL là ngôn ngữ truy vấn SQL (Structure Query Language), các lệnh được thực hiện theo từng câu lệnh mà không thực hiện theo kịch bản hoặc theo tập hợp nhiều câu lệnh với nhau. Đối với hệ quản trị CSDL Oracle thì ngôn ngữ truy vấn dữ liệu là SQL/PL (SQL Plus), còn SQL Server ngôn ngữ có tên Transact-SQL viết tắt là T-SQL. ĐỊNH NGHĨA DỮ LIỆU (DATA DEFINITION LAGUAGE - DDL). Phần này sẽ xem xét các lệnh liên quan đến tạo mới, sửa đổi, xóa các đối tượng liên quan đến Table, View và các đối tượng khác. Tạo kiểu dữ liệu mới. Tạo kiểu dữ liệu dạng user-defined. Cú pháp: sp_addtype [ @typename = ] type, [ @phystype = ] system_data_type [ , [ @nulltype = ] 'null_type' ] [ , [ @owner = ] 'owner_name' ] Ví dụ: sp_addtype ssn, ‘varchar(11)’, ‘NOT NULL’ Xóa kiểu dữ liệu đã tạo. Cú pháp: sp_droptype [ @typename = ] 'type' Ví dụ: Sp_droptype ssn Tạo ràng buộc (Constraint). Tạo ràng buộc được thực hiện trong 2 câu lệnh Create Table hoặc Alter Table: Check, Default, Foreign Key, Primary Key, Unique. 148 Xét một số ví dụ sau: + Tạo một Check. trong bảng authors. ALTER TABLE authors ADD CONSTRAINT chau_id CHECK(au_id LIKE ‘[0-9][0-9][0-9]-[0-9][0-9]- [0-9][0-9] [0-9][0-9]’) + Tạo Check trong bảng Publishers. ALTER TABLE publishers ADD chpub_id CHECK(pub_id IN (‘1389’, ‘0736’, ‘0877’, ‘1622’, ‘1756’) OR pub_id LIKE ‘99[0-9][0-9]’) + Tạo ràng buộc Default. ALTER TABLE authors ADD DEFAULT ‘UNKNOWN’ for au_lname + Tạo ràng buộc Foreign Key. ALTER TABLE titles ADD CONSTRAINT FK_pub_id FOREIGN KEY(pub_id) REFERENCES publishers(pub_id) + Tạo ràng buộc Primary Key. ALTER TABLE authors ADD CONSTRAINT UPKCL_auidind PRIMARY KEY CLUSTERED (au_id) + Tạo ràng buộc Unique. ALTER TABLE stores ADD CONSTRAINT UNC_name_city UNIQUE NONCLUSTERED(store_name, city) Xóa ràng buộc. Sử dụng Drop trong các câu lệnh Create Table hoặc Alter Table. + Ví dụ xóa Constraint sử dụng câu lệnh Alter Table. ALTER TABLE authors DROP CONSTRAINT UPKCL_auidind Hiển thị ràng buộc. sp_helpconstraint titltes Tạo bảng. Để tạo bảng dữ liệu có thể sử dụng 2 câu lệnh Create Table hoặc Select Into. + Tạo bảng tạm thời local (là bảng chỉ hiện với phiên hiện thời, tên bảng được bắt đầu bằng một dấu #). CREATE TABLE #MyTempTable (cola INT PRIMARY KEY) INSERT INTO #MyTempTable VALUES (1) + Tạo bảng tạm thời global (hiện với tất cả các phiên, tên bảng được bắt đầu bằng 2 dấu #). CREATE TABLE ##MyTempTable (cola INT PRIMARY KEY) 149 INSERT INTO ##MyTempTable VALUES (1) + Tạo bảng dữ liệu. /* ************************** jobs table ********* */ CREATE TABLE jobs ( job_id smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED, job_desc varchar(50) NOT NULL DEFAULT 'New Position - title not formalized yet', min_lvl tinyint NOT NULL CHECK (min_lvl >= 10), max_lvl tinyint NOT NULL CHECK (max_lvl CREATE TABLE publishers ( pub_id char(4) NOT NULL CONSTRAINT UPKCL_pubind PRIMARY KEY CLUSTERED CHECK (pub_id IN ('1389', '0736', '0877', '1622', '1756') OR pub_id LIKE '99[0-9][0-9]'), pub_name varchar(40) NULL, city varchar(20) NULL, state char(2) NULL, country varchar(30) NULL DEFAULT('USA') ) Xóa bảng. Sử dụng lệnh Drop Table. + Xóa bảng trong CSDL hiện thời: Drop Table MyTable + Xóa bảng trong CSDL khác. DROP TABLE pubs.dbo.authors2 Đổi tên bảng. Sử dụng thủ tục sp_rename + Đổi tên bảng: Sp_rename titltes, books Sửa cấu trúc bảng. Sử dụng lệnh Alter Table. + Thêm một cột vào bảng. CREATE TABLE doc_exa ( column_a INT) GO ALTER TABLE doc_exa ADD column_b VARCHAR(20) NULL GO EXEC sp_help doc_exa GO DROP TABLE doc_exa GO + Xóa một cột khỏi bảng. CREATE TABLE doc_exb ( column_a INT, column_b VARCHAR(20) NULL) 151 GO ALTER TABLE doc_exb DROP COLUMN column_b GO EXEC sp_help doc_exb GO DROP TABLE doc_exb GO Tạo Index. Sử dụng lệnh Create Index. + Tạo Index. SET NOCOUNT OFF USE pubs IF EXISTS (SELECT name FROM sysindexes WHERE name = 'au_id_ind') DROP INDEX authors.au_id_ind GO USE pubs CREATE UNIQUE CLUSTERED INDEX au_id_ind ON authors (au_id) GO Xem thông tin Index. Sử dụng thủ tục sp_helpindex + Xem Index của bảng authors. sp_helpindex authors Xóa Index. Sử dụng lệnh Drop Index. + Xóa Index của bảng authors. DROP INDEX authors.au_id_ind Tạo khung nhìn. Sử dụng lệnh Create View. + Tạo View. USE pubs IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'titles_view') 152 DROP VIEW titles_view GO CREATE VIEW titles_view AS SELECT title, type, price, pubdate FROM titles GO Xóa khung nhìn. Sử dụng lệnh Drop View. + Xóa khung nhìn. USE pubs IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'titles_view') DROP VIEW titles_view GO Đổi tên khung nhìn. Sử dụng lệnh thủ tục sp_rename. + Đổi tên view. sp_rename titles_view, view_titles THAO TÁC VỚI DỮ LIỆU (DATA MANIPULATION LANGUAGE - DML). Phần này sẽ xem xét các câu lệnh thao tác với dữ ...
Nội dung trích xuất từ tài liệu:
Bài giảng Hệ quản trị cơ sở dữ liệu: Phần 2 - Trường ĐH Công nghiệp Quảng Ninh Phần 2. CÂU LỆNH T-SQL Trong phần này sẽ giới thiệu cấu trúc, kỹ thuật soạn kịch bản lệnh T-SQL, đối với các hệ quản trị CSDL Foxfro, Access thì câu lệnh thực hiện truy vấn, khai thác CSDL là ngôn ngữ truy vấn SQL (Structure Query Language), các lệnh được thực hiện theo từng câu lệnh mà không thực hiện theo kịch bản hoặc theo tập hợp nhiều câu lệnh với nhau. Đối với hệ quản trị CSDL Oracle thì ngôn ngữ truy vấn dữ liệu là SQL/PL (SQL Plus), còn SQL Server ngôn ngữ có tên Transact-SQL viết tắt là T-SQL. ĐỊNH NGHĨA DỮ LIỆU (DATA DEFINITION LAGUAGE - DDL). Phần này sẽ xem xét các lệnh liên quan đến tạo mới, sửa đổi, xóa các đối tượng liên quan đến Table, View và các đối tượng khác. Tạo kiểu dữ liệu mới. Tạo kiểu dữ liệu dạng user-defined. Cú pháp: sp_addtype [ @typename = ] type, [ @phystype = ] system_data_type [ , [ @nulltype = ] 'null_type' ] [ , [ @owner = ] 'owner_name' ] Ví dụ: sp_addtype ssn, ‘varchar(11)’, ‘NOT NULL’ Xóa kiểu dữ liệu đã tạo. Cú pháp: sp_droptype [ @typename = ] 'type' Ví dụ: Sp_droptype ssn Tạo ràng buộc (Constraint). Tạo ràng buộc được thực hiện trong 2 câu lệnh Create Table hoặc Alter Table: Check, Default, Foreign Key, Primary Key, Unique. 148 Xét một số ví dụ sau: + Tạo một Check. trong bảng authors. ALTER TABLE authors ADD CONSTRAINT chau_id CHECK(au_id LIKE ‘[0-9][0-9][0-9]-[0-9][0-9]- [0-9][0-9] [0-9][0-9]’) + Tạo Check trong bảng Publishers. ALTER TABLE publishers ADD chpub_id CHECK(pub_id IN (‘1389’, ‘0736’, ‘0877’, ‘1622’, ‘1756’) OR pub_id LIKE ‘99[0-9][0-9]’) + Tạo ràng buộc Default. ALTER TABLE authors ADD DEFAULT ‘UNKNOWN’ for au_lname + Tạo ràng buộc Foreign Key. ALTER TABLE titles ADD CONSTRAINT FK_pub_id FOREIGN KEY(pub_id) REFERENCES publishers(pub_id) + Tạo ràng buộc Primary Key. ALTER TABLE authors ADD CONSTRAINT UPKCL_auidind PRIMARY KEY CLUSTERED (au_id) + Tạo ràng buộc Unique. ALTER TABLE stores ADD CONSTRAINT UNC_name_city UNIQUE NONCLUSTERED(store_name, city) Xóa ràng buộc. Sử dụng Drop trong các câu lệnh Create Table hoặc Alter Table. + Ví dụ xóa Constraint sử dụng câu lệnh Alter Table. ALTER TABLE authors DROP CONSTRAINT UPKCL_auidind Hiển thị ràng buộc. sp_helpconstraint titltes Tạo bảng. Để tạo bảng dữ liệu có thể sử dụng 2 câu lệnh Create Table hoặc Select Into. + Tạo bảng tạm thời local (là bảng chỉ hiện với phiên hiện thời, tên bảng được bắt đầu bằng một dấu #). CREATE TABLE #MyTempTable (cola INT PRIMARY KEY) INSERT INTO #MyTempTable VALUES (1) + Tạo bảng tạm thời global (hiện với tất cả các phiên, tên bảng được bắt đầu bằng 2 dấu #). CREATE TABLE ##MyTempTable (cola INT PRIMARY KEY) 149 INSERT INTO ##MyTempTable VALUES (1) + Tạo bảng dữ liệu. /* ************************** jobs table ********* */ CREATE TABLE jobs ( job_id smallint IDENTITY(1,1) PRIMARY KEY CLUSTERED, job_desc varchar(50) NOT NULL DEFAULT 'New Position - title not formalized yet', min_lvl tinyint NOT NULL CHECK (min_lvl >= 10), max_lvl tinyint NOT NULL CHECK (max_lvl CREATE TABLE publishers ( pub_id char(4) NOT NULL CONSTRAINT UPKCL_pubind PRIMARY KEY CLUSTERED CHECK (pub_id IN ('1389', '0736', '0877', '1622', '1756') OR pub_id LIKE '99[0-9][0-9]'), pub_name varchar(40) NULL, city varchar(20) NULL, state char(2) NULL, country varchar(30) NULL DEFAULT('USA') ) Xóa bảng. Sử dụng lệnh Drop Table. + Xóa bảng trong CSDL hiện thời: Drop Table MyTable + Xóa bảng trong CSDL khác. DROP TABLE pubs.dbo.authors2 Đổi tên bảng. Sử dụng thủ tục sp_rename + Đổi tên bảng: Sp_rename titltes, books Sửa cấu trúc bảng. Sử dụng lệnh Alter Table. + Thêm một cột vào bảng. CREATE TABLE doc_exa ( column_a INT) GO ALTER TABLE doc_exa ADD column_b VARCHAR(20) NULL GO EXEC sp_help doc_exa GO DROP TABLE doc_exa GO + Xóa một cột khỏi bảng. CREATE TABLE doc_exb ( column_a INT, column_b VARCHAR(20) NULL) 151 GO ALTER TABLE doc_exb DROP COLUMN column_b GO EXEC sp_help doc_exb GO DROP TABLE doc_exb GO Tạo Index. Sử dụng lệnh Create Index. + Tạo Index. SET NOCOUNT OFF USE pubs IF EXISTS (SELECT name FROM sysindexes WHERE name = 'au_id_ind') DROP INDEX authors.au_id_ind GO USE pubs CREATE UNIQUE CLUSTERED INDEX au_id_ind ON authors (au_id) GO Xem thông tin Index. Sử dụng thủ tục sp_helpindex + Xem Index của bảng authors. sp_helpindex authors Xóa Index. Sử dụng lệnh Drop Index. + Xóa Index của bảng authors. DROP INDEX authors.au_id_ind Tạo khung nhìn. Sử dụng lệnh Create View. + Tạo View. USE pubs IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'titles_view') 152 DROP VIEW titles_view GO CREATE VIEW titles_view AS SELECT title, type, price, pubdate FROM titles GO Xóa khung nhìn. Sử dụng lệnh Drop View. + Xóa khung nhìn. USE pubs IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_NAME = 'titles_view') DROP VIEW titles_view GO Đổi tên khung nhìn. Sử dụng lệnh thủ tục sp_rename. + Đổi tên view. sp_rename titles_view, view_titles THAO TÁC VỚI DỮ LIỆU (DATA MANIPULATION LANGUAGE - DML). Phần này sẽ xem xét các câu lệnh thao tác với dữ ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Hệ quản trị cơ sở dữ liệu Hệ quản trị cơ sở dữ liệu Câu lệnh T-SQL Data manipulation language Truy vấn dữ liệu Toán tử unionGợi ý tài liệu liên quan:
-
Giáo án Tin học lớp 12 (Trọn bộ cả năm)
180 trang 269 0 0 -
Thực hiện truy vấn không gian với WebGIS
8 trang 248 0 0 -
Đề cương chi tiết học phần Quản trị cơ sở dữ liệu (Database Management Systems - DBMS)
14 trang 244 0 0 -
69 trang 144 0 0
-
204 trang 128 1 0
-
Ngôn ngữ lập trình C# 2005 - Tập 4, Quyển 1: Lập trình cơ sở dữ liệu (Phần 1)
208 trang 124 0 0 -
Bài giảng Lập trình web nâng cao: Chương 8 - Trường ĐH Văn Hiến
36 trang 113 1 0 -
57 trang 89 0 0
-
34 trang 84 0 0
-
Bài giảng Khái niệm về hệ cơ sở dữ liệu: Bài 2 - Hệ quản trị cơ sở dữ liệu
13 trang 78 0 0