sqlite数据库使用总结.docx_第1页
sqlite数据库使用总结.docx_第2页
sqlite数据库使用总结.docx_第3页
sqlite数据库使用总结.docx_第4页
sqlite数据库使用总结.docx_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

n Slide命令行功能简介DML/DDL语句的使用和以前一致,不做介绍.databases 列出数据库文件名.tables ?PATTERN? 列出?PATTERN?匹配的表名.import FILE TABLE将文件中的数据导入的文件中.dump ?TABLE? 生成形成数据库表的SQL脚本.output FILENAME 将输出导入到指定的文件中.output stdout 将输出打印到屏幕.mode MODE ?TABLE? 设置数据输出模式(csv,html,tcl.nullvalue STRING用指定的串代替输出的NULL串.read FILENAME执行指定文件中的SQL语句.schema ?TABLE?打印创建数据库表的SQL语句 .separator STRING 用指定的字符串代替字段分隔符.show 打印所有SQLite环境变量的设置.quit (或.exit)退出命令行接口sqlite官方提供的shell命令行程序sqlite3.exe如何使用及操作数据库详解1、创建数据库打开命令行窗口,确保当前路径能够执行sqlite3.exe。不明白的童鞋可以网上搜一下windows下环境变量path的设置。sqite3 DBNAME.EXT执行上面的命令,其中DBNAME为你要命名的数据库名,EXT为扩展名,扩展名有没有都可以。执行命令后,并不会立即生成文件。2、最重要的命令.help进入sqlite命令模式下后,执行.help这个命令,就会显示出所有可用的操作。任何时候忘记了命令,都可以去查查。到此,先说明两点一、凡是.help中显示列表中的命令,均不需要分号结尾二、凡是sql语句,均需要加分号结尾表示该语句结束,然后回车执行好,继续介绍命令。3、创建一个数据表create table tablename(fieldname fieldtype,.);和一般的sql语法差不多,只是写表结构的时候,字段名fieldname要写在字段类型fieldtype前面,同时注意分号作为sql语句结尾。在成功建表后,在sqlite.exe目录下已经生成了你的数据库文件。如果你不想将文件建在sqlite.exe目录下,可以在创建数据时这样书写,举个例子:sqite3 D:test.db也就是,将数据库文件起名test.db并放在d盘根目录下。4、关于执行select语句后不显示结果在.help帮助列表中,有一个.output stdout,这个命令的意思是将结果输出到屏幕上。如果你确认已经在表中插入数据,select却未显示结果,那么就执行.output stdout。然后再select。5、.help列表sqlite .help.backup ?DB? FILE Backup DB (default “main”) to FILE 备份数据库到文件 .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 导出数据到sql文件 If TABLE specified, only dump tables matching LIKE pattern TABLE. .echo ON|OFF Turn command echo on or off 开启/关闭命令回显 .exit Exit this program 退出sqlite .explain ?ON|OFF? Turn output mode suitable for EXPLAIN on or off.With no args, it turns EXPLAIN on. 开启/关闭执行命令后是否显示一些详细信息,建议开启 .header(s) ON|OFF Turn display of headers on or off 开启/关闭显示头部,例如select时的表头 .help Show this message .import FILE TABLE Import data from FILE into TABLE 将某文件中的数据导入到指定数据表 .indices ?TABLE? Show names of all indices.If TABLE specified, only show indices for tables matching LIKE pattern TABLE. .load FILE ?ENTRY? Load an extension library .log FILE|off Turn logging on or off. FILE can be stderr/stdout 开启/关闭日志记录,并可选择日志记录到文件或屏幕 .mode MODE ?TABLE? Set output mode where MODE is one of: 输入模式设置,比如,配合.output fname将数据直接按html格式输出到文件 csv Comma-separated values column Left-aligned columns. (See .width) html HTML code insert SQL insert statements for TABLE line One value per line 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 执行指定文件中的sql语句 .restore ?DB? FILE Restore content of DB (default “main”) from FILE 从个文件中恢复数据内容 .schema ?TABLE? Show the CREATE statements 显示数据表结构 If TABLE specified, only show tables matching LIKE pattern TABLE. .separator STRING Change separator used by output mode and .import .show Show the current values for various settings 显示当前各设置项的设定值 .stats ON|OFF Turn stats on or off .tables ?TABLE? List names of tables 将当前数据库中的数据表列举 If TABLE specified, only list tables matching LIKE pattern TABLE. .timeout MS Try opening locked tables for MS milliseconds .width NUM1 NUM2 Set column widths for “column” mode 当显示模式为colume时各列的显示宽度 .timer ON|OFF Turn the CPU timer measurement on or offSQlite命令行工具的使用 最近使用sqlite较多,这东西现在是越用越着迷,不管是工作或者个人自娱自乐写东西,只要有数据存储首先就想到了sqlite,我一直对C/S模式的数据存储很反感,记得在知道sqlite之前的很长一段时间里一直用的是xml来存数我的数据,我喜欢将数据存储在单一文件里,我可以随时把数据带在身上,而且它们兼容性够好,拿着数据文件到那里都能用,哪怕是在嵌入式系统里照样玩儿的转SQLite特性1. ACID事务 2. 零配置 无需安装和管理配置 3. 储存在单一磁盘文件中的一个完整的数据库 4. 数据库文件可以在不同字节顺序的机器间自由的共享 5. 支持数据库大小至2TB 6. 足够小, 大致3万行C代码, 250K 7. 比一些流行的数据库在大部分普通数据库操作要快 8. 简单, 轻松的API 9. 包含TCL绑定, 同时通过Wrapper支持其他语言的绑定 10. 良好注释的源代码, 并且有着90%以上的测试覆盖率 11. 独立: 没有额外依赖 12. Source完全的Open, 你可以用于任何用途, 包括出售它 13. 支持多种开发语言,C, PHP, Perl, Java, ASP.NET,Python Sqlite安装现在各大Linux发型版均有现成的软件包可供安装,而且大部份系统都是自带有的,想确认系统里有没有运行下$sqlite3非Linux系统到:/download.html下载安装接下来就是sqlite命令行工具的使用打开或创建数据库$sqlite3 test.db3这样就能打开或者创建一个新的数据库文件$sqlite3 test.db3SQLite version 3.6.23Enter .help for instructionsEnter SQL statements terminated with a ;sqlite 它看起来就是这个样子SQlite内置命令它除了能执行SQL语句以外还提供一组内置的命令,它们是以点.开始,比如说查看帮助信息就是 .help退出是 .exit 跟 .quit创建表在命令行里大部份的SQL语句它都是支持的,现在来新建两个表sqlitecreate table Artists (-ArtistID INTEGER PRIMARY KEY,-ArtistName TEXT);sqlite 对SQL语句大小写不敏感,所以大写小写随便sqlitecreate table CDs (-CDID INTEGER PRIMARY KEY,-ArtistID INTEGER NOT NULL,-Title TEXT NOT NULL,-Date TEXT);这里注意,除了INTEGER PRIMARY KEY其它字段是都可以是无类型的,也就是不关声明什么或者不声明,这个字段是可以存储任何数据的。插入数据sqliteinsert into Artists (ArtistID,ArtistName) values (NULL,Peter Gabriel);sqliteinsert into Artists (ArtistID,ArtistName) values (NULL,Bruce Hornsby);sqliteinsert into Artists (ArtistID,ArtistName) values (NULL,Lyle Lovett);sqliteinsert into Artists (ArtistID,ArtistName) values (NULL,Beach Boys);sqliteinsert into CDs (CDID,ArtistID,Title,Date) values (NULL,1,So,1984);sqliteinsert into CDs (CDID,ArtistID,Title,Date) values (NULL,1,Us,1992);sqliteinsert into CDs (CDID,ArtistID,Title,Date) values (NULL,2,The Way It Is,1986);sqliteinsert into CDs (CDID,ArtistID,Title,Date) values (NULL,2,Scenes from the Southside,1990);sqliteinsert into CDs (CDID,ArtistID,Title,Date) values (NULL,1,Security,1990);sqliteinsert into CDs (CDID,ArtistID,Title,Date) values (NULL,3,Joshua Judges Ruth,1992);sqliteinsert into CDs (CDID,ArtistID,Title,Date) values (NULL,4,Pet Sounds,1966);sqlite是支持导入sql文件的,只要使用内置命令.read即可,比如说我们将以上的命令建成一个sql文件,命名为insert_table.sqlinsert into Artists (ArtistID,ArtistName) values (NULL,Peter Gabriel);insert into Artists (ArtistID,ArtistName) values (NULL,Bruce Hornsby);insert into Artists (ArtistID,ArtistName) values (NULL,Lyle Lovett);insert into Artists (ArtistID,ArtistName) values (NULL,Beach Boys);insert into CDs (CDID,ArtistID,Title,Date) values (NULL,1,So,1984);insert into CDs (CDID,ArtistID,Title,Date) values (NULL,1,Us,1992);insert into CDs (CDID,ArtistID,Title,Date) values (NULL,2,The Way It Is,1986);insert into CDs (CDID,ArtistID,Title,Date) values (NULL,2,Scenes from the Southside,1990);insert into CDs (CDID,ArtistID,Title,Date) values (NULL,1,Security,1990);insert into CDs (CDID,ArtistID,Title,Date) values (NULL,3,Joshua Judges Ruth,1992);insert into CDs (CDID,ArtistID,Title,Date) values (NULL,4,Pet Sounds,1966);接着在命令行里运行sqlite.read insert_table.sql表查询来看看现在这两张表里都有那些内容,执行sqliteselect * from Artists; 和sqliteselect * from CDs;如果要同时看表头,请在运行查询语句前打开headers选项sqlite.headers ON输出结果看起来应该是这样子ArtisID|ArtistName1 |Peter Gabriel2 |Bruce Hornsby3 |Lyle Lovett4 |Beach Boys和CDID|ArtisID|Title |Date1 |1 |So |19842 |1 |Us |19923 |2 |The Way It Is |19864 |2 |Scenes from the Southside|19905 |1 |Security |19906 |3 |Joshua Judges Ruth |19927 |4 |Pet Sounds |1966其它的一些查询语句sqliteSELECT Title AS AlbumName FROM CDs; sqliteSELECT Title FROM CDs WHERE Date=1990 ORDER BY Title; sqliteSELECT Date FROM CDs; sqliteSELECT DISTINCT D

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论