Hướng dẫn SQL Server - Mọi thứ bạn cần để thành thạo Transact-SQL



Bài viết Hướng dẫn sử dụng SQL Server này là một hướng dẫn toàn diện về các khái niệm, cú pháp và lệnh khác nhau được sử dụng trong MS SQL Server.

Trong thị trường ngày nay, nơi một lượng lớn dữ liệu được tạo ra mỗi ngày, điều rất quan trọng là phải hiểu cách xử lý dữ liệu. SQL Server là một môi trường tích hợp do Microsoft phát triển để xử lý dữ liệu.Trong bài viết này về hướng dẫn SQL Server, bạn sẽ học tất cả các thao tác và lệnh mà bạn cần để khám phá cơ sở dữ liệu của mình.

Để bạn hiểu rõ hơn, tôi đã chia blog thành các loại sau:





Lệnh Sự miêu tả

Lệnh ngôn ngữ định nghĩa dữ liệu (DDL)

Tập hợp các lệnh này được sử dụng để xác định một cơ sở dữ liệu.

Lệnh ngôn ngữ thao tác dữ liệu (DML)



Các lệnh thao tác được sử dụng để thao tác dữ liệu có trong cơ sở dữ liệu.

Lệnh ngôn ngữ điều khiển dữ liệu (DCL)

Tập hợp các lệnh này xử lý các quyền, quyền và các điều khiển khác của hệ thống cơ sở dữ liệu.

Lệnh ngôn ngữ điều khiển giao dịch (TCL)

Các lệnh này được sử dụng để đối phó với giao dịch của cơ sở dữ liệu.

Ngoài các lệnh, các chủ đề sau được đề cập trong bài viết này:



MS SQL Server - Hướng dẫn SQL Server - Edureka

  1. SQL Server là gì?
  2. Cài đặt SQL Server
  3. Kết nối với SQL Server bằng SSMS
  4. Công cụ cơ sở dữ liệu truy cập
  5. Kiến trúc máy chủ SQL
  6. Nhận xét trong SQL
  7. Các kiểu dữ liệu SQL Server
  8. Các phím trong cơ sở dữ liệu
  9. Ràng buộc trong cơ sở dữ liệu
  10. Các nhà khai thác
  11. Chức năng tổng hợp
  12. Các chức năng do người dùng xác định
  13. Truy vấn lồng nhau
  14. Tham gia
  15. Vòng lặp
  16. Thủ tục lưu trữ
  17. Xử lý ngoại lệ

***GHI CHÚ*** Trong Hướng dẫn SQL Server này, tôi sẽ xem xét cơ sở dữ liệu bên dưới làmột ví dụ, để chỉ cho bạn cách học và viếtcác lệnh.

Thẻ học sinh Tên học sinh ParentName Số điện thoại Địa chỉ Tp. Quốc gia
mộttôi ghétAkriti mehra9955339966Lữ đoàn Đường bộ 9HyderabadẤn Độ
2ManasaShourya Sharma9234568762Đường Mayo 15KolkataẤn Độ
3AnaySoumya Mishra9876914261Nhà số 101 MarathalliTiếng BengaluruẤn Độ
4PreetiRohan Sinha9765432234Đường Queens 40DelhiẤn Độ
5ShanayaAbhinay agarwal9878969068Đường Oberoi 21MumbaiẤn Độ

Trước khi bắt đầu tìm hiểu các lệnh khác nhau được sử dụng trong SQL Server, chúng ta hãy hiểu SQL Server là gì, kiến ​​trúc của nó và cách cài đặt nó.

SQL Server là gì?

Microsoft SQL Server là một quan hệ hệ thống quản lý cơ sở dữ liệu . Nó hỗ trợ Structured Query Language và đi kèm với việc triển khai ngôn ngữ SQL của riêng nó, là ngôn ngữ Transact-SQL (T-SQL) . Nó có một môi trường tích hợp để xử lý cơ sở dữ liệu SQL, đó là .

Các thành phần chính của SQL Server như sau:

  • Cơ sở dữ liệu: Thành phần này xử lý lưu trữ, Xử lý giao dịch nhanh chóng và Bảo mật dữ liệu.
  • Máy chủ SQL - Dịch vụ này được sử dụng để bắt đầu, dừng, tạm dừng và tiếp tục phiên bản của MS SQL Server.
  • Tác nhân SQL Server - Dịch vụ Server Agent đóng vai trò của bộ lập lịch tác vụ và được kích hoạt bởi bất kỳ sự kiện nào hoặc theo yêu cầu.
  • Trình duyệt máy chủ SQL - Dịch vụ này được sử dụng để kết nối yêu cầu đến với phiên bản SQL Server mong muốn.
  • Tìm kiếm toàn văn bản của SQL Server - Được sử dụng để cho phép người dùng chạy các truy vấn toàn văn bản dựa trên dữ liệu ký tự trong bảng SQL.
  • SQL Server VSS Writer - Cho phép sao lưu và khôi phục tệp dữ liệu khi SQL Server không chạy.
  • Dịch vụ Phân tích Máy chủ SQL (SSAS) - Dịch vụ này được sử dụng để cung cấp phân tích dữ liệu, khai thác dữ liệu và các khả năng. SQL Server cũng được tích hợp với và R để phân tích dữ liệu nâng cao.
  • Dịch vụ báo cáo máy chủ SQL (SSRS) - Như tên cho thấy, dịch vụ này được sử dụng để cung cấp các tính năng và khả năng ra quyết định bao gồm tích hợp với .
  • Dịch vụ tích hợp máy chủ SQL (SSIS) - Dịch vụ này được sử dụng để thực hiện các hoạt động ETL cho các loại dữ liệu khác nhau từ nhiều nguồn dữ liệu.

Bây giờ, bạn đã biết MS SQL Server là gì, hãy cùng chúng tôi chuyển sang bài viết này về hướng dẫn SQL Server và hiểu cách cài đặt và thiết lập SQL Server.

Cài đặt SQL Server

Làm theo các bước dưới đây để cài đặt SQL Server:

Bước 1: Đi đến trang chính thức của Tải xuống Microsoft SQL Server , nơi bạn sẽ tìm thấy tùy chọn cài đặt SQL Server tại chỗ hoặc trên đám mây.

Bước 2: Bây giờ, cuộn xuống và bạn sẽ thấy hai tùy chọn: Phiên bản dành cho nhà phát triển & doanh nghiệp . Tại đây, tôi sẽ tải xuống Phiên bản dành cho nhà phát triển . Để tải xuống, bạn chỉ cần nhấp vào Tải ngay Lựa chọn. Tham khảo bên dưới.

Bước 3: Sau khi ứng dụng được tải xuống, nhấp đúp vào tệp và bạn sẽ thấy cửa sổ sau.

Bước 4: Bây giờ, bạn có thể chọn một trong 3 tùy chọn để thiết lập SQL Server. Ở đây, tôi sẽ chỉ chọn Tùy chọn cơ bản . Khi chọn tùy chọn loại cài đặt, màn hình tiếp theo sẽ là chấp nhận thỏa thuận cấp phép. Để làm điều đó, hãy nhấp vào Chấp nhận trong cửa sổ sau.

Bước 5: Tiếp theo, bạn phải chỉ định vị trí cài đặt SQL Server. Sau đó, bạn phải nhấp vào Cài đặt.

Khi bạn nhấp vào Tải về , bạn sẽ thấy rằng các gói bắt buộc đang được tải xuống. Bây giờ, sau khi cài đặt hoàn tất, bạn sẽ thấy màn hình sau:

Tại đây, bạn có thể tiếp tục và nhấp vào Connect Now hoặc bạn có thể Tùy chỉnh cài đặt. Để bạn hiểu rõ hơn, tôi sẽ tiếp tục và chọn Tùy chỉnh.

Bước 6: Khi bạn nhấp vào Tùy chỉnh trong cửa sổ trên, bạn sẽ thấy trình hướng dẫn sau đang mở ra. trong cửa sổ sau, nhấp vào Kế tiếp.

Bước 7: Sau khi các quy tắc được cài đặt tự động, hãy nhấp vào Kế tiếp . Tham khảo bên dưới.

Bước 8: Tiếp theo, bạn phải chọn kiểu cài đặt. Vì vậy, hãy chọn Thực hiện một cài đặt mới SQL Server 2017 và sau đó nhấp vào Kế tiếp.

Bước 9: Trong trình hướng dẫn mở ra, hãy chọn phiên bản: Nhà phát triển. Sau đó, nhấp vào Kế tiếp . Tham khảo bên dưới.

Bước 10: Bây giờ, hãy đọc và chấp nhận các thỏa thuận cấp phép bằng cách đăng ký vào nút radio và sau đó nhấp vào Kế tiếp . Tham khảo bên dưới.

Bước 11: Trong trình hướng dẫn bên dưới, bạn có thể chọn các tính năng mà bạn muốn cài đặt. Ngoài ra, bạn có thể chọn thư mục gốc phiên bản và sau đó nhấp vào Kế tiếp . Ở đây, tôi sẽ chọn Dịch vụ Cơ sở dữ liệu .

Bước 12: Tiếp theo, bạn phải đặt tên cho phiên bản và tự động ID phiên bản sẽ được tạo. Ở đây, tôi sẽ đặt tên cho instance là “edureka”. Sau đó, nhấp vào Kế tiếp.

