sqlite 修改表名,合並數據庫(文件)


修改表名:
ALTER TABLE orig_table_name RENAME TO tmp_table_name;

將某個數據庫的一個表的數據插入到另一個數據庫的某個表里:
1、先連接數據庫A
2、再attach數據庫B作為第二數據庫:   ATTACH "c:\database_b\places.sqlite" AS SecondaryDB;   (若還要attach其它數據庫,則 ATTACH "c:\database_b\third.sqlite" AS ThirdDB;
3、(若要將B中的某個表的數據追加到A中的某個表中,則: INSERT OR IGNORE INTO MyTable SELECT * FROM SecondaryDB.MyTable;  但條件是這2個表的id主鍵沒有沖突,若有沖突,則修改B的主鍵)
4、然后:  
COMMIT;
5、最后:  DETACH DATABASE SecondaryDB;


將某個數據庫的整個表整體的復制到另一個數據庫里:
1、先連接數據庫A
2、再attach數據庫B作為第二數據庫:   ATTACH "c:\database_b\places.sqlite" AS SecondaryDB;   (若還要attach其它數據庫,則 ATTACH "c:\database_b\third.sqlite" AS ThirdDB;
3、  CREATE TABLE newTableInDB1 AS SELECT * FROM SecondaryDB.oldTableInMyOtherDB;
4、 commit;
5、最后:  DETACH DATABASE SecondaryDB;
附: 
1、查看表的schema格式:  .schema tablename      或者 PRAGMA SecondaryDB.table_info(table_name);
2、對於attached數據庫,若要查看它的表,則:  SELECT name FROM SecondaryDB.sqlite_master WHERE type='table';


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM