CHƯƠng 1: TỔng quan về sql server và csdl quan hệ i-giới thiệu sql server



tải về 457.4 Kb.
trang5/12
Chuyển đổi dữ liệu27.07.2016
Kích457.4 Kb.
#7139
1   2   3   4   5   6   7   8   9   ...   12

IV-TOÁN TỬ UNION:


Dùng kết hợp các kết quả của 2 hay nhiều truy vấn vào cùng một kết quả.

SELECT

FROM

[WHERE <điều kiện chọn dòng> ]

[GROUP BY ]

[HAVING <điều kiện chọn nhóm> ]

UNION [ALL]

SELECT

FROM

[WHERE <điều kiện chọn dòng> ]

[GROUP BY ]

[HAVING <điều kiện chọn nhóm> ]

[ORDER BY [ASC | DESC ]]

Chú ý :


  • Các kết quả truy vấn phải cùng số cột, cùng thứ tự và cùng kiểu dữ liệu tương ứng từng cột.

  • Bảng kết quả có tên cột được tạo từ Select đầu tiên.

  • Mệnh đề ORDER BY chỉ cho phép đứng cuối trong lệnh UNION

  • Từ khóa ALL : dùng chỉ định hiển thị cả những dòng trùng dữ liệu. Nếu không có từ khóa ALL thì chỉ hiện các dòng phân biệt.

V-DATA MANIPULATION LANGUAGE (DML)

-1CHÈN MẪU TIN MỚI :

-aChèn trực tiếp một mẫu tin mới:


Cú pháp: INSERT INTO [( column list)] VALUES (value list)

-bChèn dữ liệu từ các bảng :


Cú pháp: INSERT INTO
[(column list)] <SELECT Statement>

-2SỬA DỮ LIỆU:


Cú pháp 1:

UPDATE

SET { = } [,...n ]



[FROM { < table_source > } [ ,...n ] ]

[WHERE ];

Cú pháp 2:

UPDATE