Bước 13: Trong trình hướng dẫn Cấu hình Máy chủ, bấm vào Kế tiếp .

Bước 14: Bây giờ, bạn phải bật các chế độ xác thực. Tại đây, bạn sẽ thấy Chế độ xác thực WindowsChế độ hỗn hợp . Tôi sẽ chọn Chế độ hỗn hợp. Sau đó, đề cập đến mật khẩu và sau đó tôi sẽ thêm người dùng hiện tại làm quản trị viên bằng cách chọn Thêm người dùng hiện tại Lựa chọn.

Bước 15: Sau đó, chọn đường dẫn tệp cấu hình và nhấp vào Tải về .

Sau khi cài đặt xong, bạn sẽ thấy màn hình sau:

Kết nối với SQL Server bằng SSMS

Sau khi SQL Server được cài đặt, bước tiếp theo của bạn là kết nối SQL Server với SQL Server Management Studio. Để làm điều đó, hãy làm theo các bước sau:

Bước 1: Quay lại cửa sổ sau và nhấp vào cài đặt SSMS Lựa chọn.

Bước 2: Khi bạn nhấp vào tùy chọn đó, bạn sẽ được chuyển hướng đến trang sau , nơi bạn phải chọn Tải xuống SSMS.

Bước 3: Sau khi thiết lập đã được tải xuống, hãy nhấp đúp vào ứng dụng và bạn sẽ thấy trình hướng dẫn sau mở ra.

Bước 4: Bấm vào Cài đặt tùy chọn , trong cửa sổ trên và bạn sẽ thấy rằng quá trình cài đặt sẽ bắt đầu.

Bước 5: Sau khi cài đặt xong bạn sẽ nhận được hộp thoại như hình bên dưới.

Sau khi bạn cài đặt SSMS, bước tiếp theo là truy cập vào Cơ sở dữ liệu .

Truy cập công cụ cơ sở dữ liệu

Khi bạn mở Studio quản lý máy chủ SQL từ menu bắt đầu , một cửa sổ sẽ mở ra tương tự như cửa sổ hiển thị trong hình bên dưới.

Tại đây, hãy đề cập đến Tên máy chủ, Chế độ xác thực và nhấp vào Kết nối.

Sau khi bạn nhấp vào Kết nối , bạn sẽ thấy màn hình sau.

Vâng, đó là cách bạn cài đặt và thiết lập SQL Server. Bây giờ, tiếp tục trong hướng dẫn SQL Server này, chúng ta hãy hiểu các thành phần khác nhau của kiến ​​trúc SQL Server.

Kiến trúc máy chủ SQL

Kiến trúc của SQL Server như sau:

  • Người phục vụ & Trừ Đây là nơi các dịch vụ SQL được cài đặt và cơ sở dữ liệu nằm
  • Công cụ quan hệ & trừ Chứa trình phân tích cú pháp truy vấn, trình tối ưu hóa và trình thực thi và việc thực thi diễn ra trong công cụ quan hệ.
  • Bộ phân tích cú pháp lệnh & trừ Kiểm tra cú pháp của truy vấn và chuyển đổi truy vấn sang ngôn ngữ máy.
  • Trình tối ưu hóa & trừ Chuẩn bị kế hoạch thực thi dưới dạng đầu ra bằng cách lấy thống kê, truy vấn và cây Algebrator làm đầu vào.
  • Người thực thi truy vấn & trừ Đây là nơi mà các truy vấn được thực thi từng bước
  • Công cụ lưu trữ & Trừ Đây là nhiệm vụ lưu trữ và truy xuất dữ liệu trên hệ thống lưu trữ, thao tác với dữ liệu, quản lý và khóa các giao dịch.

Bây giờ, bạn đã biết cách thiết lập và cài đặt SQL Server và các thành phần khác nhau của nó, hãy để chúng tôi bắt đầu với việc viết Người phục vụ. Tuy nhiên, trước đó hãy để tôi trình bày cách viết bình luận trong SQL Server.

Nhận xét trong SQL Server

Có hai cách mà bạn có thể nhận xét trong SQL, tức là sử dụng S bình luận trong dòng hoặc là m bình luận dòng ulti .

Nhận xét một dòng

Các nhận xét một dòng bắt đầu bằng hai dấu gạch ngang (-). Do đó, văn bản được đề cập sau (-), cho đến cuối một dòng sẽ bị trình biên dịch bỏ qua.

Thí dụ:

- Ví dụ về nhận xét dòng đơn

Nhận xét nhiều dòng

Các nhận xét nhiều dòng bắt đầu bằng / * và kết thúc bằng * / . Do đó, văn bản được đề cập giữa / ** / sẽ bị trình biên dịch bỏ qua.

Thí dụ:

/ * Ví dụ cho nhận xét nhiều dòng * /

Bây giờ trong bài viết này về hướng dẫn SQL Server, chúng ta hãy bắt đầu với nhóm lệnh đầu tiên, tức là các lệnh Ngôn ngữ Định nghĩa Dữ liệu.

Các lệnh ngôn ngữ định nghĩa dữ liệu

Phần này của bài viết sẽ cung cấp cho bạn ý tưởng về các lệnh với sự trợ giúp của chúng mà bạn có thể xác định cơ sở dữ liệu của mình. Các lệnh như sau:

TẠO NÊN

Câu lệnh này được sử dụng để tạo bảng, cơ sở dữ liệu hoặc dạng xem.

Tuyên bố 'TẠO CƠ SỞ DỮ LIỆU'

Câu lệnh này được sử dụng để tạo cơ sở dữ liệu.

Cú pháp

TẠO Cơ sở dữ liệu DATABASEName

Thí dụ

TẠO CƠ SỞ DỮ LIỆU sinh viên

Các ' TẠO BẢNG ' Tuyên bố

Như tên cho thấy, câu lệnh này được sử dụng để tạo một bảng.

Cú pháp

TẠO BẢNG Tên bảng (Kiểu dữ liệu Cột1, Kiểu dữ liệu Cột2, Kiểu dữ liệu Cột 3, .... Kiểu dữ liệu ColumnN)

Thí dụ

TẠO BẢNG StudentInfo (StudentID int, StudentName varchar (8000), ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000), City varchar (8000), Country varchar (8000))

RƠI VÃI

Câu lệnh này được sử dụng để loại bỏ một bảng, cơ sở dữ liệu hoặc dạng xem hiện có.

Tuyên bố ‘DROP DATABASE’

Câu lệnh này được sử dụng để loại bỏ một cơ sở dữ liệu hiện có. Thông tin đầy đủ có trong cơ sở dữ liệu sẽ bị mất ngay khi bạn thực hiện lệnh dưới đây.

Cú pháp

DROP DATABASE DatabaseName

Thí dụ

DROP DATABASE học sinh

Tuyên bố 'DROP TABLE'

Câu lệnh này được sử dụng để loại bỏ một bảng hiện có. Thông tin đầy đủ có trong bảng sẽ bị mất ngay sau khi bạn thực hiện lệnh dưới đây.

Cú pháp

DROP TABLE TableName

Thí dụ

DROP TABLE StudentInfo

TUỔI TÁC

Lệnh ALTER được sử dụng để thêm, xóa hoặc sửa đổi các cột hoặc ràng buộc trong bảng hiện có.

Các ' BẢNG ALTER ' Tuyên bố

Câu lệnh này được sử dụng để thêm, xóa, sửa đổi các cột trong bảng đã có từ trước.

Câu lệnh ‘ALTER TABLE’ với ADD / DROP COLUMN

Câu lệnh ALTER TABLE được sử dụng với lệnh ADD / DROP Column để thêm và xóa một cột.

Cú pháp

ALTER TABLE TableName ADD ColumnName Datatype ALTER TABLE TableName DROP COLUMN ColumnName

Thí dụ

--ADD Column BloodGroup: ALTER TABLE StudentInfo ADD BloodGroup varchar (8000) --DROP Column BloodGroup: ALTER TABLE StudentInfo DROP COLUMN BloodGroup

Câu lệnh 'ALTER TABLE' với ALTER COLUMN

Câu lệnh ALTER TABLE có thể được sử dụng với cột ALTER để thay đổi kiểu dữ liệu của cột hiện có trong bảng.

Cú pháp

ALTER TABLE TableName ALTER COLUMN ColumnName Datatype

Thí dụ

- Thêm DOB cột và thay đổi kiểu dữ liệu từ ngày thành giờ. ALTER TABLE StudentInfo THÊM DOB ngày ALTER TABLE StudentInfo ALTER COLUMN DOB datetime

TRUNCATE

Lệnh SQL này được sử dụng để xóa thông tin có trong bảng nhưng không xóa chính bảng đó. Vì vậy, nếu bạn muốn xóa thông tin có trong bảng và không xóa chính bảng đó, bạn phải sử dụng lệnh TRUNCATE. Nếu không, hãy sử dụng lệnh DROP.

Cú pháp

TRUNCATE TABLE TableName

Thí dụ

BẢNG TRUNCATE StudentInfo

ĐỔI TÊN

Câu lệnh này được sử dụng để đổi tên một hoặc nhiều bảng.

Cú pháp

sp_rename 'OldTableName', 'NewTableName'

