文档章节

如何列出使用ATTACH打开的SQLite数据库文件中的表?

 技术盛宴
发布于 2019/12/11 17:27
字数 681
阅读 11
收藏 0

在SQLite 3命令行工具上使用ATTACH命令将其附加后,可以使用哪种SQL列出表以及这些表中的行在SQLite数据库文件中?


#1楼

根据文档 ,相当于MySQL的SHOW TABLES; 是:

“ .tables”命令类似于设置列表模式,然后执行以下查询:

SELECT name FROM sqlite_master
  WHERE type IN ('table','view') AND name NOT LIKE 'sqlite_%'
UNION ALL
SELECT name FROM sqlite_temp_master
  WHERE type IN ('table','view')
ORDER BY 1;

但是,如果要检查单个表是否存在(或获取其详细信息),请参见@LuizGeron答案。


#2楼

从最新版本的SQLite 3开始,您可以发出:

.fullschema

查看所有的create语句。


#3楼

由于没有人提到SQLite的官方参考,因此我认为在此标题下引用它可能会很有用:

https://www.sqlite.org/cli.html

您可以使用此链接中描述的命令来操作数据库。 此外, 如果您使用的是Windows OS,并且不知道命令外壳在哪里,则位于SQLite的站点中:

https://www.sqlite.org/download.html

下载后, 单击sqlite3.exe文件初始化SQLite命令外壳程序 。 初始化时,默认情况下,此SQLite会话使用内存数据库,而不是磁盘上的文件,因此当会话退出时,所有更改都将丢失。 要将永久磁盘文件用作数据库,请在终端窗口启动后立即输入“ .open ex1.db”命令。

上面的示例导致打开和使用名为“ ex1.db”的数据库文件,并在以前不存在的情况下创建该文件。 您可能希望使用完整路径名来确保文件位于您认为它所在的目录中。使用正斜杠作为目录分隔符。 换句话说,使用“ c:/work/ex1.db”,而不是“ c:\\ work \\ ex1.db”。

要查看您先前选择的数据库中的所有表,请按上述链接中的命令键入.tables命令。

如果您使用Windows,我认为将此sqlite.exe文件与其他Python文件移动到同一文件夹可能会很有用。 这样,Python文件将写入到同一目录中,而SQLite shell从.db文件中读取的则在同一路径中。


#4楼

试试PRAGMA table_info(table-name);
http://www.sqlite.org/pragma.html#schema


#5楼

我使用此查询来获取它:

SELECT name FROM sqlite_master WHERE type='table'

并在iOS中使用:

NSString *aStrQuery=[NSString stringWithFormat:@"SELECT name FROM sqlite_master WHERE type='table'"];

本文转载自:https://stackoom.com/question/LYh/如何列出使用ATTACH打开的SQLite数据库文件中的表

粉丝 0
博文 704
码字总数 0
作品 0
深圳
高级程序员
私信 提问
SQLite学习手册(命令行工具)

工欲善其事,必先利其器。学好SQLite的命令行工具,对于我们学习SQLite本身而言是非常非常有帮助的。最基本的一条就是,它让我们学习SQLite的过程更加轻松愉快。言归正传吧,在SQLite的官方下...

柠檬酷
2015/07/14
204
0
手机开发-如何查看android数据文件和数据库

在Android中可以使用Eclipse插件DDMS来查看,也可以使用Android工具包中的adb工具来查看。android项目中的sqlite数据库位于/data/data/项目包/databases中。 工具/原料 doc命令adb工具,ecl...

娶到笨笨
2014/03/14
406
0
SQLite 指南之FAQ(中文)

1. 如何创建自增字段? 2. SQLite 支持哪些数据类型? 3. 为什么能向 SQLite 数据库的整型字段中插入字符串? 4. 为什么 SQLite 认为表达式 '0'=='00' 为真? 5. 为什么 SQLite 不允许在同一...

晨曦之光
2012/04/12
727
0
linux(Ubuntu) 下安装sqlite3

1.介绍:sqlite3是linux上的小巧的数据库,一个文件就是一个数据库。 2.安装: 要安装sqlite3,可以在终端提示符后运行下列命令: sudo apt-get install sqlite3 检查版本 sqlite3 -version 3...

长平狐
2013/07/01
4.4K
0
2010年SQLite学习笔记之二(2)

创建数据库文件: >SQLite3 d:/test.db 回车 就生成了一个test.db在d盘。 这样同时也SQLite3挂上了这个test.db 2) 用.help可以看看有什么命令 >.help 回车即可 3)可以在这里直接输入SQL语句创...

jpch
2013/12/11
92
0

没有更多内容

加载失败,请刷新页面

加载更多

Numpy处理图片方法

在进行图像领域的深度学习的时候经常需要对图片进行处理,包括图像的翻转,压缩,截取等,一般都是用Numpy来处理。处理起来也很方便。 In[3] # 导入需要的包 import numpy as np import matp...

北方的郎
18分钟前
7
0
AMD集中擢升高管:从Intel挖了个高手

  1 月 17 日,AMD 官方宣布多项人事升迁、新人任命,擢升了四位高级副总裁:   AMD 同时还宣布, 聘请行业资深人士 Daniel McNamara 出任高级副总裁兼服务器业务部总经理,负责在第二代...

水果黄瓜
23分钟前
6
0
什么是泛型?

一、泛型的概念 泛型是 Java SE5 出现的新特性,泛型的本质是类型参数化或参数化类型,在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型。 二、泛型的意义 一般的...

hncboy
57分钟前
7
0
dynamic-connectivity 动态连通性问题之 quick-union 算法

quick-union 的思想是:若对象 p 的 root_id 和对象 q 的 root_id 相等,则认为 p 和 q 连通。 若要将对象 p 和对象 q 连通(已知两对象未连通),则将 p 的 root_id 的值设为 q 的 root_id ...

Phpythoner_Alei
今天
51
0
OSChina 周六乱弹 —— 实在选不出来就唱国歌

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @花间小酌 :#今日歌曲推荐# 分享阿冗的单曲《你的答案》。--祝大家在2020年都找到自己答案。 《你的答案》- 阿冗 手机党少年们想听歌,请使劲...

小小编辑
今天
285
6

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部