GETTING STARTED
DATA DEFINITION
DATA QUERIES
CONDITION & OPERATORS
EXPLORED
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Chỉnh sửa cấu trúc column trong SQL Server

Trong bài này mình sẽ hướng dẫn bạn cách sử dụng lệnh ALTER TABLE ALTER COLUMN để chỉnh sửa cấu trúc của column trong SQL Server, lệnh nãy hữu ích khi bạn muốn chỉnh sửa các thông số như: kiểu dữ liệu, kích thước dữ liệu, NULL và NOT NULL.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

1. Thay đổi kiểu dữ liệu của column

Để thay đổi kiểu dữ liệu của column thì bạn sử dụng cú pháp sau:

ALTER TABLE table_name 
ALTER COLUMN column_name new_data_type(size);

Trường hợp table đã có dữ liệu thì bạn cần phải chọn kiểu dữ liệu mới tương thích với kiểu dũ liệu cũ, nếu không bạn sẽ gặp lỗi và hành động thất bại.

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

Bài viết này được đăng tại [free tuts .net]

Giả sử ta có bảng t1 có cấu trúc như sau:

CREATE TABLE t1 (c INT);

Bây giờ bổ sung một vài dòng dữ liệu bằng lệnh INSERT (sẽ học sau).

INSERT INTO t1
    VALUES
        (1),
        (2),
        (3);

Thay đổi kiểu dữ liệu của c từ INT sang VARCHAR, lệnh này hoạt động bình thường vì từ INT có thể chuyển sang VARCHAR.

ALTER TABLE t1 ALTER COLUMN c VARCHAR (2);

Mình sẽ thêm một dòng dữ liệu mới:

INSERT INTO t1
VALUES
    ('@');

Thay đổi kiểu dữ liệu từ VARCHAR sang INT, lệnh này sẽ bị lỗi vì ký tự @ không thể chuyển sang kiểu INT.

ALTER TABLE t1 ALTER COLUMN c INT;

Lỗi: Conversion failed when converting the varchar value '@' to data type int.

2. Thay đổi kích thước của column

Tương tự như ở trên, chỉ có một lưu ý là trường hợp column đã có dữ liệu thì bạn phải cân nhắc kích thước phải tương ứng, trường hợp tăng kích thước thì không sao nhưng giảm kích thước thì phải lưu ý.

Ví dụ: Giả sử ta có table sau.

CREATE TABLE t2 (c VARCHAR(10));

Tăng kích thước của c  lên thành 50.

ALTER TABLE t2 ALTER COLUMN c VARCHAR (50);<br />

Nếu bạn giảm kích thước và bị khắc với dữ liệu có sẵn thì sẽ nhận lỗi: String or binary data would be truncated.

3. Thay đổi NULL hoặc NOT NULL cho column

Cú pháp tương tự, chỉ có lưu ý như sau: Trường hợp table đã có dữ liệu và bạn muốn set từ NULL sang NOT NULL thì phải cập nhật tất cả những dòng dữ liệu nào có giá trị NULL sang rỗng trước khi thay đổi.

Giả sử có table sau.

CREATE TABLE t3 (c VARCHAR(50));

Bước 1: Lệnh cập nhật dữ liệu từ NULL sang rỗng

UPDATE t3
SET c = ''
WHERE
    c IS NULL;

Bước 2: Thay đổi từ NULL sang NOT NULL

ALTER TABLE t3 ALTER COLUMN c VARCHAR (20) NOT NULL;

Trên là một số cách sử dụng lệnh ALTER TABLE ALTER COLUMN để thay đổi cấu trúc của column trong SQL Server.

Cùng chuyên mục:

Hàm CHAR trong SQL Server

Hàm CHAR trong SQL Server

Cách sử dụng hàm CHAR trong SQL Server

Hàm CHARINDEX trong SQL Server

Hàm CHARINDEX trong SQL Server

Cách sử dụng hàm CHARINDEX trong SQL Server

Hàm CONCAT trong SQL Server

Hàm CONCAT trong SQL Server

Cách sử dụng hàm CONCAT trong SQL Server

Hàm + trong SQL Server

Hàm + trong SQL Server

Cách sử dụng hàm + trong SQL Server

Hàm DATALENGTH trong SQL Server

Hàm DATALENGTH trong SQL Server

Cách sử dụng hàm DATALENGTH trong SQL Server

Hàm LEFT trong SQL Server

Hàm LEFT trong SQL Server

Cách sử dụng hàm LEFT trong SQL Server

Hàm LEN trong SQL Server

Hàm LEN trong SQL Server

Cách sử dụng hàm LEN trong SQL Server

Hàm LOWER trong SQL Server

Hàm LOWER trong SQL Server

Cách sử dụng hàm LOWER trong SQL Server

Hàm LTRIM trong SQL Server

Hàm LTRIM trong SQL Server

Cách sử dụng hàm LTRIM trong SQL Server

Hàm NCHAR trong SQL Server

Hàm NCHAR trong SQL Server

Cách sử dụng hàm NCHAR trong SQL Server

Hàm PATINDEX trong SQL Server

Hàm PATINDEX trong SQL Server

Cách sử dụng hàm PATINDEX trong SQL Server

Hàm REPLACE trong SQL Server

Hàm REPLACE trong SQL Server

Cách sử dụng hàm REPLACE trong SQL Server

Hàm RIGHT trong SQL Server

Hàm RIGHT trong SQL Server

Cách sử dụng hàm RIGHT trong SQL Server

Hàm RTRIM trong SQL Server

Hàm RTRIM trong SQL Server

Cách sử dụng hàm RTRIM trong SQL Server

Hàm SPACE trong SQL Server

Hàm SPACE trong SQL Server

Cách sử dụng hàm SPACE trong SQL Server

Hàm STR trong SQL Server

Hàm STR trong SQL Server

Cách sử dụng hàm STR trong SQL Server

Hàm UPPER trong SQL Server

Hàm UPPER trong SQL Server

Cách sử dụng hàm UPPER trong SQL Server

Hàm SUBSTRING trong SQL Server

Hàm SUBSTRING trong SQL Server

Cách sử dụng hàm SUBSTRING trong SQL Server

Hàm STUFF trong SQL Server

Hàm STUFF trong SQL Server

Cách sử dụng hàm STUFF trong SQL Server

Hàm ABS trong SQL Server

Hàm ABS trong SQL Server

Cách sử dụng hàm ABS trong SQL Server

Top