Thí dụ

sp_rename 'StudentInfo', 'Infostudents'

Tiếp tục trong bài viết này về hướng dẫn SQL Server, chúng ta hãy hiểu các kiểu dữ liệu khác nhau được SQL Server hỗ trợ.

Các kiểu dữ liệu SQL Server

Loại dữ liệu Tên loại dữ liệu Sự miêu tả Phạm vi / Cú pháp
Số chính xác sốĐược sử dụng để lưu trữ các giá trị số và có số tỷ lệ và độ chính xác cố định- 10 ^ 38 +1 đến 10 ^ 38 - 1.
tí honĐược sử dụng để lưu trữ các giá trị số nguyên0 đến 255
lửaĐược sử dụng để lưu trữ các giá trị số nguyên-2 ^ 15 (-32,768) đến 2 ^ 15-1 (32,767)
bigintĐược sử dụng để lưu trữ các giá trị số nguyên-2 ^ 63 (-9,223,372,036,854,775,808) đến 2 ^ 63-1 (9,223,372,036,854,775,807)
intĐược sử dụng để lưu trữ các giá trị số nguyên-2 ^ 31 (-2,147,483,648) đến 2 ^ 31-1 (2,147,483,647)
bitLưu trữ một kiểu dữ liệu số nguyên có giá trị 0, 1 hoặc NULL0, 1 hoặc NULL
thập phânĐược sử dụng để lưu trữ các giá trị số và có số tỷ lệ và độ chính xác cố định- 10 ^ 38 +1 đến 10 ^ 38 - 1.
tiền nhỏĐược sử dụng để lưu trữ tiền tệhoặc giá trị tiền tệ.- 214.748.3648 đến 214.748.3647
tiền bạcĐược sử dụng để lưu trữ tiền tệhoặc giá trị tiền tệ.-922.337.203.685.477.5808 đến 922.337.203.685.477.5807 (-922.337.203.685.477,58
tới 922.337.203.685.477,58 cho Informatica.
Số gần đúng Phao nổiĐược sử dụng để lưu trữ dữ liệu số dấu phẩy động- 1,79E + 308 đến -2,23E-308, 0 và 2,23E-308 đến 1,79E + 308
thực tếĐược sử dụng để lưu trữ dữ liệu số dấu phẩy động- 3,40E + 38 đến -1,18E - 38, 0 và 1,18E - 38 đến 3,40E + 38
Ngày và giờ ngàyĐược sử dụng để xác định ngày trong SQL Server.Cú pháp: ngày
smalldatetimeĐược sử dụng để xác định một ngày được kết hợp với một thời gian trong ngày mà thời gian dựa trên một ngày 24 giờ, với giây luôn là 0 (: 00) và không có giây phân số.Cú pháp: smalldatetime
ngày giờĐược sử dụng để xác định ngày được kết hợp với thời gian trong ngày với giây phân số dựa trên đồng hồ 24 giờ.Cú pháp: datetime
datetime2 datetime2 là một phần mở rộng của hiện tại ngày giờ loại có độ chính xác phân số mặc định lớn hơn, phạm vi ngày nhỏ hơn.Cú pháp: datetime2
datetimeoffsetĐược sử dụng để xác định ngày được kết hợp với thời gian trong ngày có nhận biết múi giờ. Nó dựa trên đồng hồ 24 giờ.Cú pháp: datetimeoffset
thời gianĐược sử dụng để xác định thời gian trong ngày.Cú pháp: time
Chuỗi ký tự charĐược sử dụng để lưu trữ các ký tự có kích thước cố định.char[( n )] trong đó giá trị n thay đổi từ 1 - 8.000
varcharĐược sử dụng để lưu trữ các ký tự có độ dài thay đổi.varchar [( n | tối đa)] trong đó giá trị n thay đổi từ 1-8000 và bộ nhớ tối đa được phép là 2GB.
bản vănDùng để đựng vdữ liệu không phải Unicode có độ dài ariableĐộ dài chuỗi tối đa cho phép - 2 ^ 31-1 (2.147.483.647)
Chuỗi ký tự Unicode ncharĐược sử dụng để lưu trữ các ký tự có kích thước cố định.nchar[(n)] trong đó giá trị n thay đổi từ 1-4000
nvarcharĐược sử dụng để lưu trữ các ký tự có độ dài thay đổi.varchar [( n | tối đa)] trong đó giá trị n thay đổi từ 1-4000 và bộ nhớ tối đa được phép là 2GB.
ntextĐược sử dụng để lưu trữ dữ liệu Unicode có độ dài thay đổiĐộ dài chuỗi tối đa cho phép - 2 ^ 30-1 (2.147.483.647)
Chuỗi nhị phân nhị phânĐược sử dụng để lưu trữ các kiểu dữ liệu nhị phân có độ dài cố địnhnhị phân[( n )] trong đó giá trị n thay đổi từ 1 - 8.000
varbinaryĐược sử dụng để lưu trữ các kiểu dữ liệu nhị phân có độ dài cố địnhvarbinary[( n )] trong đó n vale thay đổi từ 1-8000 và dung lượng lưu trữ tối đa cho phép là 2 ^ 31-1 byte.
hình ảnhĐược sử dụng để lưu trữ dữ liệu nhị phân có độ dài thay đổi0 - 2 ^ 31-1 (2,147,483,647) byte
Các kiểu dữ liệu khác Nó là kiểu dữ liệu cho các tham số OUTPUT của thủ tục được lưu trữ hoặc các biến có chứa tham chiếu đến con trỏ.-
lộn xộnĐược sử dụng để hiển thị các số nhị phân duy nhất, được tạo tự động trong cơ sở dữ liệu.-
thứ bậcĐược sử dụng để biểu thị vị trí trong hệ thống phân cấp.-
định danh duy nhấtLà một GUID 16 byte.Cú pháp:định danh duy nhất
sql_variantĐược sử dụng để lưu trữ các giá trị của nhiều kiểu dữ liệu được SQL Server hỗ trợCú pháp: sql_variant
xmlĐược sử dụng để lưu trữ kiểu dữ liệu XML.

xml ([CONTENT | DOCUMENT] xml_schemacollection)

Các loại hình học không gianĐược sử dụng để biểu diễn dữ liệu trong một hệ tọa độ Euclid (phẳng).-
Các loại địa lý không gianĐược sử dụng để lưu trữ dữ liệu hình elip (hình tròn), chẳng hạn như kinh độ và vĩ độ GPS.-
bànĐược sử dụng để lưu trữ một tập hợp kết quả để xử lý sau này-

Tiếp theo, trong bài này chúng ta hãy hiểu các loại khóa và ràng buộc khác nhau trong cơ sở dữ liệu.

Các loại khóa khác nhau trong cơ sở dữ liệu

Sau đây là các loại khóa khác nhau được sử dụng trong cơ sở dữ liệu:

  • Khóa ứng viên - Khóa ứng viên là một tập hợp các thuộc tính có thể xác định duy nhất một bảng. Một bảng có thể có nhiều hơn một khóa ứng viên và trong số các khóa ứng viên đã chọn, một khóa được chọn làm Khóa chính.
  • Chìa khóa siêu cấp - Tập hợp các thuộc tính có thể xác định duy nhất một bộ giá trị. Vì vậy, khóa ứng viên, khóa duy nhất và khóa chính là siêu khóa, nhưng ngược lại thì không đúng.
  • Khóa chính - Khóa chính được sử dụng để xác định duy nhất mọi bộ giá trị.
  • Khóa thay thế - Khóa thay thế là những khóa ứng viên không được chọn làm khóa chính.
  • Khóa duy nhất- Các khóa duy nhất tương tự như khóa chính, nhưng cho phép một giá trị NULL duy nhất trong cột.
  • Khóa ngoài - Một thuộc tính chỉ có thể nhận các giá trị hiện tại làm giá trị của một số thuộc tính khác, là khóa ngoại cho thuộc tính mà nó tham chiếu đến.
  • Tổ hợp phím- Khóa tổng hợp là sự kết hợp của hai hoặc nhiều cột xác định từng bộ mã duy nhất.

Các ràng buộc được sử dụng trong cơ sở dữ liệu

Ràng buộc được sử dụng trong cơ sở dữ liệu để chỉ định các quy tắc cho dữ liệu được lưu trữ trong bảng. Các loại khác nhau của ràng buộc trong SQL như sau:

CÓ GIÁ TRỊ

Ràng buộc NOT NULL đảm bảo rằng một cột không thể có giá trị NULL.

Thí dụ

TẠO BẢNG StudentInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000)) - KHÔNG NULL trên ALTER TABLE ALTER TABLE StudentsInfo ALTER COLUMN PhoneNumber int NOT NULL

ĐỘC NHẤT

Ràng buộc này đảm bảo rằng tất cả các giá trị trong một cột là duy nhất.

Thí dụ

--UNIQUE trên Create Table CREATE TABLE StudentsInfo (StudentID int NOT NULL UNIQUE, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar ( 8000)) --UNIQUE trên nhiều cột TẠO BẢNG BẢNG SINH VIÊN (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000) CONSTRAINT UC_Student_Info UNIQUE (StudentID, PhoneNumber)) --UNIQUE trên ALTER TABLE ALTER TABLE StudentsInfo THÊM DUY NHẤT (StudentID) --Để thả một ràng buộc DUY NHẤT ALTER TABLE StudentsInfo DROP CONSTRAINT UC_Student_Info

