资源预览内容
第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
第9页 / 共13页
第10页 / 共13页
亲,该文档总共13页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
SQLITE入门-逐步讲解 SQLITE命令行(一)首先做点铺垫说明:sqlite程序通过查找分号(;)来决定一个 SQL语句的结束,所以要执行 SQL语句请确保在 SQL语句后有分号(;).如果你省略分号,sqlite3 将给你一个连续的命令提示符(. )并等你给当前的 SQL命令添加更多的文字。这个特点让你输入多行的多个 SQL语句.但点号(.)命令不要分号(;).ctrl+c 可以结束当前命令。1. 在 dos窗口输入 sqlite3 test.db,然后回车,结果如下: F:sqlite3 test.dbSQLite version 3.6.16Enter .help for instructionsEnter SQL statements terminated with a ;此时我们并没有在 F盘下看到 test.db,需要在输入分号(;)然后回车如下: F:sqlite3 test.dbSQLite version 3.6.16Enter .help for instructionsEnter SQL statements terminated with a ;sqlite ;sqlite我们现在就可以看到在 F盘下有 test.db文件了。 附:此命令如果没有 test.db数据库则创建,如果有则打开,实例见下文。2. 建立表(websites), 命令CREATE TABLE websites (WebID INTEGER NOT NULL PRIMARY KEY,WebName VARCHAR(20) NULL);注意;不可少;号不可缺少,否则不执行。3. 插入数据: insert into websites (WebName)values(CTOChina.net);insert into websites (WebName)values(搜狐);insert into websites (WebName)values(雅虎);4. 查看数据: sqlite select * from websites;1|CTOChina.net2|搜狐3|雅虎sqliteSQLITE入门-逐步讲解 SQLITE命令行(二)可以接着上一步操作,直接向 DOS窗口输入.help 命令来查看 SQLite的所有命令行及解释如下:F:sqlite3SQLite version 3.6.16Enter .help for instructionsEnter SQL statements terminated with a ;sqlite .help也可以 ctrl+c结束命令,想 DOS窗口 输入 sqlite3执行后再输入.help 命令如下:F:sqlite3SQLite version 3.6.16Enter .help for instructionsEnter SQL statements terminated with a ;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.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.genfkey ?OPTIONS? Options are:-no-drop: Do not drop old fkey triggers.-ignore-errors: Ignore tables with fkey errors -exec: Execute generated SQL immediatelySee file tool/genfkey.README in the sourcedistribution for further information.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 valuescolumn Left-aligned columns. (See .width)html HTML table .backup mydb.baksqlite此时可以再 F盘看到 mydb.bak文件,用记事本打开虽然是乱码,但可窥见一斑。 .restore ?DB? FILE 从备份文件还原数据和.backup 相对应. 接上一步,我们可以 ctrl+c结束命令,我们再建立一个新的库,来用 mydb.bak文件还原,命令如下: sqlite CF:sqlite3 test0.dbSQLite version 3.6.16Enter .help for instructionsEnter SQL statements terminated with a ;sqlite ;sqlite .restore mydb.baksqlite验证数据如下: sqlite select * from websites;1|CTOChina.net2|搜狐3|雅虎sqlite为了下边的顺利进行,我们重新打开 test.db数据: sqlite CF:sqlite3 test.dbSQLite version 3.6.16Enter .help for instructionsEnter SQL statements terminated with a ;sqlite .bail ON|OFF 遇到错误是继续还是终止选项,默认是终止. .databases 显示文件中数据库列表,如果没有附加数据库的情况下,文件中只有 main数据库。如: sqlite .databasesseq name file- - -0 main F:test.dbsqliteSQLITE入门-逐步讲解 SQLITE命令行(四) .dump ?TABLE? . 以 SQL语句方式显示表的结构。如: sqlite .dump webstiesBEGIN TRANSACTION;COMMIT;sqlite .dump websitesBEGIN TRANSACTION;CREATE TABLE websites (WebID INTEGER NOT NULL PRIMARY KEY,WebName VARCHAR(20) NULL);INSERT INTO websites VALUES(1,CTOChina.net);INSERT INTO websites VALUES(2,搜狐);INSERT INTO websites VALUES(3,雅虎);COMMIT;sqlite .echo ON|OFF 是输出还是隐藏操作命令的命令,默认是隐藏, 显示命令: sqlite .echo onsqlite select * from websites;select * from websites;1|CTOChina.net2|搜狐3|雅虎sqlite可以看出select * from websites;在和查询结果一起显示在屏幕上。隐藏命令如: sqlite .echo offsqlite select * from websites;1|CTOChina.net2|搜狐3|雅虎sqlite .exit 退出 SQLite程序 .explain ON|OFF .explain命令可以被用来设置输出格式为“column” 并设置列宽为 EXPLAIN命令看起来比较合理的宽度。EXPLAIN 命令是 SQLite特有的 SQL扩展,它是对调试有用。如果任何常规的 SQL被 EXPLAIN执行,那么 SQL命令被分解并分析但并不执行。取而代之的是,虚拟机指令序列将被用于执行 SQL命令并返回一个类似的查询结果。可结合.width 命令查看效果如: sqlite .explainsqlite select * from websites;WebI WebName- -1 CTOChina.net2 搜狐3 雅虎sqlite用.width 设置宽度再看效果 sqlite .width 10 20sqlite select * from websites;WebID WebName- -1 CTOChina.net2 搜狐3 雅虎sqlite .header(s) ON|OFF 输出|隐藏字段名选项,默认是隐藏,如: sqlite select * from websites;1|CTOChina.net2|搜狐3|雅虎sqlite 我们用.header 命令把字段名显示出来,如: sqlite .header onsqlite select * from websites;WebID|WebName1|CTOChina.net2|搜狐3|雅虎sqliteSQLITE入门-逐步讲解 SQLITE命令行(五) .help 显示帮助信息 .import FILE TABLE 把文件中的数据导入到表中,各字段用 separator(默认是|)的值为分隔符,下面我们举个例子。 我们在 F盘下建一个 data.txt文件,内容如下: 4|开源5|技术.import命令操作如下: sqlite .import data.txt websitessqlite查看结果如下: sqlite select * from websites;WebID|WebName1|CTOChina.net2|搜狐3|雅虎4|开源5|技术sqlite我们已经看到 4|开源5|技术数据,已经导入 websites表中了. .indices TABLE “.indices”命令作用类似的方式是列出特定表的所有的索引。“.indices”命令须一个参数即所要索引表的表名。在此提醒下“.schema”命令,如果.schema不带任何参数,“.schema”命令显示原始的用于创建当前数据库的 CREATE TABLE和 CREATE INDEX语句。如果你给.schema命令一个表名,它显示原始的创建该表和它所有索引的 CREATE语句。为了举例,我们先建个索引以作铺垫。在表 websites的 webID字段上建立一个名为 mytest
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号