TRƯỜNG HỢP 1: SQLite 3.25.0+
Chỉ phiên bản 3.25.0 của SQLite hỗ trợ đổi tên cột. Nếu thiết bị của bạn đáp ứng yêu cầu này, mọi thứ khá đơn giản. Các truy vấn dưới đây sẽ giải quyết vấn đề của bạn:
ALTER TABLE "MyTable" RENAME COLUMN "OldColumn" TO "NewColumn";
CASE 2: SQLite Phiên bản cũ hơn
Bạn phải tuân theo một Cách tiếp cận khác để có được kết quả có thể hơi khó
Ví dụ: nếu bạn có một bảng như thế này:
CREATE TABLE student(Name TEXT, Department TEXT, Location TEXT)
Và nếu bạn muốn thay đổi tên của cột Location
Bước 1: Đổi tên bảng gốc:
ALTER TABLE student RENAME TO student_temp;
Bước 2: Bây giờ tạo một bảng mới student
với tên cột chính xác:
CREATE TABLE student(Name TEXT, Department TEXT, Address TEXT)
Bước 3: Sao chép dữ liệu từ bảng gốc sang bảng mới:
INSERT INTO student(Name, Department, Address) SELECT Name, Department, Location FROM student_temp;
Lưu ý: Lệnh trên phải là tất cả một dòng.
Bước 4: Thả bảng gốc:
DROP TABLE student_temp;
Với bốn bước này, bạn có thể thay đổi thủ công bất kỳ bảng SQLite nào. Hãy nhớ rằng bạn cũng sẽ cần phải tạo lại bất kỳ chỉ mục, người xem hoặc trình kích hoạt nào trên bảng mới.