KIỂM TRA

Ràng buộc CHECK đảm bảo rằng tất cả các giá trị trong một cột thỏa mãn một điều kiện cụ thể.

Thí dụ

--CHECK Ràng buộc trên CREATE TABLE CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar ( 8000) KIỂM TRA (Quốc gia = 'Ấn Độ')) - KIỂM TRA Ràng buộc trên nhiều cột TẠO BẢNG StudentInfo (StudentID int NOT NULL, StudentName varchar8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000) CHECK (Country = 'India' AND City = 'Hyderabad')) --CHECK Ràng buộc trên ALTER TABLE ALTER TABLE StudentsInfo THÊM KIỂM TRA (Quốc gia = 'Ấn Độ') --Để đưa ra đặt tên cho BẢNG BÁO CÁO Ràng buộc KIỂM TRA Học sinhInfo THÊM ĐỐI TƯỢNG KIỂM TRA Tên địa chỉ Kiểm tra (Quốc gia = 'Ấn Độ') --Để bỏ BẢNG BÁO GIÁ Ràng buộc CHECK Sinh viênInfo DROP CONSTRAINT CheckConstraintName

MẶC ĐỊNH

Ràng buộc DEFAULT bao gồm một tập hợp các giá trị mặc định cho một cột khi không có giá trị nào được chỉ định.

Thí dụ

Ràng buộc --DEFAULT trên CREATE TABLE CREATE TABLE StudentsInfo (StudentID int, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000) DEFAULT 'India') - Ràng buộc trên ALTER TABLE ALTER TABLE StudentsInfo ADD CONSTRAINT defau_Country DEFAULT 'India' FOR Country --Để loại bỏ Ràng buộc mặc định ALTER TABLE StudentsInfo ALTER COLUMN Country DROP defau_Country

MỤC LỤC

Các Hạn chế INDEX được dùng để tạo các chỉ mục trong bảng, qua đó bạn có thể tạo và lấy dữ liệu từ cơ sở dữ liệu rất nhanh chóng.

Cú pháp

--Tạo Chỉ mục trong đó cho phép các giá trị trùng lặp TẠO CHỈ SỐ Tên chỉ mục TRÊN Tên bảng (Cột1, Cột2, ... CộtN) - Tạo Chỉ mục không cho phép các giá trị trùng lặp TẠO CHỈ SỐ DUY NHẤT Tên chỉ mục TRÊN Tên bảng (Cột1, Cột2, ... CộtN)

Thí dụ

TẠO CHỈ SỐ IMPEX_StudentName ON StudentsInfo (StudentName) - Để xóa chỉ mục trong bảng DROP INDEX StudentsInfo.idex_StudentName

Tiếp tục trong bài viết này về hướng dẫn SQL Server, bây giờ chúng ta hãy hiểu các lệnh Ngôn ngữ thao tác dữ liệu khác nhau được sử dụng trong Microsoft SQL Server.

Lệnh ngôn ngữ thao tác dữ liệu

Phần này của bài viết sẽ trình bày tất cả các lệnh mà bạn có thể thao tác với cơ sở dữ liệu. Các lệnh như sau:

Ngoài các lệnh này, còn có các toán tử / hàm thao tác khác như:

SỬ DỤNG

Câu lệnh này được sử dụng để chọn cơ sở dữ liệu để bắt đầu thực hiện các hoạt động khác nhau trên nó.

Cú pháp

SỬ DỤNG DatabaseName

Thí dụ

SỬ DỤNG Học sinh

CHÈN VÀO

Các INSERT INTO tuyên bố được sử dụng để chèn các bản ghi mới vào một bảng hiện có.

Cú pháp

INSERT INTO TableName (Column1, Column2, Column3, ..., ColumnN) CÁC GIÁ TRỊ (value1, value2, value3, ...) -Nếu bạn không muốn đề cập đến các tên cột thì hãy sử dụng cú pháp dưới đây CHÈN VÀO CÁC GIÁ TRỊ Tên cột (Giá trị1, Giá trị2, Giá trị 3, ...)

Thí dụ

INSERT INTO StudentsInfo (StudentID, StudentName, ParentName, PhoneNumber, AddressofStudent, City, Country) GIÁ TRỊ ('06', 'Sanjana', 'Kapoor', '9977331199', 'Buffalo Street House No 10', 'Kolkata', 'India ') CHÈN VÀO CÁC GIÁ TRỊ CỦA SINH VIÊN (' 07 ',' Vishal ',' Mishra ',' 9876509712 ',' Nice Road 15 ',' Pune ',' India ')

CẬP NHẬT

Câu lệnh UPDATE được sử dụng để sửa đổi hoặc cập nhật các bản ghi đã có trong bảng.

Cú pháp

CẬP NHẬT TableName SET Column1 = Value1, Column2 = Value2, ... WHERE Điều kiện

Thí dụ

CẬP NHẬT StudentInfo SET StudentName = 'Aahana', City = 'Ahmedabad' WHERE StudentID = 1

XÓA BỎ

Câu lệnh DELETE được sử dụng để xóa các bản ghi hiện có trong bảng.

Cú pháp

XÓA khỏi TableName WHERE Tình trạng

Thí dụ

XÓA khỏi StudentsInfo WHERE StudentName = 'Aahana'

ĐI

Câu lệnh MERGE được sử dụng để thực hiện các thao tác INSERT, UPDATE và DELETE trên một bảng cụ thể, nơi cung cấp bảng nguồn. Tham khảo bên dưới.

Cú pháp

MERGE TagretTableName SỬ DỤNG SourceTableName TRÊN MergeCondition KHI ĐƯỢC KẾT HỢP THÌ Update_Statement KHI CHƯA ĐƯỢC KẾT HỢP THÌ Insert_Statement KHI CHƯA ĐƯỢC PHÉP THEO NGUỒN SAU KHI XÓA

Thí dụ

Để hiểu câu lệnh MERGE, hãy coi các bảng sau là bảng Nguồn và bảng Mục tiêu.

Bảng Nguồn:

Thẻ học sinh Tên học sinh Điểm
mộttôi ghét87
2Manasa92
4Anay74

Bảng mục tiêu:

Thẻ học sinh Tên học sinh Điểm
mộttôi ghét87
2Manasa67
3Saurabh55
MỤC TIÊU MERGE SampleTargetTable SỬ DỤNG NGUỒN SampleSourceTable BẬT (TARGET.StudentID = SOURCE.StudentID) KHI ĐƯỢC KẾT HỢP VÀ TARGET.StudentName SOURCE. KHI KHÔNG ĐƯỢC ĐỐI VỚI MỤC TIÊU THÌ CHÈN (StudentID, StudentName, Marks) CÁC GIÁ TRỊ (SOURCE.StudentID, SOURCE.StudentName, SOURCE.Marks) KHI KHÔNG ĐƯỢC PHÉP THEO NGUỒN SAU KHI XÓA

Đầu ra

Thẻ học sinh Tên học sinh Điểm
mộttôi ghét87
2Manasa92
4Anay74

LỰA CHỌN

Các Câu lệnh SELECT được sử dụng để chọn dữ liệu từ cơ sở dữ liệu, bảng hoặc dạng xem. Dữ liệu trả về được lưu trữ trong một bảng kết quả, được gọi là tập hợp kết quả .

Cú pháp

SELECT Column1, Column2, ... ColumN FROM TableName - (*) được sử dụng để chọn tất cả từ bảng SELECT * FROM table_name - Để chọn số lượng bản ghi để trả về, sử dụng: SELECT TOP 3 * FROM TableName

Thí dụ

- Để chọn vài cột SELECT StudentID, StudentName FROM StudentsInfo - (*) được dùng để chọn tất cả từ bảng SELECT * FROM StudentsInfo - Để chọn số lượng bản ghi cần trả về, sử dụng: CHỌN ĐẦU 3 * FROM StudentsInfo

Chúng ta cũng có thể sử dụng các từ khóa sau với câu lệnh SELECT:

DISTINCT

Từ khóa DISTINCT được sử dụng với câu lệnh SELECT để chỉ trả về các giá trị khác nhau.

Cú pháp

CHỌN DISTINCT Column1, Column2, ... ColumnN FROM TableName

Thí dụ

CHỌN SỐ ĐIỆN THOẠI DISTINCT TỪ StudentsInfo

ĐẶT BỞI

Câu lệnh này được sử dụng để sắp xếp các kết quả cần thiết theo thứ tự tăng dần hoặc giảm dần. Theo mặc định, kết quả được lưu trữ theo thứ tự tăng dần. Tuy nhiên, nếu bạn muốn nhận được kết quả theo thứ tự giảm dần, bạn phải sử dụng DESC từ khóa.

Cú pháp

CHỌN Column1, Column2, ... ColumnN from TableName ORDER BY Column1, Column2, ... ASC | DESC

Thí dụ

