當前位置:首頁 » 編程語言 » sqlite導入sql

sqlite導入sql

發布時間: 2023-03-31 21:22:48

Ⅰ 怎麼向sqlite資料庫里插數據

可用sql語句。

SQLite 的INSERT INTO語句用於向資料庫的某個表中添加新的數據行。

語法:

INSERT INTO 語句有兩種基本語法,如下所示:

INSERTINTOTABLE_NAME(column1,column2,column3,...columnN)]
VALUES(value1,value2,value3,...valueN);

在這里,column1, column2,...columnN 是要插入數據的表中的列的名稱。

如果要為表中納賣的所有列添加值,您也可以不需要在 SQLite 查詢中指定列名稱。洞銷逗但斗衡要確保值的順序與列在表中的順序一致。SQLite 的 INSERT INTO 語法如下:

INSERTINTOTABLE_NAMEVALUES(value1,value2,value3,...valueN);

Ⅱ 如何將sql文件導入sqlite

使用sqlite的文件導入導出功能
導入
命令:
.import
sqlite>
.import
文件名
表名
注1:
不要忘了開頭的點
注2:
這條語句不能用分號結束.
非sql不需要分號結束.
注3:
需要查看默認的分隔符separator.
必須一致.
如果不一致可能導致sqlite欄位分割錯誤.

查看分隔符使用命令
.show
,
如果不一致可直接修改,
比如:

sqlite>.separator
","

將分隔符轉為逗號.
舉例1:
將文件a.csv中的數據導入表
tab_xx.
(a.csv中欄位以逗號分割)
sqlite>
.separator
","
sqlite>
.import
a.csv
tab_xx
sqlite>
導入結束.
導出
實現方式:
將輸出重定向至文件.
命令:
.output
sqlite>
.output
a.txt
然後輸入sql語句,
查詢出要導的數據.
查詢後,數據不會顯示在屏幕上,而直接寫入文件.
結束後,輸入
sqlite>
.output
stdout
將輸出重定向至屏幕.
舉例2:

tab_xx
中的數據導出到文件a.txt
sqlite>
.output
a.txt
sqlite>
select
*
from
tab_xx;
sqlite>
.output
stdout
導出完畢.

Ⅲ SQLite資料庫如何批量插入數據

解決方法:
添加事務處理,把5000條插入作為一個事務
dataBase.beginTransaction(); //手動設置開始事務
//數據插入操作循環
dataBase.setTransactionSuccessful(); //設置事務處理成功,不設置會自動回滾不提交
dataBase.endTransaction(); //處理完成

將資料庫「倒出來」:
sqlite3 film.db ".mp" > output.sql
利用輸出的資料,建立一個一模一樣的資料庫(加上以上指令,就是標準的SQL資料庫
備份了):
sqlite3 film.db < output.sql
在大量插入資料時,你可能會需要先打這個指令:
begin;
插入完資料後要記得打這個指令,資料才會寫進資料庫中:
commit;

Ⅳ 如何將SQLite DB文件轉化成帶插入的sql語句

找到由SQLServer轉鎮運唯飢換的SQLite DB文件(可參考我的以前的經驗:SQLServer資料庫表導出SQLite DB文件方法),
下載動軟代碼生成工具並安裝,按照成功後到所有程序可以查看到

