資料庫管理
創建資料庫,創建完成之后自動進入
[root@localhost ~]# sqlite3 /www/wwwroot/task.db
使用資料庫,如果 /www/wwwroot 路徑下面沒有task.db這個資料庫,則會自動創建資料庫
[root@localhost ~]# sqlite3 /www/wwwroot/task.db
其他命令
sqlite> .databases # 查看資料庫串列 sqlite> .quit # 退出 sqlite 提示符
表管理
每一個 SQLite 資料庫都有一個叫 SQLITE_MASTER 的表, 里面存盤著資料庫的資料結構(表結構、視圖結構、索引結構等),只可以對它使用查詢陳述句,即SQLITE_MASTER 表是只讀的,SQLITE_MASTER 表DDL資訊如下:
CREATE TABLE sqlite_master (type TEXT, name TEXT, tbl_name TEXT, rootpage INTEGER, sql TEXT);
type:型別(如表、視圖、索引等) name:名稱 tbl_name:所屬表名稱 SQL:(表、視圖、索引)的DDL陳述句,
創建表
sqlite> create table tb_user( ...> id INTEGER PRIMARY KEY, ...> name TEXT, ...> time TEXT ...> );
查看所有表
-- 對于表來說,type 欄位永遠是 'table',name 欄位永遠是表的名字,所以,要獲得資料庫中所有表的串列, 使用下列SELECT陳述句: sqlite> SELECT name FROM sqlite_master WHERE type='table' ORDER BY name; -- 方法1 sqlite> .table -- 方法2 -- 對于索引來說,type 等于 'index', name 則是索引的名字,tbl_name 是該索引所屬的表的名字, 使用下列SELECT陳述句: sqlite> SELECT name FROM sqlite_master WHERE type='index' ORDER BY name; -- 對于視圖來說,type 等于 'view', name 則是視圖的名字,tbl_name 是該視圖所屬的表的名字, 使用下列SELECT陳述句: sqlite> SELECT name FROM sqlite_master WHERE type='view' ORDER BY name;
檢查某個表是否存在
sqlite> SELECT name FROM sqlite_master WHERE type='table' AND name='表名'; sqlite> SELECT name FROM sqlite_master WHERE type='table' AND name='tb_task'; sqlite> SELECT count(*) FROM sqlite_master WHERE type='table' AND name='tb_task';
查看某個表的完整創建資訊
sqlite> .schema 表名 sqlite> .schema tb_task
查看某個表的所有欄位資訊
sqlite> PRAGMA table_info(表名); sqlite> PRAGMA table_info(tb_task);
洗掉表
sqlite> drop table tb_task; -- 方法1 sqlite> drop table if exists tb_task; -- 方法2
重命名表
sqlite> alter table tb_task rename to tb_user; -- 將表tb_task重命名為tb_user
新增列、洗掉列、重命名列
-- 新增列 sqlite> alter table tb_task add column username TEXT; -- 洗掉列,A表有x,y,z三列,現在洗掉x列 sqlite> create table B as select y,z from A sqlite> drop table if exists A -- 將A表洗掉 sqlite> alter table B rename to A -- 將B表重命名為A
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/2515.html
標籤:其它
上一篇:Sqlite—資料型別
