一、sql資料庫簡單知識
常見資料型別:
1.建表
create
table
ifnot
exists t_student;
2.建立一張包含外來鍵引用的表
create
table
ifnot
exists 』t_student』(id integer
primary
key autoincrement, class_id integer, constraint 「fk_student」 foreign
key (class_id) references 「t_class」(id));
3.刪表
drop
table
ifexists t_student;
4.建立表時可以給特定的字段設定一些約束條件,常見的約束條件有
not null 規定字元值不能為null
unique 規定字段值唯一
default 指定字段預設值
5.select查詢資料庫
(1).limit限制
select * from t_student limit 3, 5; // 查詢5條記錄,從第3條記錄開始;
select * from t_student limit 5; // 查詢5條記錄(沒有起始條件);
(2).多表查詢
select * from t_food where food_type_id = (select id from t_food_type where name=「cc」);
(3).表連線查詢
from t_food as f, t_food_type as ft where f.food_type_id = ft.id
and ft.name = 「cc」;
二、sqlite3.h
依賴庫:libsqlite3.dylib
1.建立資料庫例項
// 資料庫例項
sqlite3 *db;
// 資料庫檔案路徑
nsstring *filename;
const
char *cfilename = filename.utf8string; // 將oc字串轉換成為c語言字串;
2.開啟資料庫(如果資料庫檔案不存在,sqlite3_open函式會自動建立資料庫檔案)
int result = sqlite3_open(cfilename, $db);
if(result == sqlite_ok) // 開啟成功
3.建立資料庫表
char *errormsg = null; // 錯誤資訊
int result = sqlite3_exec(db, sql, null, null, &errormsg);
if(result == sqlite_ok) // 建立表成功
4.插入資料
sqlite3_exec(db, sql, null, null, &errormsg);
if(errormsg) // 建立失敗
5.查詢資料
sqlite3_stmt *stmt = null; // 用來儲存資料
// 查詢資料,第三個引數表示sql語句的長度,傳-1代表系統會自動計算sql語句的長度
int result = sqlite3_prepare_v2(db, sql, -1, &stmt, null);
if(result == sqlite_ok) // 查詢成功
// 讀取資料,每呼叫一次此函式,stmt則會指向下一條記錄
while(sqlite3_step(stmt) == sqlite_row)
三、fmdb
1.獲取資料庫例項物件
fmdatabase *db = [fmdatabase databasewithpath:filename];
[db open];
2.執行一段sql語句
bool result = [db executeupdate:@「」];
// sql語句傳參
[db executeupdate:@「insert
into t_student (name, age) values (?, ?);」, name, @(12)];
[db executeupdatewithformat:@「insert
into t_student (name, age) values (%@, %d)」, name, 12];
3.查詢
// 執行查詢語句
fmresultset *resultset = [db executequery:@「select * from t_student」];
while([resultset next])
4.資料庫事務
fmdatabasequeue *queue = [fmdatabasequeue databasequeuewithpath:filename];
[queue indatabase:^(fmdatabase *db)];
資料庫儲存
sqlite資料庫儲存 android 系統竟然是內建了資料庫的,sqlite 是散輕量級的關係型資料庫,它的運算速度非常快,古用資源很少,通常只需要幾百kb的記憶體就足夠了,因而特別適合在移動裝置上用。sqlite不僅支援標準的sol語法,還遵循了資料庫acid事務,所以只要你以前使用過其他的關係...
iOS開發 資料庫
大型資料庫 1 sqlserver 只能在windows下使用,配置繁瑣 2 my sql 適用於網頁 3 oracle 商業類的資料庫 可以跨平台,有iso認證 sqlite 小型,輕量,微型資料庫 每個表單只有乙個主鍵 其他的都不是主鍵 不允許為空 sqlite 建立表create table ...
IOS資料庫使用
sqlite 1.是乙個開源 輕型嵌入式關聯式資料庫,誕生於2000年5月 2.暫用資源非常低,只需要幾百k的記憶體就足夠了 3.支援windows linux unix等主流的作業系統 4.處理速度快 5.語句不區分大小寫,以 結尾 常用的資料庫操作有 增 刪 改 查 在使用資料庫前,需要設定資料...