欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

SQLite数据库SQLite3命令

程序员文章站 2022-05-05 17:39:50
...

SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令。本文档提供一个样使用sqlite3

SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令。本文档提供一个样使用sqlite3的简要说明。
开始

启动sqlite3程序,仅仅需要敲入带有SQLite数据库名字的"sqlite3"命令即可。如果文件不存在,则创建一个新的(数据库)文件。然后 sqlite3程序将提示你输入SQL。敲入SQL语句(以分号“;”结束),敲回车键之后,SQL语句就会执行。

例如,创建一个包含一个表"tb11"名字为"ex1"的SQLite数据库,你可以这样做:

$sqlite3 ex1

SQLite version 3.3.17

Enter ".help" for instructions

sqlite> create table tbl1(one varchar(10), two smallint);

sqlite> insert into tbl1 values('hello!', 10);

sqlite> insert into tbl1 values('goodbye', 20);

sqlite> select * from tbl1;

hello!|10

goodbye|20

sqlite>

你可以通过敲你所用系统的文件结束符(通常是Ctrl + D)或者中断字符(通常是Ctrl + C)。来终止sqlite3程序。确定你在每个SQL语句结束敲入分号!sqlite3程序通过查找分号来决定一个SQL语句的结束。如果你省略分 号,sqlite3将给你一个连续的命令提示符并等你给当前的SQL命令添加更多的文字。这个特点让你输入多行的多个SQL语句,例如:

sqlite> create table tbl2(

...> f1 varchar(30) primary key,

...> f2 text,

...> f3 real

...> );

sqlite>

题外话:查询SQLITE_MASTER表

SQLite数据库的框架被保存在一个名叫"sqlite_master"的特殊的表中。你可以像查询其它表一样通过执行“SELECT”查询这个特殊的表。例如:

$ sqlite3 ex1

SQlite vresion 3.3.10

Enter ".help" for instructions

sqlite> select * from sqlite_master;

type = table

name = tbl1

tbl_name = tbl1

rootpage = 3

sql = create table tbl1(one varchar(10), two smallint)

sqlite>

但你不能在sqlite_master表中执行诸如DROP TABLE, UPDATE, INSERT 或者DELETE命令。sqlite_master表在你创建、删除和索引数据库时自动更新这个表。你不能手工更改sqlite_master表。

TEMPORARY表的结构没有存储在"sqlite_master"表中,由于TEMPORARY表对应用是不可见的,而不是应用程序创建这个表。 TEMPORARY表结构被存储在另外一个名叫"sqlite_temp_master"的特定的表中。"sqlite_temp_master"表是临 时表自身。

sqlite3的特殊命令

大多数候,sqlite3读入输入行,并把它们传递到SQLite库中去运行。但是如果输入行以一个点(“.”)开始,那么这行将被sqlite3程序自 己截取并解释。这些“点命令”通常被用来改变查询输出的格式,或者执行鞭个预封包(预定义prepackaged)的查询语句。

你可以在任何时候输入“.help”,列出可用的点命令。例如

sqlite> .help

.bail ON|OFF Stop after hitting an error. Default OFF

.databases List names and files of attached databases

.dump ?TABLE? ... Dump the database in an SQL text format

.echo ON|OFF Turn command echo on or off

.exit Exit this program

.explain ON|OFF Turn output mode suitable for EXPLAIN on or off.

.header(s) ON|OFF Turn display of headers on or off

.help Show this message

.import FILE TABLE Import data from FILE into TABLE

.indices TABLE Show names of all indices on TABLE

.load FILE ?ENTRY? Load an extension library

.mode MODE ?TABLE? Set output mode where MODE is one of:

csv Comma-separated values

column Left-aligned columns. (See .width)

html HTML

code

insert SQL insert statements for TABLE

line One value per line

list Values delimited by .separator string

tabs Tab-separated values

tcl TCL list elements

.nullvalue STRING Print STRING in place of NULL values

.output FILENAME Send output to FILENAME

.output stdout Send output to the screen

.prompt MAIN CONTINUE Replace the standard prompts

.quit Exit this program

.read FILENAME Execute SQL in FILENAME

.schema ?TABLE? Show the CREATE statements

.separator STRING Change separator used by output mode and .import

.show Show the current values for various settings

.tables ?PATTERN? List names of tables matching a LIKE pattern

.timeout MS Try opening locked tables for MS milliseconds

.width NUM NUM ... Set column widths for "column" mode

sqlite>

SQLite数据库SQLite3命令

SQLite数据库SQLite3命令

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • SQLite数据库SQLite3命令
  • 专题推荐

    作者信息
    SQLite数据库SQLite3命令

    认证0级讲师

    推荐视频教程
  • SQLite数据库SQLite3命令javascript初级视频教程
  • SQLite数据库SQLite3命令jquery 基础视频教程
  • 视频教程分类