- Chọn tất cả học sinh từ bảng 'StudentsInfo' được sắp xếp theo ParentName: CHỌN * TỪ LỆNH CỦA StudentsInfo THEO ParentName - Chọn tất cả học sinh từ bảng 'StudentsInfo' được sắp xếp theo ParentName theo thứ tự giảm dần: CHỌN * TỪ LỆNH CỦA StudentsInfo THEO ParentName DESC - Chọn tất cả học sinh từ bảng 'StudentsInfo' được sắp xếp theo ParentName và StudentName: CHỌN * TỪ LỆNH CỦA StudentInfo THEO ParentName, StudentName / * Chọn tất cả học sinh từ bảng 'StudentsInfo' được sắp xếp theo ParentName theo thứ tự giảm dần và StudentName theo thứ tự tăng dần: * / SELECT * ĐẶT HÀNG TỪ StudentInfo THEO ParentName ASC, StudentName DESC

NHÓM THEO

Câu lệnh này được sử dụng với Chức năng tổng hợp để nhóm tập hợp kết quả theo một hoặc nhiều cột.

Cú pháp

CHỌN Column1, Column2, ..., ColumnN from TableName WHERE Điều kiện NHÓM THEO (các) Tên cột Thứ tự theo (các) Tên cột

Thí dụ

- Liệt kê số lượng sinh viên từ mỗi thành phố. CHỌN ĐẾM (StudentID), Thành phố TỪ NHÓM StudentInfo THEO Thành phố

BỘ NHÓM

TẬP HỢP NHÓM đã được giới thiệu trong SQL Server 2008, được sử dụng để tạo tập hợp kết quả có thể được tạo bởi ĐOÀN KẾT TẤT CẢ của nhiều mệnh đề GROUP BY đơn giản.

Cú pháp

CHỌN (các) Tên Cột TỪ NHÓM Tên Bảng BẰNG BỘ NHÓM ((Các) Tên Cột)

Thí dụ

CHỌN StudentID, StudentName, COUNT (City) từ StudentsInfo Group BẰNG BỘ NHÓM ((StudentID, StudentName, City), (StudentID), (StudentName), (City))

ĐANG CÓ

Mệnh đề này được sử dụng trong trường hợp Từ khóa WHERE không thể được sử dụng.

vai trò và trách nhiệm của quản trị viên linux

Cú pháp

CHỌN (Các) Tên Cột TỪ Tên Bảng Ở đó Điều kiện NHÓM THEO (Các) Tên Tên Có Thứ tự Điều kiện Theo (Các) Tên Cột

Thí dụ

CHỌN ĐẾM (StudentID), Thành phố TỪ NHÓM StudentsInfo THEO Thành phố CÓ ĐẾM ĐẾM (StudentID)> 2 LỆNH THEO ĐẾM (StudentID)

VÀO

Từ khóa INTO có thể được sử dụng với Câu lệnh SELECT để sao chép dữ liệu từ bảng này sang bảng khác. À, bạn có thể hiểu các bảng này là bảng tạm thời. Các bảng tạm thời thường được sử dụng để thực hiện các thao tác trên dữ liệu có trong bảng mà không làm ảnh hưởng đến bảng gốc.

Cú pháp

CHỌN * VÀO NewTable [IN ExternalDB] TỪ OldTable WHERE Điều kiện

Thí dụ

- Để tạo bản sao lưu của bảng 'StudentsInfo' CHỌN * INTO StudentsBackup from StudentsInfo - Để chỉ chọn một vài cột từ StudentInfo SELECT StudentName, PhoneNumber INTO StudentsDetails FROM StudentsInfo SELECT * INTO PuneStudents FROM StudentsInfo WHERE City = 'Pune'

CUBE

CUBE là một phần mở rộng của Mệnh đề GROUP BY . Nó cho phép bạn tạo tổng phụ cho tất cả các kết hợp của các cột nhóm được chỉ định trong mệnh đề GROUP BY.

Cú pháp

CHỌN (Các) Tên Cột TỪ NHÓM Tên Bảng BẰNG CUBE (Tên Cột1, Tên Cột2, ....., Tên Cột)

Thí dụ

CHỌN ID Student, COUNT (Thành phố) TỪ NHÓM StudentInfo THEO LỆNH CUBE (StudentID) THEO StudentID

ROLLUP

ROLLUP là phần mở rộng của mệnh đề GROUP BY. Điều này cho phép bạn bao gồm các hàng bổ sung đại diện cho tổng phụ. Chúng được gọi là hàng siêu tổng hợp cùng với hàng tổng lớn.

Cú pháp

CHỌN (các) Tên Cột TỪ NHÓM Tên Bảng BẰNG ROLLUP (Tên Cột 1, Tên Cột 2, ....., Tên Cột)

Thí dụ

CHỌN ID Student, COUNT (Thành phố) TỪ NHÓM StudentsInfo THEO ROLLUP (StudentID)

BÙ LẠI

Mệnh đề OFFSET được sử dụng với SELECT và ORDER BY tuyên bố để truy xuất một loạt các bản ghi. Nó phải được sử dụng với mệnh đề ORDER BY vì nó không thể được sử dụng riêng. Ngoài ra, phạm vi mà bạn đề cập phải bằng hoặc lớn hơn 0. Nếu bạn đề cập đến giá trị âm, thì phạm vi đó sẽ hiển thị lỗi.

Cú pháp

CHỌN Tên Cột) TỪ Tên Bảng ĐÓ ĐIỀU KIỆN ĐẶT HÀNG THEO (Các) Tên Tên Cột TẮT DÒNG HàngToS Bỏ qua ROWS

Thí dụ

Xem xét một cột mới Điểm bên trong StudentInfo bàn.

CHỌN Tên Học Sinh, Tên Phụ Huynh TỪ LỆNH CỦA StudentInfo BẰNG Dấu hiệu OFFSET 1 ROWS

TÌM KIẾM

Mệnh đề FETCH được sử dụng để trả về một tập hợp một số hàng. Nó phải được sử dụng cùng với mệnh đề OFFSET.

Cú pháp

CHỌN Tên Cột) TỪ Tên Bảng Ở đó Điều kiện ĐẶT HÀNG THEO (Các) Tên Tên Hàng TẮT ĐẶT HÀNGToS Bỏ qua SỐ TIẾP THEO

Thí dụ

CHỌN Tên Sinh Viên, Tên Mẹ Từ Thứ Tự ORDER trongfo của Sinh Viên BẰNG Dấu Hiệu OFFSET 1 ROWS CHỈ TỚI 1 ROWS TIẾP THEO

HÀNG ĐẦU

Mệnh đề TOP được sử dụng với câu lệnh SELECT để đề cập đến số lượng bản ghi cần trả về.

Cú pháp

CHỌN SỐ ĐẦU Cột Tên (Các) Tên TỪ Tên Bảng Ở ĐÂU Tình trạng

Thí dụ

CHỌN TOP 3 * TỪ StudentsInfo

TRỤC

PIVOT được sử dụng để xoay các hàng thành giá trị cột và chạy tổng hợp khi được yêu cầu trên các giá trị cột còn lại.

Cú pháp

CHỌN Tên cột không phân chia vị trí, [Tên cột được phân chia đầu tiên] Tên cột AS, [Tên cột được phân chia thứ hai] Tên cột AS, [Tên cột được phân chia thứ ba] Tên cột được phân chia cuối cùng, ... [Tên cột được phân chia cuối cùng] Tên cột AS từ (truy vấn CHỌN tạo ra dữ liệu) AS [bí danh cho truy vấn ban đầu] PIVOT ([AggregationFunction] (ColumName) FOR [ColumnName của cột có giá trị sẽ trở thành tiêu đề cột] IN ([Tên cột được phân chia đầu tiên], [Tên cột được chia vòng thứ hai], [Tên cột được phân chia thứ ba] ... [cuối cùng cột xoay])) AS [bí danh cho Bảng tổng hợp]

Thí dụ

Để lấy ví dụ chi tiết, bạn có thể tham khảo bài viết của tôi về SQL PIVOT và UNPIVOT . Tiếp theo trong Hướng dẫn SQL Server này, chúng ta hãy xem xét các toán tử khác nhau được Microsoft SQL Server hỗ trợ.

Các nhà khai thác

Các các loại toán tử khác nhau được hỗ trợ bởi SQL Server như sau:

Hãy để chúng tôi thảo luận về từng cái một.

Toán tử số học

Nhà điều hành Ý nghĩa Cú pháp

+

Thêm vào

biểu thức + biểu thức

-

Phép trừ

biểu thức - biểu thức

*

Phép nhân

biểu thức * biểu thức

/

Divison

biểu thức / biểu thức

%

Vừa phải

biểu thức% biểu thức

Người điều hành nhiệm vụ

Nhà điều hành Ý nghĩa Cú pháp

=

Gán giá trị cho một biến

biến = 'giá trị'

Toán tử Bitwise

Nhà điều hành Ý nghĩa Cú pháp

& (Bitwise AND)

Được sử dụng để thực hiện phép toán AND logic bit giữa hai giá trị số nguyên.

biểu thức & biểu hiện

& = (Bitwise AND Assignment)

Được sử dụng để thực hiện phép toán AND logic bit giữa hai giá trị số nguyên. Nó cũng đặt một giá trị cho đầu ra của hoạt động.

biểu thức & = biểu thức

| (Bitwise HOẶC)

Được sử dụng để thực hiện phép toán OR logic theo bit giữa hai giá trị nguyên khi được dịch sang biểu thức nhị phân trong các câu lệnh Transact-SQL.

