如何使用sqlite3.exe从导出的.sql脚本创建数据库

问题描述 投票:0回答:3

尝试将 SqlCe 数据库转换为 SQLite,我将其导出到

.sql
文件。现在我将如何使用
sqlite.exe
从这个
.sql
文件创建数据库?

sql3.exe
文件放在哪里?
在 cmd 提示符或
sqlite.exe
shell 中使用什么命令语法?

sqlite
3个回答
9
投票

使用以下命令行:

sqlite3 -init dump.sql newsqlite.db ""

它将通过执行

newsqlite.db
中的语句来创建新的SQLite数据库文件
dump.sql
。 sqlite3自动退出需要空字符串
""

如果

newsqlite.db
文件已存在并包含某些数据,导入可能会失败,除非您对所有表和索引创建语句使用
IF NOT EXISTS


7
投票

sqlite3.exe
放在任何你想要的地方,只要你记住那个地方,你就可以从那里开始
sqlite3

在命令提示符下将脚本应用到数据库(可能是新创建的数据库):

sqlite3.exe my-new-db.somesuffix < myscript.sql

在交互式

sqlite3
会话中执行脚本:

sqlite3.exe my-new-db.somesuffix
....
.read myscript.sql
....

这两种变体有时都是有效且可用的。 (注意:如果您的

.sql
是为非 sqlite 数据库生成的,我希望它需要进行一些更改才能在
sqlite3
中工作。并且存储过程和用户定义函数之类的东西肯定会丢失)。


0
投票

虽然该线程已有多年历史,但我还没有在任何地方看到我提出的选项:

set "database=example.db"
%~dp0sqlite3.exe -cmd ".read script.sql" %database%.

执行脚本后,此选项将打开一个命令窗口,其中 SQLite 正在运行并且数据库也打开。

© www.soinside.com 2019 - 2024. All rights reserved.