Thứ Hai, 24 tháng 7, 2023

Lệnh Create Table trong SQL Server

rong bài này bạn sẽ được học cách sử dụng lệnh CREATE TABLE để tạo mới một database. Ngoài cách sử dụng lệnh này thì bạn cũng có thể sử dụng công cụ SSMS, tuy nhiên thường thì DBA sẽ thích sử dụng SQL hơn.

Mục lục

  • 1. Cú pháp lệnh Create Database trong SQL Server
  • 2. Tìm hiểu các thuộc tính của column
    • Bảng các options
    • Bảng các kiểu dữ liệu

1. Cú pháp lệnh Create Database trong SQL Server

Một table sẽ được lưu trữ trong một database duy nhất và tên table cũng duy nhất, nó có thể có một hoặc nhiều column và mỗi column sẽ thuộc một kiểu dữ liệu và các thông số cấu hình riêng.

Tùy vào ý tưởng thiết kế database mà mỗi một hệ thống sẽ có những bảng khác nhau, hai dự án giống nhau nhưng nếu hai người làm thì database chưa chắc đã giống nhau.

Để tạo mới một table thì bạn sử dụng  lệnh CREATE TABLE với cú pháp sau:

1
2
3
4
5
6
7
CREATE TABLE [database_name.][schema_name.]table_name (
    pk_column data_type PRIMARY KEY,
    column_1 data_type,
    column_2 data_type,
    ...,
    table_constraints
);

Trong đó:

  • database_name là tên của database mà table sẽ được tạo trong đó, nếu bạn không nhập thì nó sẽ lấy database hiện tại.
  • schema_name là tên của lược đồ mà bạn muốn table này nằm trong đó, giá trị này có thể không cần nhập.
  • table_name là tên của table cần tạo.
  • column_1column_2, ... là danh sách các column của table.
  • data_type là tên của kiểu dư liệu tương ứng cho column phía trước nó.
  • pk_column cũng là một column, chỉ có điều mình đặt tên khác để nhấn mạnh nó là khóa chính.
  • PRIMARY KEY là thuộc tính chỉ định column này là khóa chính.
  • table_constraints là danh sách những thông tin bổ sung như khóa ngoại, khóa chính.

Hãy xem ví dụ dưới đây:

1
2
3
4
5
CREATE TABLE QLHS.hs.STUDENTS(
    id INT PRIMARY KEY,
    full_name NVARCHAR(200) NOT NULL,
    age INT NULL
);

Mẹo nhỏ: Bạn nên bổ sung thêm đoạn code use database_name ở phía trên cùng của file thì khi viết câu truy vấn sẽ không cần chỉ định rõ database. Xem ví dụ sau:

1
2
3
4
5
6
7
8
9
10
11
12
13
use BikeStores;
 
go
 
CREATE TABLE sales.visits (
    visit_id INT PRIMARY KEY IDENTITY (1, 1),
    first_name VARCHAR (50) NOT NULL,
    last_name VARCHAR (50) NOT NULL,
    visited_at DATETIME,
    phone VARCHAR(20),
    store_id INT NOT NULL,
    FOREIGN KEY (store_id) REFERENCES sales.stores (store_id)
);

Hoặc bạn nhìn lên khung database hiện tại nếu đang là database nào thì lúc chạy câu SQL sẽ áp dụng cho database đó.

tao table sqlserver PNG

Các ví dụ hơi khó nhỉ, nếu vậy thì cùng tìm hiểu chi tiết hơn ở phần 2 nhé.

2. Tìm hiểu các thuộc tính của column

Có lẽ thắc mắc lớn nhất của người mới học là những thông số cấu hình cho column sẽ có những gì, nếu vậy thì hãy xem phần giải thích dưới đây:

Cấu trúc của một column như sau: [column_name] [data_type] [options]. Trong đó:

  • column_name là tên của column, phải là duy nhất trong bảng.
  • data_type là kiểu dữ liệu, mình sẽ liệt kê các kiểu dữ liệu thường dùng ở phần dưới.
  • options là những thông số bổ sung.

Bảng các options

Chúng ta có những options thường sử dụng sau:

  • PRIMARY KEY - chỉ định khóa chính
  • NULL - chỉ định cho phép để trống khi thêm, sửa.
  • NOT NULL - chỉ định bắt buộc nhập khi thêm, sửa
  • DEFAULT "value" - nếu lúc thêm dữ liệu bạn không xác định data cho column này thì nó sẽ lấy giá trị mặc định là value.
  • UNIQUE - chỉ định dữ liệu của column này phải là duy nhất, tương tự như khóa chính.
  • FOREIGN KEY REFERENCES table_name(column_name) - chỉ định là khóa ngoại và liên kết đến cột column_name của table table_name.

Bảng các kiểu dữ liệu

Danh sách các kiểu dữ liệu thường dùng trong SQL Server.

  • VARCHAR - kiểu chuỗi, dùng với dữ liệu tiếng Anh không dấu, phải chỉ định số ký tự tối đa.
  • NVACHAR - kiểu chuỗi, dùng với dữ liệu tiếng Việt có dấu, phải chỉ định số ký tự tối đa.
  • INT - kiểu số nguyên
  • FLOAT - kiểu số thực
  • DATETIME - kiểu ngày tháng - thời gian

Ví dụ: Tạo bảng SINHVIEN gồm các thông tin sau:

  • MASINHVIEN - kiểu số nguyên, là khóa chính, không được để trống.
  • TENSINHVIEN - kiểu chuỗi có dấu, tối đa 200 ký tự, không được để trống.
  • MAKHOA - là kiểu số nguyên, khóa ngoại liên kết đến bảng KHOA.MAKHOA, không được để trống.
  • NAMSINH - là kiểu số nguyên, có thể để trống, giá trị mặc định là 0.

Và đây là câu lệnh SQL cho bài này:

1
2
3
4
5
6
CREATE TABLE SINHVIEN(
    MASINHVIEN INT NOT NULL PRIMARY KEY,
    TENSINHVIEN NVARCHAR(200) NOT NULL,
    MAKHOA INT NOT NULL FOREIGN KEY REFERENCES KHOA.MAKHOA,
    NAMSINH INT NULL DEFAULT 0
);

Như vậy là mình đã giới thiệu xong lệnh create trong SQL Server, hy vọng qua bài này bạn sẽ nắm vững đủ kiến thức cần thiết để vận dụng cho bài tiếp theo.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master