SQLite导出整个数据库/导出某个表到SQL文件

突然想导出SQLite数据库的某个表的数据,然后就记录一下:

执行“sqlite3.exe”,我们可能用到下面几个命令:
sqlite> .help
.dump ?TABLE? ...      Dump the database in an SQL text format
                         If TABLE specified, only dump tables matching
                         LIKE pattern TABLE.
.exit                  Exit this program
.help                  Show this message
.open ?--new? ?FILE?   Close existing database and reopen FILE
                         The --new starts with an empty file
.output ?FILENAME?     Send output to FILENAME or stdout
.quit                  Exit this program
.read FILENAME         Execute SQL in FILENAME
.tables ?TABLE?        List names of tables
                         If TABLE specified, only list tables matching
                         LIKE pattern TABLE.
sqlite>

假设我们有一个SQLite数据库文件,名为db.sqlite3,这个数据库中有2个表,分别为tb1和tb2,
我们导出整个数据库到db.SQL文件的方式:
Use ".open FILENAME" to reopen on a persistent database.
sqlite> .open db.sqlite3
sqlite> .output db.SQL
sqlite> .dump
sqlite> .exit

我们导出表tb1到db.SQL文件的方式:
Use ".open FILENAME" to reopen on a persistent database.
sqlite> .open db.sqlite3
sqlite> .output db.SQL
sqlite> .dump tb1
sqlite> .exit
完。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLite是一种轻量级的关系型数据库管理系统,它被广泛应用在移动设备和嵌入式系统中。下面介绍如何建立SQLite文件数据库和内存数据库,并进行数据的导入和导出。 ## 建立SQLite文件数据库 ### 建立数据库 在Python中使用SQLite,首先需要安装SQLite3模块。使用以下命令安装: ``` pip install pysqlite3 ``` 然后可以通过以下代码建立一个SQLite文件数据库: ```python import sqlite3 # 建立连接 conn = sqlite3.connect('example.db') # 关闭连接 conn.close() ``` 在这个例子中,我们使用`connect`方法建立一个连接,并指定要创建的数据库文件名为`example.db`。然后使用`close`方法关闭连接。 ### 建立表和插入数据 建立数据库之后,我们需要建立表和插入数据。以下是一个简单的例子: ```python import sqlite3 # 建立连接 conn = sqlite3.connect('example.db') # 建立表 conn.execute(''' CREATE TABLE users ( id INTEGER PRIMARY KEY, name TEXT, age INTEGER ) ''') # 插入数据 conn.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Alice', 20)) conn.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Bob', 25)) # 提交更改 conn.commit() # 关闭连接 conn.close() ``` 在这个例子中,我们建立了一个名为`users`的表,包含`id`、`name`和`age`三个字段。然后使用`INSERT INTO`语句插入了两条数据,并使用`commit`方法提交更改。最后使用`close`方法关闭连接。 ### 查询数据 查询数据可以使用`SELECT`语句。以下是一个简单的例子: ```python import sqlite3 # 建立连接 conn = sqlite3.connect('example.db') # 查询数据 cursor = conn.execute('SELECT * FROM users') for row in cursor: print(row) # 关闭连接 conn.close() ``` 在这个例子中,我们使用`execute`方法执行了一个`SELECT`语句,并使用`for`循环遍历查询结果。输出结果为: ``` (1, 'Alice', 20) (2, 'Bob', 25) ``` ## 建立内存数据库 如果不需要将数据保存到文件中,可以建立一个内存数据库。以下是一个简单的例子: ```python import sqlite3 # 建立连接 conn = sqlite3.connect(':memory:') # 建立表 conn.execute(''' CREATE TABLE users ( id INTEGER PRIMARY KEY, name TEXT, age INTEGER ) ''') # 插入数据 conn.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Alice', 20)) conn.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Bob', 25)) # 提交更改 conn.commit() # 查询数据 cursor = conn.execute('SELECT * FROM users') for row in cursor: print(row) # 关闭连接 conn.close() ``` 在这个例子中,我们使用`:memory:`作为连接参数,表示建立一个内存数据库。其他操作与建立文件数据库类似。 ## 导入导出数据 可以使用SQLite提供的`.dump`和`.restore`命令导入导出数据。以下是一个简单的例子: ```python import sqlite3 import subprocess # 建立连接 conn = sqlite3.connect('example.db') # 导出数据 with open('example.sql', 'w') as f: subprocess.call(['sqlite3', 'example.db', '.dump'], stdout=f) # 关闭连接 conn.close() # 建立连接 conn = sqlite3.connect(':memory:') # 导入数据 with open('example.sql', 'r') as f: subprocess.call(['sqlite3', ':memory:', '.read', '-'], stdin=f) # 查询数据 cursor = conn.execute('SELECT * FROM users') for row in cursor: print(row) # 关闭连接 conn.close() ``` 在这个例子中,我们首先使用`.dump`命令将数据导出到`example.sql`文件中。然后使用`:memory:`作为连接参数,建立一个内存数据库,并使用`.read`命令导入数据。其他操作与前面的例子类似。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值