biểu thức | biểu hiện

| = (Bitwise HOẶC Phép gán)

Được sử dụng để thực hiện phép toán OR logic theo bit giữa hai giá trị nguyên khi được dịch sang biểu thức nhị phân trong các câu lệnh Transact-SQL. Nó cũng đặt một giá trị cho đầu ra của hoạt động.

biểu thức | = biểu thức

^ (Độc quyền Bitwise HOẶC)

Được sử dụng để thực hiện phép toán OR loại trừ theo bit giữa hai giá trị số nguyên.

biểu thức ^ biểu thức

^ = (Độc quyền hoặc chuyển nhượng Bitwise)

Được sử dụng để thực hiện phép toán OR loại trừ theo bit giữa hai giá trị số nguyên. Nó cũng đặt một giá trị cho đầu ra của hoạt động.

biểu thức ^ = biểu thức

~ (Bitwise KHÔNG)

Được sử dụng để thực hiện phép toán NOT logic theo bit trên một giá trị số nguyên.

~ biểu thức

Toán tử so sánh

Nhà điều hành Ý nghĩa Cú pháp

=

Tương đương với

biểu thức = biểu thức

>

Lớn hơn

biểu thức> biểu thức

<

Ít hơn

biểu hiện

> =

Lớn hơn hoặc bằng

biểu thức> = biểu thức

<=

Ít hơn hoặc bằng

biểu hiện<= expression

Không bằng

biểu cảm

! =

Không bằng

biểu thức! = biểu thức

!<

Không ít hơn

biểu hiện !

!>

Không lớn hơn

biểu thức!> biểu thức

Toán tử phức hợp

Nhà điều hành Ý nghĩa Cú pháp

+ =

Được sử dụng để thêm giá trị vào giá trị ban đầu và đặt giá trị ban đầu vào kết quả.

biểu thức + = biểu thức

- =

Được sử dụng để trừ một giá trị khỏi giá trị ban đầu và đặt giá trị ban đầu thành kết quả.

biểu thức - = biểu thức

* =

Dùng để nhân giá trị với giá trị ban đầu và đặt giá trị ban đầu thành kết quả.

biểu thức * = biểu thức

/ =

Được sử dụng để chia một giá trị từ giá trị ban đầu và đặt giá trị ban đầu cho kết quả.

biểu thức / = biểu thức

% =

Được sử dụng để chia một giá trị từ giá trị ban đầu và đặt giá trị ban đầu cho kết quả.

biểu thức% = biểu thức

& =

Được sử dụng để thực hiện thao tác theo bitwise AND và đặt giá trị ban đầu cho kết quả.

biểu thức & = biểu thức

^ =

Được sử dụng để thực hiện thao tác OR loại trừ bit và đặt giá trị ban đầu cho kết quả.

biểu thức ^ = biểu thức

| =

Được sử dụng để thực hiện thao tác OR bitwise và đặt giá trị ban đầu cho kết quả.

biểu thức | = biểu thức

Toán tử logic

Nhà điều hành Ý nghĩa Cú pháp

TẤT CẢ

Trả về TRUE nếu tất cả các tập hợp so sánh là TRUE.

scalar_expression! = ALL (truy vấn con)

Trả về TRUE nếu cả hai biểu thức đều TRUE.

boolean_expression VÀ boolean_expression

BẤT KÌ

Trả về TRUE nếu bất kỳ một trong số các phép so sánh là TRUE.

biểu thức vô hướng! = {ANY} (truy vấn con)

GIỮA

Trả về TRUE nếu một toán hạng nằm trong một phạm vi.

biểu thức mẫu [KHÔNG] GIỮA biểu thức đầu ra VÀ biểu thức cuối

TỒN TẠI

Trả về TRUE nếu truy vấn con chứa bất kỳ hàng nào.

TỒN TẠI (truy vấn phụ)

TRONG

Trả về TRUE nếu một toán hạng bằng một trong danh sách các biểu thức.

test_expression [NOT] IN (truy vấn con | biểu thức [,… n])

GIỐNG

Trả về TRUE nếu một toán hạng khớp với một mẫu.

match_expression [NOT] LIKE mẫu [ESCAPE Escape_character]

KHÔNG PHẢI

Đảo ngược giá trị của bất kỳ toán tử boolean nào.

[NOT] boolean_expression

HOẶC LÀ

Trả về TRUE nếu một trong hai biểu thức boolean là TRUE.

boolean_expression HOẶC boolean_expression

MỘT SỐ

Trả về TRUE nếu một số trong tập hợp các phép so sánh là TRUE.

biểu thức vô hướng<= { SOME} ( subquery )

Toán tử phân giải phạm vi

Nhà điều hành Ý nghĩa Thí dụ

::

Cung cấp quyền truy cập vào các thành viên tĩnh của kiểu dữ liệu phức hợp. Kiểu dữ liệu kết hợp là những kiểu dữ liệu chứa nhiều phương thức và kiểu dữ liệu đơn giản. Các kiểu dữ liệu tổng hợp Những kiểu này bao gồm các kiểu CLR được tích hợp sẵn và các kiểu SQLCLR tùy chỉnh do người dùng xác định (UDT).

DECLARE @hid hierarchyid SELECT @hid = hierarchyid :: GetRoot () PRINT @ hid.ToString ()

Đặt toán tử

Chủ yếu có ba hoạt động tập hợp:LIÊN HIỆP,GIAO NHAU,DẤU TRỪ. Bạn có thể tham khảo hình bên dưới để hiểu các thao tác thiết lập trong SQL. Tham khảo hình ảnh bên dưới:

Nhà điều hành Ý nghĩa Cú pháp

LIÊN HIỆP

Toán tử UNION được sử dụng để kết hợp tập kết quả của hai hoặc nhiều câu lệnh SELECT.

CHỌN (các) Tên Cột TỪ Bảng1
LIÊN HIỆP
CHỌN (các) Tên Cột TỪ Bảng2

GIAO NHAU

Mệnh đề INTERSECT được sử dụng để kết hợp haiLỰA CHỌNvà trả về phần giao nhau của các tập dữ liệu của cả hai câu lệnh SELECT.

CHỌN Cột1, Cột2….
TỪ TableName
Điều kiện WHERE
GIAO NHAU
CHỌN Cột1, Cột2….
TỪ TableName
Điều kiện WHERE

NGOẠI TRỪ

Toán tử EXCEPT trả về các bộ giá trị được trả về bởi hoạt động SELECT đầu tiên và không được trả về bởi hoạt động SELECT thứ hai.

CHỌN Tên cột
TỪ TableName
NGOẠI TRỪ
CHỌN Tên cột
TỪ TableName

Toán tử chuỗi

Nhà điều hành Ý nghĩa Cú pháp / Ví dụ

+ (Nối chuỗi)

Nối hai hoặc nhiều chuỗi ký tự hoặc chuỗi nhị phân, cột hoặc kết hợp chuỗi và tên cột thành một biểu thức duy nhất

biểu thức + biểu thức

+ = (Nối chuỗi)

Được sử dụng để nối hai chuỗi và đặt chuỗi thành kết quả của phép toán.

biểu thức + = biểu thức

% (Các ký tự đại diện để khớp)

Được sử dụng để khớp với bất kỳ chuỗi nào không hoặc nhiều ký tự.

Ví dụ: 'sample%'

[] (Các ký tự đại diện để khớp)

Được sử dụng để so khớp một ký tự trong phạm vi đã chỉ định hoặc tập hợp được chỉ định giữa dấu ngoặc [].

Ví dụ: m [n-z]% ’

[^] (Các ký tự đại diện để khớp)

Được sử dụng để so khớp một ký tự không nằm trong phạm vi hoặc tập hợp được chỉ định giữa các dấu ngoặc vuông.

Ví dụ: ‘Al [^ a]%’

_ (Ký tự đại diện để khớp)

Được sử dụng để so khớp một ký tự trong thao tác so sánh chuỗi

test_expression [NOT] IN (truy vấn con | biểu thức [,… n])

Tổng hợp Chức năng

Khác nhau Chức năng tổng hợp được hỗ trợ bởi SQL Server như sau:

Chức năng Sự miêu tả Cú pháp Thí dụ

TỔNG()

Được sử dụng để trả về tổng của một nhóm giá trị.

CHỌN SUM (Tên cột) TỪ Tên Bảng

CHỌN SUM (Marks) TỪ StudentsInfo

ĐẾM()

Trả về số hàng dựa trên điều kiện hoặc không có điều kiện.

CHỌN ĐẾM (ColumnName) TỪ TableName WHERE Điều kiện

CHỌN COUNT (StudentID) TỪ StudentsInfo

AVG ()

Dùng để tính giá trị trung bình của một cột số.

CHỌN AVG (Tên cột) TỪ Tên Bảng

CHỌN AVG (Marks) TỪ StudentsInfo

MIN ()

Hàm này trả về giá trị nhỏ nhất của một cột.

CHỌN MIN (ColumnName) TỪ TableName

CHỌN MIN (Marks) TỪ StudentsInfo

MAX ()

Trả về giá trị lớn nhất của một cột.

CHỌN TỐI ĐA (Tên cột) TỪ Tên Bảng

CHỌN TỐI ĐA (Điểm) TỪ StudentsInfo

