Kiểu dữ liệu: Data typeKiểu dữ liệu là đặc tính của một cột column nó định rõ loại dữ liệu và dạng dữ liệu nhập vào cột Có 2 nhóm kiểu dữ liệu - Kiểu dữ liệu cơ bản được hỗ trợ bở SQL S
Trang 1Làm việc Table
5
Trang 2I Kiểu dữ liệu: (Data type)
Kiểu dữ liệu là đặc tính của một cột (column) nó định rõ loại dữ liệu và dạng dữ liệu nhập vào cột
Có 2 nhóm kiểu dữ liệu
- Kiểu dữ liệu cơ bản được hỗ trợ bở SQL Server
- Kiểu dữ liệu do người dùng định nghĩa
1 Kiểu dữ liệu hỗ trợ bởi SQL Server
Binary: Là kiểu dữ liệu chứa dạng số ở hệ hexa, gồm 3 kiểu dữ liệu Binary, Varbinary, Image.
Monetary: (tiền tệ) Money, Smallmoney.
Bit: Kiểu số 0, 1
Trang 3Text: Là kiểu ký tự, chứa chữ cái, ký hiệu, số:
- Char: Kiểu ký tự, khi xác định độ dài thì độ dài trong CSDL sẽ xác định theo độ dài đặt trước ( Nchar: support Unicode, độ dài tối đa 4000)
- Nvarchar: Tương tự như NChar nhưng kích thước trong CSDL sẽ là kích thước thực dữ liệu hiện có, không tính theo kích thước đặt trước
- Varchar: Tương tự như Nvarchar nhưng không support Unicode.
- Text: Kiểu văn bản, chứa cả ký tự xuống dòng, lưu trữ theo dạng văn bản, có kích thước lớn, có thể
Trang 4Data/Time: Kiểu dữ liệu ngày, thời gian, ngày và thời gian, gồm 2 kiểu:
- DateTime: Đầy đủ cả ngày và thời gian.
- SmallDataTime: Chỉ ngày hoặc thời gian.
Numeric: Dữ liệu kiểu số, gồm các kiểu dữ liệu sau:
- Int, smallint, tinyint, bigint: Số nguyên
- Float, real, decimal, numeric: Số thực.
• Auto number: Đặt cột dữ liệu kiểu số nguyên,
tăng tự động khi một hàng được thêm, cột kiểu này không sửa dữ liệu (kết hợp với thuộc tính
Identity , Identity Seed , Identity Increment )
Trang 5Timestamp: kích thước 8 byte, lưu trữ dạng số
nhị phân do hệ thống tự sinh ra, mỗi giá trị
timestamp trong CSDL là duy nhất.
Sql_variant: Là kiểu dữ liệu xác định theo kiểu
dữ liệu khác, một cột dữ liệu được định nghĩa
dữ liệu kiểu này có thể lưu trữ nhiều dữ liệu
có kiểu khác nhau trong cùng một bảng Ví
dụ có thể lưu trữ nhiều kiểu dữ liệu int,
binary, char, nhưng không chứa dữ liệu kiểu
text, ntext, image, timestamp, sql_variant.
Trang 62 Kiểu dữ liệu người dùng định nghĩa:
a Dùng Enterprise Manager: Trong database chuột phải User defined Data Types chọn New User Defined Data Type nhập tên, chọn kiểu và những tùy chọn hiện có.
b Dùng T-SQL:
sp_addtype name_type, system_data_type
[ , 'NULL' | 'NOT NULL' ]
Vd1: sp_addtype SoNguyen , int , 'NULL'
Vd2: sp_addtype CMND, 'char(10)', 'NOT NULL'
Vd3: sp_addtype TenVN, 'Nvarchar(10)'
Trang 7II Làm việc với bảng (Table):
A Dùng T-SQL:
1 Tạo mới:
CREATE TABLE <Table_Name>
<Col_2_Name> <Data_Type> [ , 'NULL' | 'NOT NULL']
Trang 8CREATE TABLE tbl_SinhVien
NgaySinh DateTime NOT NULL,
HoTen Nvarchar(100) NOT NULL,
Ghi_chu Ntext )
CREATE TABLE tbl_Lop
TenLop Nvarchar(50) NOT NULL,
Khoa_ID Nvarchar(10) NOT NULL )
CREATE TABLE tbl_Khoa
TenKhoa Nvarchar(100) NOT NULL )
Trang 92 Thêm - Sửa - Xóa Colomun và Table:
a Thêm Column
ALTER TABLE <Table_Name>
ADD <Column_Name> [, n]
Vd1:
ALTER TABLE tbl_SinhVien
ADD DiaChi varchar(100)
Vd2:
ALTER TABLE tbl_SinhVien
Trang 10b Xóa Column
ALTER TABLE <Table_Name>
DROP COLUMN <Column_Name> [, n]
Vd1:
ALTER TABLE tbl_SinhVien
DROP COLUMN GhiChu
Vd1:
ALTER TABLE tbl_SinhVien
DROP COLUMN ThanhPho, MaDienThoai
Trang 11c Sửa Column
ALTER TABLE <Table_Name>
ALTER COLUMN <Column_Name newDatatype> Vd:
ALTER TABLE tbl_SinhVien
ALTER COLUMN DiaChi Nvarchar(100)
Sửa tên Column
sp_rename '<TableName >.<oldName>' , '<newName >' Vd:
sp_rename 'tbl_SinhVien.DiaChi' , 'SoNha'
Trang 12c Xóa Column
ALTER TABLE <Table_Name>
DROP COLUMN <Column_Name> [, n]
Vd:
ALTER TABLE tbl_SinhVien
DROP COLUMN GhiChu
Vd2:
ALTER TABLE tbl_SinhVien
DROP COLUMN ThanhPho, QuanHuyen
Trang 13Xóa toàn bộ dữ liệu Column
TRUNCATE TABLE <Table_Name>
Vd: TRUNCATE TABLE tbl_SinhVien
Xóa Table:
DROP TABLE <Table_Name>
Vd: DROP TABLE tbl_Khoa
Ghi chú:
- Nếu dữ liệu giữa các Table có Quan Hệ One-to-Many (Cha-Con) thì xóa dữ liệu Table Con (Forein Key) trước xóa dữ liệu Table Cha (Primary Key) sau.
- Trước khi xóa một Table, phải gỡ bỏ toàn bộ thuộc
Trang 143 Nhập dữ liệu:
INSERT [INTO] <Table_Name> (Col_1, Col_2, )
VALUES (Value_1,Value_2, )
VD:
Insert Into tbl_Khoa (Khoa_ID, TenKhoa)
Values ('CNTT’, N'Công nghệ thông tin')
Insert tbl_Khoa (Khoa_ID, TenKhoa)
Values (N'ĐĐT’, N'Điện - Điện tử')
Trang 15A Dùng Enterprise Manager: Chọn Database → Chọn Tables → phải chuột → New Table
Trang 16New Table
Trang 19• Sửa/xóa Table: ( Giống bước tạo nhưng thay vì chọn
Trang 20• Nhập dữ liệu: Như các bước trên ta chọn Open Table
→ Return all rows → Nhập dữ liệu cho các dòng
Trang 21III Bảng Tạm (Temporary Table)
bảng chúng chỉ sử dụng cho kết nối hiện hành cho User và chúng được xóa khi User đó ngắt kết nối.
CREATE TABLE #MyLocalTempTable
Trang 222 Bảng tạm toàn bộ: có hai dấu ## đầu tiên của tên bảng chúng chỉ sử dụng cho bất kỳ User và chúng được xóa khi tất cả các User ngắt kết nối.
CREATE TABLE ##MyGlocalTempTable
Trang 23• Thiết kế CSDL quan hệ quản lý điểm
Sinh viên của trường CĐ-KT Công
nghệ Đồng Nai trong đó nêu lên được
Sinh viên đó thuộc Khoa nào, lớp nào