148 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[.]
Phần CÂU LỆNH T-SQL Trong phần giới thiệu cấu trúc, kỹ thuật soạn kịch lệnh T-SQL, hệ quản trị CSDL Foxfro, Access câu lệnh thực truy vấn, khai thác CSDL ngôn ngữ truy vấn SQL (Structure Query Language), lệnh thực theo câu lệnh mà không thực theo kịch theo tập hợp nhiều câu lệnh với Đối với hệ quản trị CSDL Oracle ngơn ngữ truy vấn liệu SQL/PL (SQL Plus), cịn SQL Server ngơn ngữ có tên Transact-SQL viết tắt T-SQL ĐỊNH NGHĨA DỮ LIỆU (DATA DEFINITION LAGUAGE - DDL) Phần xem xét lệnh liên quan đến tạo mới, sửa đổi, xóa đối tượng liên quan đến Table, View đối tượng khác Tạo kiểu liệu Tạo kiểu 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 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 thực câu lệnh Create Table Alter Table: Check, Default, Foreign Key, Primary Key, Unique 148 Xét số ví dụ sau: + Tạo Check 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 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 câu lệnh Create Table 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 liệu sử dụng câu lệnh Create Table Select Into + Tạo bảng tạm thời local (là bảng với phiên thời, tên bảng bắt đầu 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 phiên, tên bảng bắt đầu dấu #) CREATE TABLE ##MyTempTable (cola INT PRIMARY KEY) 149 INSERT INTO ##MyTempTable VALUES (1) + Tạo bảng 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 = 10 and price < 20 THEN 'Coffee Table Title' ELSE 'Expensive book!' END, CAST(title AS varchar(20)) AS 'Shortened Title' FROM titles ORDER BY price GO Kết thực sau: Price Category Not yet priced Not yet priced Very Reasonable Title Very Reasonable Title Very Reasonable Title Very Reasonable Title Coffee Table Title Coffee Table Title Coffee Table Title Coffee Table Title Coffee Table Title Coffee Table Title Coffee Table Title Coffee Table Title Shortened Title -Net Etiquette The Psychology of Co The Gourmet Microwav You Can Combat Compu Life Without Fear Emotional Security: Is Anger the Enemy? Cooking with Compute Fifty Years in Bucki Sushi, Anyone? Prolonged Data Depri Silicon Valley Gastr Straight Talk About The Busy Executive's 167 ... TRUY VẤN DỮ LỆU Trong trước ta xem xét câu lệnh thao tác với liệu Insert, Update, Delete, phần ta xem xét câu lệnh khai thác truy vấn liệu Select, phép Join,… Lệnh Use - Chọn Cơ sở liệu Sử dung... THAO TÁC VỚI DỮ LIỆU (DATA MANIPULATION LANGUAGE - DML) Phần xem xét câu lệnh thao tác với liệu Insert, Select, Delete Lệnh Insert - Chèn liệu vào bảng Sử dụng câu lệnh Insert + Chèn liệu vào tất... liệu kiểu Text, Image, nhiên UpdateText khác WriteTex, UpdateText sửa., xóa liệu theo đoạn thêm liệu vào phần liệu có cột liệu + Cú pháp chung: UPDATETEXT { table_name.dest_column_name dest_text_ptr