ĐẦU TIÊN()

Dùng để trả về giá trị đầu tiên của cột.

CHỌN ĐẦU TIÊN (Tên cột) TỪ Tên Bảng

CHỌN (Điểm) ĐẦU TIÊN TỪ StudentsInfo

CUỐI CÙNG()

Hàm này trả về giá trị cuối cùng của cột.

CHỌN CUỐI (ColumnName) TỪ TableName

CHỌN (Marks) CUỐI CÙNG TỪ StudentsInfo

Chức năng do người dùng xác định

Microsoft SQL Server cho phép người dùng tạo các chức năng do người dùng xác định là các quy trình. Các quy trình này chấp nhận các tham số, có thể thực hiện các hành động đơn giản đến phức tạp và trả về kết quả của hành động cụ thể đó dưới dạng một giá trị. Ở đây, giá trị trả về có thể là một giá trị vô hướng đơn lẻ hoặc một tập kết quả hoàn chỉnh.

Bạn có thể sử dụng các hàm do người dùng xác định để:

  • Cho phép lập trình mô-đun
  • Giảm lưu lượng mạng
  • Cho phép thực hiện các truy vấn nhanh hơn

Ngoài ra, bạn có thể tạo các loại hàm do người dùng xác định khác nhau. Họ đang:

  • Chức năng vô hướng: Đã từngtrả về một giá trị dữ liệu duy nhất của kiểu được xác định trong mệnh đề RETURNS.
  • Các chức năng được định giá bằng bảng: Đã từngtrả lại mộtbànloại dữ liệu.
  • Chức năng hệ thống: Một loạt các chức năng hệ thống được SQL Server cung cấp để thực hiện các hoạt động khác nhau.

Chà, ngoài các hàm do người dùng định nghĩa, có một loạt các hàm tích hợp sẵn trong SQL Server có thể được sử dụng để thực hiện nhiều tác vụ khác nhau. Tiếp tục trong bài viết này về hướng dẫn SQL Server, bây giờ chúng ta hãy hiểu các truy vấn lồng nhau là gì.

Truy vấn lồng nhau

Truy vấn lồng nhau là những truy vấn có truy vấn bên ngoài và truy vấn con bên trong. Vì vậy, về cơ bản, truy vấn con là một truy vấn được lồng trong một truy vấn khác, chẳng hạn như SELECT, INSERT, UPDATE hoặc DELETE. Tham khảo hình ảnh bên dưới:

Tiếp theo trong hướng dẫn SQL Server này, chúng ta hãy hiểu các kiểu nối khác nhau trong SQL.

Tham gia

được sử dụng để kết hợp các bộ giá trị từ hai hoặc nhiều bảng, dựa trên một cột có liên quan giữa các bảng. Có bốn loại liên kết:

  • THAM GIA INNER: Trả về các bản ghi có giá trị phù hợp trong cả hai bảng.
  • CHỖ NỐI BÊN TRÁI: Trả về các bản ghi từ bảng bên trái và cả những bản ghi thỏa mãn điều kiện từ bảng bên phải.
  • THAM GIA ĐÚNG: Trả về các bản ghi từ bảng bên phải và cả những bản ghi thỏa mãn điều kiện từ bảng bên trái.
  • THAM GIA ĐẦY ĐỦ: Trả về các bản ghi có khớp trong bảng bên trái hoặc bên phải.

Hãy xem xét bảng sau cùng với bảng StudentsInfo, để hiểu cú pháp của phép nối.

SubjectID Thẻ học sinh Tên chủ đề
1010Toán học
2mười mộtVật lý
312Hóa học

THAM GIA INNER

Cú pháp

CHỌN (các) Tên cột TỪ Bảng1 INNER JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Thí dụ

CHỌN Môn học.SubjectID, StudentsInfo.StudentName TỪ Môn học INNER THAM GIA HSInfo TRÊN Môn học.StudentID = StudentsInfo.StudentID

CHỖ NỐI BÊN TRÁI

Cú pháp

CHỌN (các) Tên cột TỪ Bảng1 THAM GIA TRÁI Table2 TRÊN Table1.ColumnName = Table2.ColumnName

Thí dụ

CHỌN StudentInfo.StudentName, Subject.SubjectID TỪ StudentsInfo TRÁI THAM GIA Các môn học TRÊN StudentsInfo.SubjectID = Các môn học.SubjectID ĐẶT HÀNG THEO StudentsInfo.StudentName

THAM GIA QUYỀN

Cú pháp

CHỌN (các) Tên cột TỪ Bảng1 QUYỀN THAM GIA Table2 TRÊN Table1.ColumnName = Table2.ColumnName

Thí dụ

CHỌN StudentInfo.StudentName, Subject.SubjectID TỪ StudentsInfo QUYỀN THAM GIA Các môn học TRÊN StudentsInfo.SubjectID = Subject.SubjectID ĐẶT HÀNG CỦA HSInfo.StudentName

THAM GIA ĐẦY ĐỦ

Cú pháp

CHỌN (các) Tên cột TỪ Bảng1 FULL OUTER JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Thí dụ

SELECT StudentsInfo.StudentName, Subject.SubjectID FROM StudentsInfo FULL OUTER THAM GIA Các môn học TRÊN StudentsInfo.SubjectID = Các môn học.SubjectID ĐẶT HÀNG THEO HSInfo.StudentName

Tiếp theo, trong bài viết này về hướng dẫn SQL Server, chúng ta hãy hiểu các loại vòng lặp khác nhau được SQL Server hỗ trợ.

Vòng lặp

Các lệnh điều khiển luồng khác nhau như sau:

Hãy để chúng tôi thảo luận về từng cái một.

BEGIN..END

Các từ khóa này được sử dụng để bao gồm một loạt các câu lệnh SQL. Sau đó, nhóm câu lệnh SQL này có thể được thực thi.

Cú pháp

BEGIN StatementBlock END

PHÁ VỠ

Câu lệnh này được sử dụng để thoát khỏi vòng lặp WHILE hiện tại. Trong trường hợp, vòng lặp WHILE hiện tại được lồng bên trong một vòng lặp khác, thì câu lệnh BREAK chỉ thoát khỏi vòng lặp hiện tại và điều khiển được chuyển cho câu lệnh tiếp theo trong vòng lặp hiện tại. Câu lệnh BREAK thường được sử dụng bên trong câu lệnh IF.

Cú pháp

PHÁ VỠ

TIẾP TỤC

Câu lệnh CONTINUE được sử dụng để khởi động lại vòng lặp WHILE. Vì vậy, bất kỳ câu lệnh nào sau từ khóa CONTINUE sẽ bị bỏ qua.

Cú pháp

TIẾP TỤC

Ở đây, Nhãn là điểm mà sau đó quá trình xử lý bắt đầu nếu GOTO được nhắm mục tiêu đến nhãn cụ thể đó.

ĐI ĐẾN

Được sử dụng để thay đổi luồng thực thi đối với một nhãn. Các câu lệnh được viết sau từ khóa GOTO được bỏ qua và quá trình xử lý tiếp tục ở nhãn.

Cú pháp

Xác định nhãn: Nhãn: Thực hiện thay thế: Nhãn GOTO

Ở đây, Nhãn là điểm mà sau đó quá trình xử lý bắt đầu nếu GOTO được nhắm mục tiêu đến nhãn cụ thể đó.

NẾU KHÁC

Giống như bất kỳ ngôn ngữ lập trình nào khác, câu lệnh If-else trong SQL Server kiểm tra điều kiện và nếu điều kiện sai thì câu lệnh ‘else’ sẽ được thực thi.

Cú pháp

IF BooleanExpression StatementBlock [ELSE StatementBlock]

TRỞ VỀ

Được sử dụng để thoát vô điều kiện khỏi một truy vấn hoặc thủ tục. Vì vậy, các câu lệnh được viết sau mệnh đề RETURN sẽ không được thực thi.

Cú pháp

QUAY LẠI [Biểu thức số nguyên]

Ở đây, một giá trị số nguyên được trả về.

CHỜ

Luồng điều khiển WAITFOR được sử dụng để chặn việc thực hiện một thủ tục, giao dịch hoặc một lô được lưu trữ cho đến khi một câu lệnh cụ thể sửa đổi, trả về ít nhất một hàng hoặc một khoảng thời gian hoặc khoảng thời gian cụ thể trôi qua.

Cú pháp

WAITFOR (GetConversionGroupStatement)] [, thời gian chờ TIMEOUT]

Ở đâu,

  • SỰ CHẬM TRỄ - Khoảng thời gian phải trôi qua
  • TimeToPass - Prất nhiều thời gian để chờ đợi
  • THỜI GIAN - Cácthời gian khi thủ tục được lưu trữ, giao dịch hoặc lô chạy.
  • TimeToExecute - Cácthời gian mà câu lệnh WAITFOR kết thúc.
  • RecieveStatement - ĐẾNcâu lệnh RECEIVE hợp lệ.
  • GetConversionGroupStatement - ĐẾNcâu lệnh GET CONVERSATION GROUP hợp lệ.
  • TIMEOUT hết thời gian - Chỉ định khoảng thời gian, tính bằng mili giây, để đợi một tin nhắn đến hàng đợi.

TRONG KHI

