1.視覺化軟體中
//建立表 create table (表名,欄位名,字段型別)(integer:有符號整型,text:文字型別,real:浮點型)
//primary key :主鍵(唯一+自增)
//create table
if not exists
需要新增後面的 (如果表不存在,就建立;否則不建立)
//create table people (id integer, name text, age integer, class text);
create table if not exists people (id integer primary key, name text, age integer, class text);
// where 選擇條件; and 與; or 或;
//增:insert into
insert into people (id,name,age,class) values (1,'jonny',20,'class1512');
insert into people (id,name,age,class) values (2,'maggie',19,'class1501');
insert into people (id,name,age,class) values (3,'bob',21,'class1511');
//改:update ... set
update people set class='class1510' where name='jonny';
//查:select from
select * from people;
select name from people;
select * from people where age>19 and age<22;
//刪: delete from
delete from people where name='maggie';
2.**中
//用於建立連線
sqlite3_open(<#const char *filename#>, <#sqlite3 **ppdb#>);
//用於建立sql檔案、增、刪、改
sqlite3_exec(<#sqlite3 *#>, <#const char *sql#>, <#int (*callback)(void *, int, char **, char **)#>, <#void *#>, <#char **errmsg#>);
//用於查詢
sqlite3_prepare_v2(<#sqlite3 *db#>, <#const char *zsql#>, <#int nbyte#>, <#sqlite3_stmt **ppstmt#>, <#const char **pztail#>);
- (void)createdbanddataoperation
//2.
建立表(
主鍵primary key:唯一+
自增)const
char
*createtable =
"create table if not exists people (id integer primary key,name text,age integer,height real)"
;char
*errmsg =
null
;ret =
sqlite3_exec
(db, createtable,
null
,null
, &errmsg);
if(ret !=
sqlite_ok
) //
增、刪、改、查
//id
是主鍵,自增不需要給值
//增(**每執行一次都會新增一條相同的記錄,id自增)
const
char
*insertrecord =
"insert into people (name,age,height) values ('jonny',19,1.85)"
;ret =
sqlite3_exec
(db, insertrecord,
null
,null
, &errmsg);
if(ret !=
sqlite_ok
) //
改const
char
*updaterecord =
"update people set height= 1.70 where id=1"
;ret =
sqlite3_exec
(db, updaterecord,
null
,null
, &errmsg);
if(ret !=
sqlite_ok
) //
刪const
char
*deleterecord =
"delete from people where height=1.85"
;ret =
sqlite3_exec
(db, deleterecord,
null
,null
, &errmsg);
if(ret !=
sqlite_ok
) //
查const
char
*selectrecord =
"select * from people"
;sqlite3_stmt
*stmt;//第
3個引數:
-1 從頭執行到尾
ret =
sqlite3_prepare_v2
(db, selectrecord, -1, &stmt,
null
);if
(ret ==
sqlite_ok) }
//收尾工作:釋放
stmt
記憶體、斷開資料庫的連線
sqlite3_finalize
(stmt);
sqlite3_close
(db);
}3.使用第三方(fmdb)
- (void
)createdatabaseanddataoperation }
//open
,close
可以只寫一次,在
database
開頭與末尾執行,此處模擬單個方法(建立,增、刪、改、查)
[database
close];
//3.
插入資料 if
([database
open
]) }
[database
close];
//4.
查詢資料 if
([database
open
]) }
[database
close];
SQLite3中常用SQL語句
open 資料庫名 例子 open mydb.db 開啟當前目錄下的mydb.db資料庫 注意 若該檔案不存在則自動建立 create table 表名 欄位名1 型別,欄位名2 型別,例子 create table test1 id int name varchar 16 在當前資料庫建立test...
sqlite的sql常用語句(筆記)
1.複製一張表並重命名 比如已經建立好乙個表 表名為 28165 複製這個表。2.根據列,行的欄位名,查詢唯一欄位的值。比如我的資料庫裡面有一張表 28165 凡是欄位和表名以數字開頭的,在sql語句中都要把這個欄位以方括號括起來,要不然無法執行查詢操作。我要查詢到圖中紅框的資料 100 需要的查詢...
SQLite常用語句
型別 描述null 值是乙個空值 integer 帶符號的整數,根據值得大小儲存在1 2 3 4 6或8位元組中。相容 等同於 其他資料庫的int,integer,tinyint,smallint,mediumint,bigint,unsigned big int,int2,in8 real 浮點值...