運行動軟代碼生成工具進入到主界面。
點擊左上角的新增伺服器注冊,彈出資料庫類型窗體。選擇SQLLite,點擊下一步。如下圖:
接下來會彈出選擇SQLite資料庫窗體,在資料庫文件文本框輸入本地SQLite db文件路徑,點擊確定(。系統會提示關閉軟體從新打開。
重新打開動軟代碼生成工具後,到左邊伺服器可以看見那你的SQLite資料庫

選擇一張表,右鍵選擇生成數據腳步(。會彈出一個提示:「如果該表數據量較大…」,直接選擇「是」(,點擊「是」後右邊出現生御山樑成的sql語句,包含新增語句和插入數據的語句。保存文件即可。

Ⅳ 如何使用SQLite

SQLite3是目前最新的SQLite版本。可以從網站上下載SQLite3的源代碼(本書使用的版本是sqlite-3.6.12.tar.gz)。
壓縮後進入sqlite-3.6.12的根目錄,首先命令「./configure」生成Makefile文件,接著運行命令「make」對源代碼進行編譯,最後運行命令「make install」安裝SQLite3。安裝完畢後,可以運行命令sqlite3查看SQLite3是否能正常運行,如下所示:
[root@localhost ~]# sqlite3
SQLite version 3.6.12
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
可以看到,SQLite3啟動後會停留在提示符sqlite>處,等待用戶輸入SQL語句。
在使用SQLite3前需要先了解下SQLite3支持的數據類型。SQLite3支持的基本數據類型主要態裂有以下幾類:
NULL
NUMERIC
INTEGER
REAL
TEXT
SQLite3會自動把其他數據類型轉換成以上5類基本數據類型,轉換規則如下所示:
char、clob、test、varchar—> TEXT
integer—>INTEGER
real、double、float—> REAL
blob—>NULL
其餘數據類型都轉變成NUMERIC
下面通過一個實例來演示SQLite3的使用方法。
新建一個資料庫
新建資料庫test.db(使用.db後綴是為了標識資料庫文件)。在test.db中新建一個表test_table,該表具有name,、sex、age三列。SQLite3的具體操作如下所示:
[root@localhost home]# sqlite3 test.db
SQLite version 3.6.12
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> create table test_table(name, sex, age);
如果資料庫test.db已經存在,則命令「sqlite3 test.db」會在當前目錄下打開test.db。如果資料庫test.db不存在,則命令「sqlite3 test.db」會在當前目錄下新建資料庫test.db。為了提高效率,SQLite3並不會馬上創建test.db,而是等到第一個表創建完成後才會燃閉敬在物理上創建資料庫。
由於SQLite3能根據插入數據的實際類型動態改變列的類型,所以在create語句中並不要求給出列的類型。
創建索引
皮慎為了加快表的查詢速度,往往在主鍵上添加索引。如下所示的是在name列上添加索引的過程。
sqlite> create index test_index on test_table(name);
操作數據
如下所示的是在test_table中進行數據的插入、更新、刪除操作:
sqlite> insert into test_table values ('xiaoming', 'male', 20);
sqlite> insert into test_table values ('xiaohong', 'female', 18);
sqlite> select * from test_table;
xiaoming|male|20
xiaohong|female|18
sqlite> update test_table set age=19 where name = 'xiaohong';
sqlite> select * from test_table;
xiaoming|male|20
xiaohong|female|19
sqlite> delete from test_table where name = 'xiaoming';
sqlite> select * from test_table;
xiaohong|female|19
批量操作資料庫
如下所示的是在test_table中連續插入兩條記錄:
sqlite> begin;
sqlite> insert into test_table values ('xiaoxue', 'female', 18);
sqlite> insert into test_table values ('xiaoliu', 'male', 20);
sqlite> commit;
sqlite> select * from test_table;
xiaohong|female|19
xiaoxue|male|18
xiaoliu|male|20
運行命令commit後,才會把插入的數據寫入資料庫中。
資料庫的導入導出
如下所示的是把test.db導出到sql文件中:
[root@localhost home]# sqlite3 test.db ".mp" > test.sql;
test.sql文件的內容如下所示:
BEGIN TRANSACTION;
CREATE TABLE test_table(name, sex, age);
INSERT INTO "test_table" VALUES('xiaohong','female',19);
CREATE INDEX test_index on test_table(name);
COMMIT;
如下所示的是導入test.sql文件(導入前刪除原有的test.db):
[root@localhost home]# sqlite3 test.db < test.sql;
通過對test.sql文件的導入導出,可以實現資料庫文件的備份。
11.2.2 SQLite3的C介面
以上介紹的是SQLite3資料庫的命令操作方式。在實際使用中,一般都是應用程序需要對資料庫進行訪問。為此,SQLite3提供了各種編程語言的使用介面(本書介紹C語言介面)。SQLite3具有幾十個C介面,下面介紹一些常用的C介面。
sqlite_open
作用:打開SQLite3資料庫
原型:int sqlite3_open(const char *dbname, sqlite3 **db)
參數:
dbname:資料庫的名稱;
db:資料庫的句柄;
sqlite_colse
作用:關閉SQLite3資料庫
原型:int sqlite_close(sqlite3 *db)
例如:
test.c:
#include <stdio.h>
#include <sqlite3.h>

static sqlite3 *db=NULL;

int main()
{
int rc;
rc= sqlite3_open("test.db", &db);

if(rc)
{
printf("can't open database!\n");
}
else
{
printf("open database success!\n");
}

sqlite3_close(db);
return 0;
}
運行命令「gcc –o test test.c –lsqlite3」進行編譯,運行test的結果如下所示:
[root@localhost home]# open database success!
sqlite_exec
作用:執行SQL語句
原型:int sqlite3_exec(sqlite3 *db, const char *sql, int (*callback)(void*,int,char**,char**), void *, char **errmsg)
參數:
db:資料庫;
sql:SQL語句;
callback:回滾;
errmsg:錯誤信息
例如:
test.c:
#include <stdio.h>
#include <sqlite3.h>

static sqlite3 *db=NULL;
static char *errmsg=NULL;

int main()
{
int rc;

rc = sqlite3_open("test.db", &db);
rc = sqlite3_exec(db,"insert into test_table values('bao', 'male', 24)", 0, 0, &errmsg);

if(rc)
{
printf("exec fail!\n");
}
else
{
printf("exec success!\n");
}

sqlite3_close(db);
return 0;
}
編譯完成後,運行test的結果如下所示:
[root@localhost home]# ./test
exec success!
[root@localhost home]# sqlite3 test.db
SQLite version 3.6.11
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> select * from test_table;
bao|male|24
sqlite3_get_table
作用:執行SQL查詢
原型:int sqlite3_get_table(sqlite3 *db, const char *zSql, char ***pazResult, int *pnRow, int *pnColumn, char **pzErrmsg)
參數:
db:資料庫;
zSql:SQL語句;
pazResult:查詢結果集;
pnRow:結果集的行數;
pnColumn:結果集的列數;
errmsg:錯誤信息;
sqlite3_free_table
作用:注銷結果集
原型:void sqlite3_free_table(char **result)
參數:
result:結果集;
例如:
test.c:
#include <stdio.h>
#include <sqlite3.h>

static sqlite3 *db=NULL;
static char **Result=NULL;
static char *errmsg=NULL;

int main()
{
int rc, i, j;
int nrow;
int ncolumn;

rc= sqlite3_open("test.db", &db);
rc= sqlite3_get_table(db, "select * from test_table", &Result, &nrow, &ncolumn,
&errmsg);

if(rc)
{
printf("query fail!\n");
}
else
{
printf("query success!\n");
for(i = 1; i <= nrow; i++)
{
for(j = 0; j < ncolumn; j++)
{
printf("%s | ", Result[i * ncolumn + j]);
}
printf("\n");
}
}

sqlite3_free_table(Result);
sqlite3_close(db);
return 0;
}
編譯完成後,運行test的結果如下所示:
[root@localhost home]# ./test
query success!
xiaohong | female | 19 |
xiaoxue | female | 18 |
xiaoliu | male | 20 |
bao | male | 24 |
sqlite3_prepare
作用:把SQL語句編譯成位元組碼,由後面的執行函數去執行
原型:int sqlite3_prepare(sqlite3 *db, const char *zSql, int nByte, sqlite3_stmt **stmt, const char **pTail)
參數:
db:資料庫;
zSql:SQL語句;
nByte:SQL語句的最大位元組數;
stmt:Statement句柄;
pTail:SQL語句無用部分的指針;
sqlite3_step
作用:步步執行SQL語句位元組碼
原型:int sqlite3_step (sqlite3_stmt *)
例如:
test.c:
#include <stdio.h>
#include <sqlite3.h>

static sqlite3 *db=NULL;
static sqlite3_stmt *stmt=NULL;

int main()
{
int rc, i, j;
int ncolumn;

rc= sqlite3_open("test.db", &db);
rc=sqlite3_prepare(db,"select * from test_table",-1,&stmt,0);

if(rc)
{
printf("query fail!\n");
}
else
{
printf("query success!\n");
rc=sqlite3_step(stmt);
ncolumn=sqlite3_column_count(stmt);
while(rc==SQLITE_ROW)
{
for(i=0; i<2; i++)
{
printf("%s | ", sqlite3_column_text(stmt,i));
}
printf("\n");
rc=sqlite3_step(stmt);
}
}

sqlite3_finalize(stmt);
sqlite3_close(db);
return 0;
}
編譯完成後,運行test的結果如下所示:
[root@localhost home]# ./test
query success!
xiaohong | female | 19 |
xiaoxue | female | 18 |
xiaoliu | male | 20 |
bao | male | 24 |
在程序中訪問SQLite3資料庫時,要注意C API的介面定義和數據類型是否正確,否則會得到錯誤的訪問結果。

Ⅵ SQL資料庫里的表名稱,欄位和類型與Sqlite資料庫的表定義完全相同,SQL表裡的數據添加到對應Sqlite表

今天在將sql
server轉化為sqlite的資料庫的時候,遇到不少的問題,在網上搜了很長時間譽團,都沒有找到合適的軟體將sql
server轉化成sqlite,其中用到了sqlitedev軟體,在轉化的過程中,如果你的表有問題,則不能全部轉化,不得已,在網上繼續搜索轉化的軟體,終於找到了一款非常完美、且非常簡單和使用的軟體。先分享給大家:
1.
在1處,輸入sql
server的伺服器地址名稱,輸入完成後,點擊set,會出來選擇資料庫(select
db)的,用戶可以選擇想要轉化的資料庫
2.在2處,如果連接資料庫有密碼,需要將integrated前面的對號去掉,輸入連接資料庫的用戶名和密碼
3.在3處滑棗,輸入轉化成sqlite的文件路徑和文件名
4.點擊此處慶讓橘,開始轉化。

Ⅶ SQLite 資料庫管理工具navicat 怎麼用

1、首先下載安裝好Navicat for MySQL。
2、運行程序

3、連接遠程資料庫,點擊「文件」,選擇「創建連接」或者直接點連接這個圖標。如下圖

4、在新窗口填寫所要連接管理的資料庫的信息,可以「連接測試」,或直接「確定」。

登陸成功

5、連接數據後,打開資料庫,才可進行更多操作,如下圖

6、備份資料庫,一般是存為SQL文件,選中要備份的數據,右鍵,轉存SQL文件或點,如圖。

保存文件,然後等待完成就可以了。

7、導入資料庫,最好是清空原來的資料庫,然後選中需要導入資料庫,右鍵,選擇「運行SQL文件」,從本地磁碟查找備份的SQL文件。

8、編碼可根據實際情況選定也可不特別的指明,軟體會覆蓋原來的,然後點擊開始,導入數據。

分享一些navicat的使用心得,幫助那些入門的程序員們盡快的熟悉上這個軟體。今天就先寫navicat如何連接本地mysql資料庫。
navicat如何連接mysql:
1、首先你電腦上必須安裝了mysql的資料庫。(如果你不清楚自己是否已經安裝成功mysql,你可以在開始菜單輸入「mysql」,進行搜索)

2、打開你的Navicat for Mysql (這里也可以使用上面的方法,在開始菜單搜索框中輸入『navicat』)

3、打開後單機工具欄左邊第一個『connection』,進入連接頁面。

4、最重要的一步:打開的界面有五個框需要輸入,第一個:connection Name 需要輸入的是你新建的連接的的名字,這里我們就命名為『本地』,第二個:
Host Name/Ip Address 你需要輸入的是你本機的ip地址或者直接輸入』localhost』,這里我們選擇第二種。 第三個:Port ,輸入你安裝時候的埠號,一般為默認的3306;第四個和第五個分別為:UserName和Password,意思為你需要輸入你資料庫名用戶名和密碼,我的用戶名是:root,密碼:(保密,嘿嘿)。最後把下面那個『Save Passwod』的小框框給勾上。

5、完成上面步驟,然後點擊左下角有個『test Connectiion』如果彈出success,恭喜你直接點擊右下角的『save』按鈕就可以了。如果彈出error ,你則需要再重新仔細查看自己哪裡填錯了。

6、點擊『save』後,你就可以雙擊「本地」(這里的『本地』是你剛才輸入的connection Name),然後打開你的資料庫了。

Ⅷ 如何將sqlite導出到sql

將SQLite數據轉換成sql server數據
http://www.th7.cn/db/mssql/201309/34029.shtml

圖塵拿文教程,老沖請參考,按步驟進行派含搭操作

Ⅸ sqlite的幾個常用方法

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
.l ON|OFF Stop after hitting an error. Default OFF
.databases List names and files of attached databases
.mp ?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 <table> 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>

改變輸出格式

sqlite3程序可以以八種不同的格式顯示一個查詢的結果:"csv", "列", "html", "插入", "行", "製表"和"tcl"。你可以用".mode"點命令在這些輸出格式之間切換。

默認的輸出格式是「列表」。在列表模式下,每條查詢結果記錄被寫在一行中並且每列之間以一個字元串分割符隔開。默認的分隔符是一個管道符號(「|」)。列表符號在當你輸出查詢結果到另外一個符加處理的程序(如AWK)中去是尤為有用。

sqlite> .mode list
sqlite> select * from tbl1;
hello|10
goodbye|20
sqlite>

你可以用「.separator」點命令來改變分界符。例如,為了把分割符改為一個逗號和一個空格,你可以這樣做:

sqlite> .separator ", "
sqlite> select * from tbl1;
hello, 10
goodbye, 20
sqlite>

在「line"模式下,每一個位於條記錄中的列在它自己那行顯示。每行由列名、一個等號和列數據組成。下一條記錄以一個空行隔開。這是一個行模式輸出的例子:

sqlite> .mode line
sqlite> select * from tbl1;
one = hello
two = 10

one = goodbye
two = 20
sqlite>

在列模式下,每條記錄在一個單獨的行中以數據列對齊的方式顯示。列如:

sqlite> .mode column
sqlite> select * from tbl1;
one two
---------- ----------
hello 10
goodbye 20
sqlite>

在默認的情況下,每列至少10個字元寬。太寬的數據將被截取。你可以用「.width」命令來調整列寬。如下所示:

sqlite> .width 12 6
sqlite> select * from tbl1;
one two
------------ ------
hello 10
goodbye 20
sqlite>

上面例子中".width"命令設置第一列寬為12第二列寬為6。其它的列寬不變。你可以指定與你查詢結果需要的列數一樣多的「.width」參數。

如果你指定一列寬為0,那麼這個列寬將自動以下面三個數字中的最大值做為列寬:10、表頭寬度和最寬的數據列的寬度。這可以讓列自動調整寬度。每列的默認設置為自動調整的0值。

出現在輸出開頭兩行的列標示可以用".header"點命令關閉。在上面的例子中,列標示是打開的。可以用下面的方法關閉列標示:

sqlite> .header off
sqlite> select * from tbl1;
hello 10
goodbye 20
sqlite>

另外一個有用的輸出模式是"insert"。在插入模式下,被子格式化為看起來像SQL INSERT語句的樣式。你可以用插入模式來產生文件(便於)以後用於不同資料庫的輸入。

當指定插入模式時,你必須給定一個特定參數就是要插入的表名。例如:

sqlite> .mode insert new_table
sqlite> select * from tbl1;
INSERT INTO 'new_table' VALUES('hello',10);
INSERT INTO 'new_table' VALUES('goodbye',20);
sqlite>

最新的輸出格式是「html」。在這種模式下,sqlite3把查詢的結果寫做XHTML表。開始的<TABLE>和結束的</TABLE>(標記)沒有寫出,但有<TR>、<TH>和<TD>等分界符。html輸出對 CGI來說是相當有用地。

把結果寫到文件中

默認情況下,sqlte3把結送到標准輸出。你可以用「.output」命令改變它。只須把輸出文件名做為.output命令的輸出參數然後所有後續查詢結果將被寫到那個文件中。用「.output stdout」再一次改為標准輸出。例如:

sqlite> .mode list
sqlite> .separator |
sqlite> .output test_file_1.txt
sqlite> select * from tbl1;
sqlite> .exit
$ cat test_file_1.txt
hello|10
goodbye|20
$

查詢資料庫結構

sqlite3程序提供幾個有用的用於查詢資料庫結構的快捷命令。這些不是不可以用別的方式來實現。這些命令僅僅是一個快捷方式而已。

例如,為了查看資料庫的表列表,你可以敲入「.tables」。

sqlite> .tables
tbl1
tbl2
sqlite>

「.tables」命令相似於設置列表模式然後執行接下來的查詢:

SELECT name FROM sqlite_master
WHERE type IN ('table','view') AND name NOT LIKE 'sqlite_%'
UNION ALL
SELECT name FROM sqlite_temp_master
WHERE type IN ('table','view')
ORDER BY 1事實上,你可以查看sqlite3的源代碼(可以在源文件樹的src/shell.c中),你可找到上面的具體的查詢。「.indices」命令作用類似的方式是列出特定表的所有的索引。「.indics」命令須一個參數即所要索引表的表名。最後,但不是至少,是「.schema」命令。不帶任何參數,「.schema」命令顯示原始的用於創建當前資料庫的CREATE TABLE和CREATE INDEX語句。如果你給".schema"命令一個表名,它顯示原始的創建該表和它所有索引的CREATE語句。我們可以:sqlite> .schemacreate table tbl1(one varchar(10), two smallint)CREATE TABLE tbl2 ( f1 varchar(30) primary key, f2 text, f3 real)sqlite> .schema tbl2CREATE TABLE tbl2 ( f1 varchar(30) primary key, f2 text, f3 real)sqlite> ".schema"命令可以用設置列表然後執行以下查詢來實現:

SELECT sql FROM
(SELECT * FROM sqlite_master UNION ALL
SELECT * FROM sqlite_temp_master)
WHERE type!='meta'
ORDER BY tbl_name, type DESC, name

.databases 列出資料庫文件名
.tables ?PATTERN? 列出?PATTERN?匹配的表名
.import FILE TABLE 將文件中的數據導入的文件中
.mp ?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 退出命令行介面

熱點內容
qq聊天記錄在哪個文件夾win7 發布:2024-05-30 20:15:02 瀏覽:956
java的gc 發布:2024-05-30 20:14:04 瀏覽:403
文檔型資料庫 發布:2024-05-30 20:13:58 瀏覽:532
腳本滑動沒用 發布:2024-05-30 20:13:17 瀏覽:818
編譯原理全都要學嗎 發布:2024-05-30 19:51:32 瀏覽:805
計數演算法高中 發布:2024-05-30 19:29:08 瀏覽:296
百度首頁源碼 發布:2024-05-30 19:23:55 瀏覽:660
安卓腳本優化v6 發布:2024-05-30 19:13:15 瀏覽:49
dos文件加密命令 發布:2024-05-30 18:44:18 瀏覽:942
絲瓜視頻伺服器地址 發布:2024-05-30 18:40:02 瀏覽:955