我有两个sqlite数据库,并希望将数据库A中的表复制到数据库B.不应复制数据库A中的其他表.在Java中最简单的方法是什么?
我可以明确地做一些像A中的Select*然后将所有这些插入到数据库B中,但是不应该有更好的方法吗?
Col*_*Two 15
打开要复制的数据库,然后运行此代码以附加要复制到的数据库,然后复制一个表.
ATTACH DATABASE 'other.db' AS other;
INSERT INTO other.tbl
SELECT * FROM main.tbl;
Run Code Online (Sandbox Code Playgroud)
miv*_*ivk 10
为什么要在 Java 中这样做?您可以直接在命令行上执行此操作,方法是转储表并将其读入其他数据库:
sqlite3 A.sqlite ".dump some_table" | sqlite3 B.sqlite
Run Code Online (Sandbox Code Playgroud)
如果您需要先删除“B.sqlite”中的现有表,您可以使用-cmd第二部分中的开关“在读取 stdin 之前运行命令”:
sqlite3 A.sqlite ".dump some_table" \
| sqlite3 -cmd "DROP TABLE IF EXISTS some_table" B.sqlite
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9559 次 |
| 最近记录: |