SQLite数据库管理之连带命令

发布时间:2018-12-16  栏目:sqlite  评论:0 Comments

  1.开立数据库

  SQLite
是一个像样Access的轻量级数据库系统,可是再粗、更快、容量还充裕,并作又强。为何说
SQLite 最契合做 CMS (内容管理网)呢?并无是说其他数据库不佳,
Oracle、MySQL、SQLServer 也都是怪突出之
DBS,只然而他们计划目的不同,特性不同,所以唯有重新适用某个应用场景,没有断然的好坏的分。

  启动命令执行,通过输入如下命令打开Shell模式的CLP:

  SQLite的艺特点:

  sqlite3 test.db

  SQLite 对 SQL92 标准的帮忙包括索引、限制、触发和查。SQLite
不扶助外键限制,但帮忙原子的、一致的、独立与持久 (ACID)
的业务(前边会提供关于 ACID
的再一次多音信)。这意味着工作是原子的,因为其依然完全执行,要么根本未执。事务也是相同的,因为在匪相同的状态中,该数据库从未让保留。事务如故独立
的,所以,要是在同一时间在同一数据库及有零星单执行操作的事情,那么这有限只事情是互不烦扰的。而且工作是持久性的,所以,该数据库能够当倒和断电时幸免于难,不相会丢数据或者损坏。SQLite
通过数量库级上的独占性和共享锁定来贯彻独立事务处理。这代表当三个经过和线程可以在同一时间从同数据库读取数据,但唯有发生一个可写副数据。在某某进
程或线程向数据库执行写副操作前,必须得独占锁定。在出独占锁定后,其他的朗诵或摹写操作将非汇合再度来。

  虽然我们提供了数据库名称,但只要该数据库不存在,SQLite实际上即使不创造该数据库,直到于数据库中创造有情节日常,SQLite才创立该数据库。

  1.创数据库

  2.开立数据表

  启动命令执行,通过输入如下命令打开Shell模式之CLP:

  sqlite> create table Member(id integer primary key, name text,
age integer,addr text);

  sqlite3 test.db

  流淌:id为主键,该列默认有自动增长的性能。

  即便咱提供了数据库名称,但假若该数据库不在,SQLite实际上尽管未创立该数据库,直到在数据库里成立有情时,SQLite才创立该数据库。

  3.插入数据

  2.创设数据表

  sqlite> insert into Member
values(0,’wwl’,21,’迪拜’);//id=0的排列必须休在,否则会错

  sqlite> create table Member(id integer primary key, name text,
age integer,addr text);

  或者sqlite> insert into Member(name,age,addr)
values(‘wwl’,21,’上海’);

  注:id为主键,该列默认有自动增长的性能。

  3.查询数据

  3.安插入数据

  sqlite>.mode column

  sqlite> insert into Member
values(0,’wwl’,21,’迪拜’);//id=0的排列必须不存在,否则会拧

  sqlite>.headers on

  或者sqlite> insert into Member(name,age,addr)
values(‘wwl’,21,’上海’);

  sqlite> select * from Member;

  4.查询数据

  注:select语句前边的有限单命(.headers和.mode)用于改进显示格式,可以毫无。

  sqlite>.mode column

  4.创设视图和目录

  sqlite>.headers on

  sqlite> create view schema as select * from Member;

  sqlite> select * from Member;

  sqlite> create index Member_Idx on Member(id)  

  注:select语句前面的少数独令(.headers和.mode)用于立异显示格式,可以不要。

  5.导出数

  5.创制视图和目录

  使用.dump命令可以用数据库对象导出成SQL格式。不牵动任何参数时,.dump将整个数据库导出为数据库定义语言(DDL)和数据库操作语言(DML)命令,适合再成立数据库对象与中间的多少。假设提供了参数,Shell将参数解析作为表名或视图,导出任何匹配给一定参数的讲明或视图,那多少个无匹配的用给忽视。

  sqlite> create view schema as select * from Member;

  默认情形下.dump 命令的输出定向到屏幕。如:.dump

  sqlite> create index Member_Idx on Member(id)

  要是只要将出口重定向到文件,请使用.dump[filename]命令,此命令将具有的出口重定向到指定的文件被。若使回升至屏幕的出口,只待执行.output
stdout命令就OK了。

  6.导出多少

     sqlite>.output file.sql  

  使用.dump命令可以将数据库对象导出成SQL格式。不牵动其他参数时,.dump将全体数据库导出为数据库定义语言(DDL)和数据库操作语言(DML)命令,适合重新创造数据库对象及中的数量。倘若提供了参数,Shell将参数解析作为表名或视图,导出任何匹配给一定参数的发明要视图,这一个休兼容的以于忽视。

  sqlite>.dump

  默认情形下.dump 命令的出口定向到屏幕。如:.dump

  sqlite>.output stdout

  倘诺如果用出口重定向到文件,请使用.dump[filename]指令,此命令将富有的出口重定向到指定的文本被。若使东山再起至屏幕的输出,只需要执行.output
