Tìm hiểu ATTACH DATABASE trong SQLite
Hãy xem xét một trường hợp khi bạn có sẵn nhiều cơ sở dữ liệu và bạn muốn sử dụng bất kỳ cơ sở dữ liệu nào tại một thời điểm. Câu lệnh ATTACH DATABASE
trong SQLite
được sử dụng để chọn một cơ sở dữ liệu cụ thể và sau lệnh này, tất cả các câu lệnh SQLite
sẽ được thực thi trong cơ sở dữ liệu được attach
.
1. Cú pháp lệnh Attach Database trong SQLite
Sau đây là cú pháp cơ bản của câu lệnh ATTACH DATABASE
trong SQLite
.
ATTACH DATABASE 'DatabaseName' As 'Alias-Name';
Lệnh trên cũng sẽ tạo cơ sở dữ liệu trong trường hợp cơ sở dữ liệu chưa được tạo, nếu không, nó sẽ chỉ đính kèm tên file cơ sở dữ liệu với cơ sở dữ liệu 'Alias-Name'.
2. Ví dụ lệnh Attach Database trong SQLite
Nếu bạn muốn attach một cơ sở dữ liệu testDB.db
đang tồn tại, thì câu lệnh ATTACH DATABASE
sẽ như sau:
Bài viết này được đăng tại [free tuts .net]
sqlite> ATTACH DATABASE 'testDB.db' as 'TEST';
Sử dụng lệnh .database
để hiển thị attach database
.
sqlite> .database name file --------------- ---------------------- main: C:\sqlite\testDB.db TEST: C:\sqlite\testDB.db
Các cơ sở dữ liệu tên main
và temp
được dành riêng tương ứng cho một Primary Database và một Database để giữ các bảng tạm thời và các đối tượng dữ liệu tạm thời khác. Cả hai cơ sở dữ liệu tên này đều tồn tại cho mỗi kết nối Database và không nên được sử dụng để attach, nếu không thì bạn sẽ nhận một cảnh báo như sau:
sqlite> ATTACH DATABASE 'testDB.db' as 'TEMP'; Error: database TEMP is already in use sqlite> ATTACH DATABASE 'testDB.db' as 'main'; Error: database TEMP is already in use