sqlite - 如何在sqlite中更改数据库名称?

标签 sqlite

我必须简单地更改数据库的名称,但似乎是 ALTER DATABASE命令在 SQLite 中无效。
我的场景是我有一个 SQLite 加密数据库,现在我想重命名它。手动重命名 db 文件后,加密不起作用。所以我尝试使用命令更改数据库的名称。看起来问题是由于加密。

最佳答案

每个 sqlite 文件包含一个且只有一个数据库。这个数据库没有名字。据我所知,第一个打开的数据库有一个“虚拟”名称 main当你想引用它时,请说当你附加补充数据库时。您可以选择您附加的数据库的“虚拟”名称。

[someone@somewhere tmp]$ sqlite3 bla.db
SQLite version 3.7.11 2012-03-20 11:35:50
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .databases
seq  name             file                                                      
---  ---------------  ----------------------------------------------------------
0    main             /tmp/bla.db                                  
sqlite> attach database 'example.db' as another_db;
sqlite> .databases
seq  name             file                                                      
---  ---------------  ----------------------------------------------------------
0    main             /tmp/bla.db                                  
2    another_db       /tmp/example.db       

否则 Laurent 是正确的,您可以重命名数据库文件,如果这是您在此处尝试执行的操作。

关于sqlite - 如何在sqlite中更改数据库名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10845974/

相关文章:

c# - 如何在 SQLite 的 C# 类中创建外键

android - 获取 SQLite 中列值的总和

database - 关于 System.Data.SQLite.dll 的困惑

c# - SQLITE3+ Catnap + MonoTouch 改变表添加列 pb

android - Android 的 Sqlite 加密

java.lang.StringIndexOutOfBoundsException : index=0 length=0 in get sqlite database 异常

android - SQLite (1) 靠近 "M": syntaxs error

php - PHP从HTML中的select(来自数据库)选项中删除sqlite3中的数据

java - SQLiteDatabase.rawQuery(sql,new String[name,age,null]}) 一个参数无关紧要

database - 具有未知外键的 SQLite 关系 INSERT