我读过在创建数据库之后无法更改数据库的文本编码,并且会默默忽略任何尝试这样做的操作。(来自here)
Frome this post,要创建主数据库,在SQLite中说'databasename.db',我们必须在命令提示符下键入以下内容:
sqlite3 databasename.db
创建数据库并将sqlite shell显示为:
C:\Documents and Settings\Administrator>sqlite3 AudioData.db
SQLite version 3.7.11 2012-03-20 11:35:50
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
在这种情况下,如何设置PRAGMA编码?如果在创建数据库命令之后启动sqlite shell,我怎么能在create database命令之前给出PRAGMA命令? 提前谢谢!
答案 0 :(得分:6)
你刚才写的就是调用sqlite3。此时只有一个空文件。然后你设置你的pragma。创建第一个表后,将写入包含其所有设置的数据库。编写所有环境变量的时间非常重要。就在这时,真正创建了数据库。所以在创建第一个表之前设置你的pragma 例如
sqlite3 test.db
打开sqlite,当时没有写任何内容
pragma encoding=utf16;
仍然没有写任何内容
.quit
关闭sqlite,创建一个空文件test.db
sqlite3 test.db
打开sqlite
pragma encoding = utf16;
pragma nnnn=xxx;
设置pragma(s),文件test.db仍为空
create table test (testid integer);
现在数据库真正被创建,数据库文件test.db被写入内容
答案 1 :(得分:-2)
使用SQLite浏览器实现此类高级功能。这是非常直接的使用。