Vòng lặp này được sử dụng để thiết lập một điều kiện để thực hiện lặp lại một câu lệnh SQL cụ thể hoặc một khối câu lệnh SQL. Các câu lệnh được thực thi miễn là điều kiện mà người dùng đề cập là ĐÚNG. Ngay sau khi điều kiện không thành công, vòng lặp sẽ ngừng thực hiện.

Cú pháp

WHILE BooleanExpression StatementBlock

Bây giờ, các bạn đã biết các lệnh DML, hãy chuyển sang phần tiếp theo của chúng tatrong bài viết này về Hướng dẫn SQL, tức là các lệnh DCL.

Lệnh ngôn ngữ điều khiển dữ liệu (DCL)

Phần này của hướng dẫn SQL Server sẽ cung cấp cho bạn ý tưởng về lệnh được sử dụng để thực thi bảo mật cơ sở dữ liệu trong nhiều môi trường cơ sở dữ liệu người dùng. Các lệnh như sau:

BAN CHO

Lệnh GRANT được sử dụng để cung cấp quyền truy cập hoặc đặc quyền trên cơ sở dữ liệu và các đối tượng của nó cho người dùng.

Cú pháp

CẤP Tên đặc quyền TRÊN Tên đối tượng thành Tên vai trò [VỚI TÙY CHỌN CẤP]

Ở đâu,

  • PrivilegeName - Là đặc quyền / quyền / quyền truy cập được cấp cho người dùng.
  • Tên của môn học - Tên của một đối tượng cơ sở dữ liệu như TABLE / VIEW / STORED PROC.
  • Tên tài khoản - Tên của người dùng được cấp quyền truy cập / quyền / đặc quyền.
  • CÔNG CỘNG - Cấp quyền truy cập cho tất cả người dùng.
  • RoleName - Tên của một tập hợp các đặc quyền được nhóm lại với nhau.
  • VỚI LỰA CHỌN CẤP - Cung cấp cho người dùng quyền truy cập để cấp quyền cho người dùng khác.

Thí dụ

- Cấp quyền SELECT đối với bảng StudentsInfo cho người dùng1 CẤP CHỌN TRÊN StudentsInfo CHO người dùng1

THU HỒI

Lệnh REVOKE được sử dụng để rút các đặc quyền truy cập của người dùng được cấp bằng cách sử dụng lệnh GRANT.

Cú pháp

KHÔI PHỤC Tên Đặc Quyền TRÊN Tên Đối Tượng TỪ CÔNG KHAI

Thí dụ

- Để thu hồi quyền đã cấp từ user1 REVOKE SELECT ON StudentsInfo TO user1

Tiếp tục trong hướng dẫn SQL Server này, hãy để chúng tôi hiểu cách tạo và sử dụng Thủ tục được lưu trữ.

Thủ tục lưu trữ

Thủ tục lưu trữ là các đơn vị có thể tái sử dụng đóng gói logic nghiệp vụ cụ thể của ứng dụng. Vì vậy, nó là một nhóm các câu lệnh SQL và logic, được biên dịch và lưu trữ cùng nhau để thực hiện một tác vụ cụ thể.

Cú pháp

TẠO [HOẶC THAY THẾ] PROCEDURE procedure_name [(tên_thông_số [IN | OUT | IN OUT] type [])] LÀ BẮT ĐẦU [phần khai báo] execute_section // Câu lệnh SQL được sử dụng trong thủ tục được lưu trữ KẾT THÚC

Thí dụ

--Tạo một thủ tục sẽ trả về tên sinh viên khi StudentId được cung cấp làm tham số đầu vào cho thủ tục đã lưu trữ Tạo PROCEDURE GetStudentName (@StudentId INT, tham số --Input, @StudName VARCHAR (50) OUT - Tham số đầu ra, AS BEGIN CHỌN @StudName = StudentName TỪ StudentsInfo WHERE StudentID = @ StudentId END

Các bước thực hiện:

      • Khai báo @StudName là nvarchar (50)
      • EXEC GetStudentName 01, đầu ra @StudName
      • CHỌN @StudName

Quy trình trên trả về tên của một học sinh cụ thể,về việc cung cấp id sinh viên đó làm đầu vào. Tiếp theo trong hướng dẫn SQL Server này, chúng ta hãy hiểu các lệnh của ngôn ngữ điều khiển giao dịch.

Lệnh ngôn ngữ điều khiển giao dịch (TCL)

Phần này của hướng dẫn SQL Server sẽ cung cấp cho bạn cái nhìn sâu sắc về các lệnh được sử dụng để quản lý các giao dịch trong cơ sở dữ liệu.Các lệnh như sau:

CAM KẾT

Lệnh COMMIT được sử dụng để lưu giao dịch vào cơ sở dữ liệu.

Cú pháp

CAM KẾT

ROLLBACK

Lệnh ROLLBACK được sử dụng để khôi phục cơ sở dữ liệu về trạng thái cam kết cuối cùng.

Cú pháp

ROLLBACK

GHI CHÚ: Khi bạn sử dụng ROLLBACK với SAVEPOINT, bạn có thể trực tiếp chuyển đến điểm lưu trong một giao dịch đang diễn ra. Cú pháp: ROLLBACK TO SavepointName

SAVEPOINT

Lệnh SAVEPOINT được sử dụng để lưu tạm thời một giao dịch. Vì vậy, nếu bạn muốn khôi phục về bất kỳ điểm nào, thì bạn có thể lưu điểm đó dưới dạng ‘SAVEPOINT’.

Cú pháp

SAVEPOINT SAVEPOINTNAME

Hãy xem xét bảng dưới đây để hiểu hoạt động của các giao dịch trong cơ sở dữ liệu.

Thẻ học sinh Tên học sinh
mộtRohit
2Suhana
3Ashish
4Prerna

Bây giờ, hãy sử dụng bên dưới để hiểu các giao dịch trong cơ sở dữ liệu.

CHÈN VÀO GIÁ TRỊ StudentTable (5, 'Avinash') CẬP NHẬT CAM KẾT StudentTable SET name = 'Akash' WHERE id = '5' SAVEPOINT S1 CHÈN VÀO CÁC GIÁ TRỊ CỦA StudentTable (6, 'Sanjana') SAVEPOINT S2 CHÈN VÀO CÁC GIÁ TRỊ CỦA StudentTable (7, 'Sanjay ') CHÈN SAVEPOINT S3 VÀO CÁC GIÁ TRỊ CỦA StudentTable (8,' Veena ') SAVEPOINT S4 CHỌN * TỪ StudentTable

Tiếp theo trong bài viết này về hướng dẫn SQL Server, chúng ta hãy hiểu cách xử lý các ngoại lệ trong Transact-SQL.

Xử lý ngoại lệ

Có hai loại ngoại lệ, tức là ngoại lệ do hệ thống xác định và ngoại lệ do người dùng xác định. Như tên cho thấy, xử lý ngoại lệ là một quá trình mà thông qua đó người dùng có thể xử lý các ngoại lệ được tạo ra. Để xử lý các trường hợp ngoại lệ, bạn phải hiểu các câu lệnh dòng điều khiển sau:

PHI

Mệnh đề này được sử dụng để nâng cao một ngoại lệ và chuyển việc thực thi tới một khối CATCH của một cấu trúc TRY… CATCH.

Cú pháp

THROW [ErrorNumber, @localvariable, State] []

Ở đâu,

  • Số lỗi - ĐẾNhằng số hoặc biến đại diện cho ngoại lệ.
  • Thông điệp - ĐẾNbiến hoặc chuỗi mô tả ngoại lệ.
  • Tiểu bang -Một hằng số hoặc biến trong khoảng từ 0 đến 255 cho biết trạng thái kết hợp với thông báo.
THROW 51000, 'Bản ghi không tồn tại.', 1

CỐ GẮNG BẮT

Được sử dụng để thực hiện xử lý ngoại lệ trong Transact-SQL. Một nhóm các câu lệnh có thể được đặt trong khối TRY. Trong trường hợp lỗi xảy ra trong khối TRY, quyền điều khiển được chuyển cho một nhóm câu lệnh khác nằm trong khối CATCH.

Cú pháp

BẮT ĐẦU DÙNG THỬ StatementBlock END THỬ BEGIN CATCH [StatementBlock] END CATCH []
BẮT ĐẦU THỬ CHỌN * TỪ StudentsInfo KẾT THÚC THỬ BẮT ĐẦU CHỌN ERROR_NUMBER () AS ErNum, ERROR_MESSAGE () AS ErMsg END CATCH

TRONG ith này, chúng ta đến phần cuối của bài viết này về Hướng dẫn SQL Server. Tôi hy vọng bạn thích đọc bài viết này về Hướng dẫn sử dụng SQL Server cho người mới bắt đầu.Tôi Nếu bạn muốn được đào tạo có cấu trúc về MySQL, hãy xem đi kèm với đào tạo trực tiếp do người hướng dẫn và trải nghiệm dự án thực tế. Khóa đào tạo này sẽ giúp bạn hiểu sâu về MySQL và giúp bạn thành thạo chủ đề này. Có một câu hỏi cho chúng tôi? Hãy đề cập đến nó trong phần bình luận của ” Hướng dẫn SQL Server ”Và tôi sẽ liên lạc lại với bạn.