簡體   English   中英

為什么不能在JDBC中使用.dump命令?

[英]Why can I not use the .dump command with JDBC?

我試圖通過將一個的內容轉儲到另一個合並兩個sqlite表。 但是,每次嘗試此操作時,都會引發語法錯誤,指出“ [SQLITE_ERROR] SQL錯誤或缺少數據庫(在“ sqlite3”附近:語法錯誤)”

conn是原始數據庫的連接,我發送了所有sql命令。 newConn是要合並的數據庫的連接。

如何解決此問題? 先感謝您!

編輯:我只是想確保這不會因為重復而關閉。 我從這里使用了sql代碼,但仍然會引起問題。

        newConn = DriverManager.getConnection("jdbc:sqlite:" + path);

        String sqlMerge =  "sqlite3 ? .dump";
        conn.setAutoCommit(false);
        PreparedStatement pstmt1 = conn.prepareStatement(sqlMerge);
        pstmt1.setString(1, newConn.getCatalog());
        pstmt1.executeUpdate();
        conn.commit();

.dump是SQLite命令行shell的功能。 SQL語言的SQLite方言無法識別它。 您可以從Java內部調用命令行外殼程序,也可以使用實際的SQL命令通過JDBC(讀取數據)和Java文件操作(寫入所需的轉儲文件)執行等效操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM