ubuntu下安装sqlite3转Word文档格式.docx
《ubuntu下安装sqlite3转Word文档格式.docx》由会员分享,可在线阅读,更多相关《ubuntu下安装sqlite3转Word文档格式.docx(7页珍藏版)》请在冰豆网上搜索。
如果文件不存在,则创建一个新的(数据库)文件。
然后sqlite3程序将提示你输入SQL。
敲入SQL语句(以分号“;
”结束),敲回车键之后,SQL语句就会执行。
例如,创建一个包含一个表"
tb11"
名字为"
ex1"
的SQLite数据库,你可以这样做:
$sqlite3ex1SQLiteversion3.3.17Enter"
.help"
forinstructionssqlite&
gt;
createtabletbl1(onevarchar(10),twosmallint);
sqlite&
insertintotbl1values('
hello!
'
10);
goodbye'
20);
select*fromtbl1;
|10goodbye|20sqlite&
你可以通过敲你所用系统的文件结束符(通常是Ctrl+D)或者中断字符(通常是Ctrl+C)。
来终止sqlite3程序。
确定你在每个SQL语句结束敲入分号!
sqlite3程序通过查找分号来决定一个SQL语句的结束。
如果你省略分号,sqlite3将给你一个连续的命令提示符并等你给当前的SQL命令添加更多的文字。
这个特点让你输入多行的多个SQL语句,例如:
createtabletbl2(...&
f1varchar(30)primarykey,...&
f2text,...&
f3real...&
);
题外话:
查询SQLITE_MASTER表SQLite数据库的框架被保存在一个名叫"
sqlite_master"
的特殊的表中。
你可以像查询其它表一样通过执行“SELECT”查询这个特殊的表。
例如:
$sqlite3ex1SQlitevresion3.3.10Enter"
select*fromsqlite_master;
type=tablename=tbl1tbl_name=tbl1rootpage=3sql=createtabletbl1(onevarchar(10),twosmallint)sqlite&
但你不能在sqlite_master表中执行诸如DROPTABLE,UPDATE,INSERT或者DELETE命令。
sqlite_master表在你创建、删除和索引数据库时自动更新这个表。
你不能手工更改sqlite_master表。
TEMPORARY表的结构没有存储在"
表中,由于TEMPORARY表对应用是不可见的,而不是应用程序创建这个表。
TEMPORARY表结构被存储在另外一个名叫"
sqlite_temp_master"
的特定的表中。
"
表是临时表自身。
sqlite3的特殊命令大多数候,sqlite3读入输入行,并把它们传递到SQLite库中去运行。
但是如果输入行以一个点(“.”)开始,那么这行将被sqlite3程序自己截取并解释。
这些“点命令”通常被用来改变查询输出的格式,或者执行鞭个预封包(预定义prepackaged)的查询语句。
你可以在任何时候输入“.help”,列出可用的点命令。
例如sqlite&
.help.bailON|OFFStopafterhittinganerror.DefaultOFF.databasesListnamesandfilesofattacheddatabases.dump?
TABLE?
...DumpthedatabaseinanSQLtextformat.echoON|OFFTurncommandechoonoroff.exitExitthisprogram.explainON|OFFTurnoutputmodesuitableforEXPLAINonoroff..header(s)ON|OFFTurndisplayofheadersonoroff.helpShowthismessage.importFILETABLEImportdatafromFILEintoTABLE.indicesTABLEShownamesofallindicesonTABLE.loadFILE?
ENTRY?
Loadanextensionlibrary.modeMODE?
SetoutputmodewhereMODEisoneof:
csvComma-separatedvaluescolumnLeft-alignedcolumns.(See.width)htmlHTML&
lt;
table&
codeinsertSQLinsertstatementsforTABLElineOnevalueperlinelistValuesdelimitedby.separatorstringtabsTab-separatedvaluestclTCLlistelements.nullvalueSTRINGPrintSTRINGinplaceofNULLvalues.outputFILENAMESendoutputtoFILENAME.outputstdoutSendoutputtothescreen.promptMAINCONTINUEReplacethestandardprompts.quitExitthisprogram.readFILENAMEExecuteSQLinFILENAME.schema?
ShowtheCREATEstatements.separatorSTRINGChangeseparatorusedbyoutputmodeand.import.showShowthecurrentvaluesforvarioussettings.tables?
PATTERN?
ListnamesoftablesmatchingaLIKEpattern.timeoutMSTryopeninglockedtablesforMSmilliseconds.widthNUMNUM...Setcolumnwidthsfor"
column"
modesqlite&
改变输出格式sqlite3程序可以以八种不同的格式显示一个查询的结果:
csv"
"
列"
html"
插入"
行"
制表"
和"
tcl"
。
你可以用"
.mode"
点命令在这些输出格式之间切换。
默认的输出格式是“列表”。
在列表模式下,每条查询结果记录被写在一行中并且每列之间以一个字符串分割符隔开。
默认的分隔符是一个管道符号(“|”)。
列表符号在当你输出查询结果到另外一个符加处理的程序(如AWK)中去是尤为有用。
.modelistsqlite&
hello|10goodbye|20sqlite&
你可以用“.separator”点命令来改变分界符。
例如,为了把分割符改为一个逗号和一个空格,你可以这样做:
.separator"
hello,10goodbye,20sqlite&
在“line"
模式下,每一个位于条记录中的列在它自己那行显示。
每行由列名、一个等号和列数据组成。
下一条记录以一个空行隔开。
这是一个行模式输出的例子:
.modelinesqlite&
one=hellotwo=10one=goodbyetwo=20sqlite&
在列模式下,每条记录在一个单独的行中以数据列对齐的方式显示。
列如:
.modecolumnsqlite&
onetwo--------------------hello10goodbye20sqlite&
在默认的情况下,每列至少10个字符宽。
太宽的数据将被截取。
你可以用“.width”命令来调整列宽。
如下所示:
.width126sqlite&
onetwo------------------hello10goodbye20sqlite&
上面例子中"
.width"
命令设置第一列宽为12第二列宽为6。
其它的列宽不变。
你可以指定与你查询结果需要的列数一样多的“.width”参数。
如果你指定一列宽为0,那么这个列宽将自动以下面三个数字中的最大值做为列宽:
10、表头宽度和最宽的数据列的宽度。
这可以让列自动调整宽度。
每列的默认设置为自动调整的0值。
出现在输出开头两行的列标示可以用"
.header"
点命令关闭。
在上面的例子中,列标示是打开的。
可以用下面的方法关闭列标示:
.headeroffsqlite&
hello10goodbye20sqlite&
另外一个有用的输出模式是"
insert"
在插入模式下,被子格式化为看起来像SQLINSERT语句的样式。
你可以用插入模式来产生文件(便于)以后用于不同数据库的输入。
当指定插入模式时,你必须给定一个特定参数就是要插入的表名。
.modeinsertnew_tablesqlite&
INSERTINTO'
new_table'
VALUES('
hello'