stdout命令就OK了。

  注:倘若file.sql不存,将在当前工作目录中开创该公文。假如文件是,它将让覆盖。

  sqlite>.output file.sql

  6.导入数据  

  sqlite>.dump

  有些许种方法可导入数据,用啊种办法在要导入的文件格式。假如文件由SQL语句构成,可以使用.read命令导入文本中蕴藏的下令。倘使文件被蕴含由逗号或外分隔符分割的价(comma-swparated
values,CSV)组成,可使用.import[file][table]命令,此命令将分析指定的文书并尝试以数据插入到指定的表中。

  sqlite>.output stdout

  .read命令用来导入.dump命令创造的公文。倘使用前作为备份文件所导出的file.sql,需要先移除已经存在的数据库对象,然后据此脚的法门重新导入:

  注:若是file.sql不存,将于当前工作目录中创建该文件。倘诺文件在,它以为蒙。

  sqlite>drop table Member;

  7.导入数据

  sqlite>drop view schema;

  有个别种植方法好导入数据,用啦种办法在要导入的文件格式。要是文件由SQL语句构成,可以使用.read命令导入文本被寓的授命。倘若文件中蕴藏由逗号或其他分隔符分割的价值(comma-swparated
values,CSV)组成,可使用.import[file][table]一声令下,此命令将分析指定的文本并尝试将数据插入到指定的表中。

  sqlite>.read file.sql

  .read命令用来导入.dump命令创制的公文。倘诺以前作为备份文件所导出的file.sql,需要先移除已经在的数据库对象,然后据此底的点子重新导入:

  7.备卖数据库

  sqlite>drop table Member;

  有个别种艺术可就数据库的备份,具体采取啊一样种植在你希望之备份类型。SQL转储许是移植性最好的备份。

  sqlite>drop view schema;

  生成转储的正儿八经方法是动CLP.dump命令:sqlite3 test.db .dump
>test.sql

  sqlite>.read file.sql

    在Shell中,可以以出口重定向到表面文件,执行命令,復苏至屏幕输出,如:  

  8.备份数据库

    sqlite>.output file.sql

  有些许种办法得以就数据库的备份,具体运用啊一样栽在你想之备份类型。SQL转储许是移植性最好的备份。

    sqlite>.dump

  生成转储的正规措施是采纳CLP.dump命令:sqlite3 test.db .dump
>test.sql

    sqlite>.output stdout

  于Shell中,可以将出口重定向到表面文件,执行命令,恢复生机至屏幕输出,如:

    sqlite>.exit  

  sqlite>.output file.sql

  同样,容易用SQL转储作为CLP的输入流实现数据库导入:

  sqlite>.dump

  sqlite3 test.db <test.sql

  sqlite>.output stdout

  备份二进制数据库知识比复制文件稍多做一点行事。备份此前需要清理数据库,这样好释放部分已经去除对象不再利用的空间。这数据库文件就会面变换多少,由此二进制的副本为会合比小:

  sqlite>.exit

  sqlite3 test.db vacuum

  同样,容易用SQL转储作为CLP的输入流实现数据库导入:

  cp test.db test.Backup

  sqlite3 test.db

  8.另外命

  备份二进制数据库知识比复制文件稍多做一些行事。备份以前需要清理数据库,这样好纵部分早就去对象不再使用的空中。这数据库文件就会师换多少,因而二进制的副本为会合较小:

  sqlite>select
last_insert_rowid();  //得到最后插入的自行增长量值

  sqlite3 test.db vacuum

  sqlite>.tabes            //再次来到所有的表和视图

  cp test.db test.Backup

  sqlite>.indices Member       //查看一个表明的目录

  9.外命令

  sqlite>.schema Member      
//拿到一个表要视图的定义(DDL)语句,尽管没提供表名,则回所有数据库对象(table,view,index,triger)的定义语句

  sqlite>select last_insert_rowid();//得到最后插入的自行增长量值

  sqlite>.tabes//重回所有的表和视图

  sqlite>.indices Member //查看一个表明底目

  sqlite>.schema Member
//拿到一个注明或视图的概念(DDL)语句,假若无提供表名,则归所有数据库对象(table,view,index,triger)的定义语句

http://www.bkjia.com/Mysql/434484.htmlwww.bkjia.comtruehttp://www.bkjia.com/Mysql/434484.htmlTechArticleSQLite
是一个类Access的轻量级数据库系统,可是更有些、更快、容量还老,并作又强。为啥说
SQLite 最符合做 CMS (内容管理体系)呢?并无是…

留下评论

网站地图xml地图