SET { =
[WHERE];

Cú pháp 2: DELETE

FROM [WHERE ];

Ví dụ :


  • Xóa hóa đơn có mã hóa đơn bằng 1

Delete From CTHD WHERE MAHD = 1 And MaMH = 5

  • Xóa các CTHD của các hóa đơn đã bán trong ngày

Delete CTHD

FROM CTHD, HoaDon

WHERE CTHD.SoHD = HoaDon.SoHD

AND HoaDon.NgayHD = (SELECT MAX(HoaDon.NgayHD)

FROM HoaDon)


  • Xóa MatHang đơn giá thấp.

DELETE MatHang

FROM MatHang,

(SELECT TOP 1 * FROM MatHang ORDER BY DonGia) AS t1

WHERE MatHang.MaMH = t1.MaMH

Hay có thể bỏ tên table MatHang trong mệnh đề FROM

DELETE MatHang

FROM (SELECT TOP 1 * FROM MatHang ORDER BY DonGia)

AS t1 WHERE MatHang.MaMH = t1.MaMH


-4Tạo mới một bảng với các bộ giá trị lấy từ CSDL:


Cú pháp: SELECT INTO ….

Chương 3 : TẠO LẬP CSDL TRÊN SQL SERVER

I-Các Loại File Lưu Trữ CSDL :


Khi tạo một CSDL, SQL Server sẽ tạo những file lưu trữ. Có 2 loại file như sau:

  • File dữ liệu: bao gồm

    • File chính (Primary data file): Mỗi CSDL chỉ có 1 file dữ liệu chính có phần mở rộng là MDF.

    • Các file dữ liệu phụ (Secondary data files): Các file này chứa các dữ liệu và đối tượng không nằm vừa trong Primary file. Một số CSDL có thể lớn đến nỗi phải cần nhiều file dữ liệu phụ hay cần sử dụng các file phụ trên các ổ đĩa riêng để phân dữ liệu qua nhiều đĩa. Các file dữ liệu phụ tiếp theo nên có phần mở rộng là NDF.

    • Các file nhật ký (Log files): lưu trữ nhật ký giao tác (LDF) (Transaction log) thực hiện trên CSDL, nhằm mục đích phục hồi CSDL khi có sự cố.

Khi sử dụng nhiều file dữ liệu, SQL Server tự động trải dữ liệu qua tất cả các file dữ liệu. Điều này làm giảm tranh chấp và các điểm nóng (hotspot) trong dữ liệu.

Tuy nhiên, đối với file nhật ký, SQL không trải thông tin trên các file nhật ký. Khi 1 file nhật ký đầy, thông tin sẽ được ghi tiếp vào file khác.


II-Tạo CSDL:


Để tạo CSDL bạn có thể dùng câu lệnh Create Database trong Query Analyzer hoặc sử dụng tiện ích Enterprise Manager.

-1Bằng Lệnh CREATE DATABASE:


Cú pháp : CREATE DATABASE DatabaseName

[ ON [PRIMARY] ( <Thông tin File Dữ Liệu>) ,… ]

[LOG ON ( <Thông tin File Log>) ,… ]

Trong đó :



= ( FILENAME = 'd:\Path\FileName'

[, NAME = LogicalName ]

[, SIZE = ]

[, MAXSIZE = < MaxSize > ]

[, FILEGROWTH = ] )

Arguments

  • Database_name : Tên Database phải được phân biệt trên cùng server (tối đa 128 ký tự)

  • ON : Khai báo các file chứa CSDL

  • PRIMARY: Dùng chỉ định file chính của CSDL. Nếu không chỉ định Primary, file đầu tiên được liệt kê trong phát biểu Create Database trở thành primary file.

  • NAME = ‘LogicalName’ : Tên luận lý của File lưu trữ CSDL. Tên này được sử dụng trong các phát biểu của T-SQL. Yêu cầu phân biệt.

  • FILENAME = 'FileName' : Tên lưu trên đĩa. Bao gồm cả ổ đĩa, thư mục

  • SIZE = : Kích thước File theo đơn vị MB (mặc định) hoặc KB. Thấp nhất 512 KB, mặc định 1 MB.

  • MAXSIZE = max_size : Chỉ định kích thước tối đa mà file có thể tăng. Nếu không chỉ định, kích thước file sẽ tăng cho đến khi đĩa đầy.

  • FILEGROWTH : Khai báo số gia khi tăng kích thước File, không được lớn hơn MaxSize. Mặc định là 10% và giá trị nhỏ nhất là 64 KB.

  • LOG ON : Khai báo các file dùng lưu trữ nhật ký thao tác trên database. Nếu không chỉ định LOG ON, SQL tự tạo một file nhật ký có size bằng 25 percent của tổng kích thước của tất cả các data files trên database.

Ví dụ 1: Tạo CSDL BanHang, bắt đầu có kích thước 20MB – trong đó, 15MB dành cho file dữ liệu và 5MB dành cho file nhật ký.

CREATE DATABASE BanHang

ON ( NAME = Sales_dat,

FILENAME = ‘c:\mssql7\data\saledat.mdf’,

SIZE = 15MB, MAXSIZE = 50MB,

FILEGROWTH = 20% )

LOG ON ( NAME = ‘Sales_log’,

FILENAME = ‘c:\mssql7\data\salelog.ldf’,

SIZE = 5MB, MAXSIZE = 20MB,

FILEGROWTH = 1MB )



Ví dụ 2: Tạo CSDL lưu ở nhiều file. Theo Microsoft, File dữ liệu đầu tiên có phần mở rộng là MDF, các file dữ liệu còn lại có phần mở rộng là .NDF. Các file nhật ký có phần mở rộng là LDF.

CREATE DATABASE BanHang

ON ( NAME = Sales_dat1,

FILENAME = 'c:\data\sale.mdf',

SIZE = 10,

MAXSIZE = 50,

FILEGROWTH = 5 ),

( NAME = Sales_dat2,

FILENAME = 'c:\data\sale1.ndf',

SIZE = 10, MAXSIZE = 50,

FILEGROWTH = 5 )

LOG ON

( NAME = 'Sales_log1',



FILENAME = 'c:\data\sale.ldf',

SIZE = 5, MAXSIZE = 20,

FILEGROWTH = 5 ),

( NAME = 'Sales_log2',

FILENAME = 'c:\data\sale1.ldf',

SIZE = 5, MAXSIZE = 20,

FILEGROWTH = 5 )
Do không dùng từ khóa PRIMARY nên mặc định file đầu tiên (Sale_dat1) là file chính.


CREATE DATABASE BanHang

ON ( NAME = Sales_dat1,

FILENAME = 'c:\data\sale.mdf',

SIZE = 10,

MAXSIZE = 50,

FILEGROWTH = 5 ),



PRIMARY ( NAME = Sales_dat2,

FILENAME ='c:\data\sale1.ndf',

SIZE = 10, MAXSIZE = 50,

FILEGROWTH = 5 )

LOG ON

( NAME = 'Sales_log1',



FILENAME = 'c:\data\sale.ldf',

SIZE = 5, MAXSIZE = 20,

FILEGROWTH = 5 ),

( NAME = 'Sales_log2',

FILENAME = 'c:\data\sale1.ldf',

SIZE = 5, MAXSIZE = 20,

FILEGROWTH = 5 )
Do dùng từ khóa PRIMARY nên file (Sale_dat2) là file chính.


Chú thích:

  • CSDL mới được tạo là bản sao của CSDL Model, nên mọi thứ trong CSDL Model sẽ có trong CSDL mới. Mặc định, các thành viên có vai trò sysadmin – System Administrater và dbcreator – Database Creators mới có quyền tạo Database mới.

-2Bằng Enterprise Manager:


Click phải vào Folder Databases hoặc khoảng trống trên khung bên trái, chọn New Database, cửa sổ tạo CSDL được hiển thị:



Tab General: Nhập tên Database trong ô Name, ví dụ: TheThao.

Tab Data Fiels : Database files: hiện dòng chứa tên file dữ liệu, ví dụ: Thethao_Data, với kích thước ban đầu là 1MB trong thư mục mặc định …\Data.

File properties:

Check Box Automatically grow file: được chọn để cho phép tăng kích cỡ file. Kích cỡ tối đa, được chỉ định không hạn chế (Unrestricted filegrowth) hoặc hạn chế (Restrict filegrowth (MB)).

Tab Transaction Log: tên file nhật ký mặc định là TheThao_Log.LDF


tải về 457.4 Kb.

Chia sẻ với bạn bè của bạn:
1   2   3   4   5   6   7   8   9   ...   12




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương