iOS開發數據庫篇—SQL代碼應用示例
一、使用代碼的方式批量添加(導入)數據到數據庫中
1.執行SQL語句在數據庫中添加一條信息
插入一條數據的sql語句:
點擊run執行語句之后,刷新數據
2.在ios項目中使用代碼批量添加多行數據示例
代碼示例:
1 // 2 // main.m 3 // 01-為數據庫添加多行數據 4 // 5 // Created by apple on 14-7-26. 6 // Copyright (c) 2014年 wendingding. All rights reserved. 7 // 8 9 #import <Foundation/Foundation.h> 10 11 int main(int argc, const char * argv[]) 12 { 13 14 @autoreleasepool { 15 NSArray *names=@[@"張一",@"張二",@"張三",@"張四"]; 16 NSMutableString *sql=[NSMutableString string]; 17 18 for (int i=0; i<200; i++) { 19 int ID=i+1; 20 //這里的警告為無符號類型轉換 21 NSString *name=names[arc4random_uniform(names.count)]; 22 name=[name stringByAppendingFormat:@"-%d",arc4random_uniform(200)]; 23 //生成隨機數,范圍以20為中心上下波動10 24 int age=arc4random_uniform(20)+10; 25 [sql appendFormat:@"INSERT INTO t_student (id,name,age) VALUES (%d,'%@',%d);\n",ID,name,age]; 26 } 27 //把sql寫入到文件中 28 [sql writeToFile:@"/Users/apple/Desk/students.sql" atomically:YES encoding:NSUTF8StringEncoding error:nil]; 29 NSLog(@"\n%@",sql); 30 } 31 return 0; 32 }
作用:生成200條相應的sql插入語句
打印結果為:
使用文本編輯器,打開生成的sql文件。
可以把這些SQL語句拷貝到Navicat中進行執行,也可以直接執行整個文件。
在數據庫中創建一張表:
選擇執行SQL文件:
執行完畢后,點擊cancel。
刷新數據庫,查看插入的200條數據
二、分頁簡單演示
說明:
使用limit可以精確地控制查詢結果的數量,比如每次只查詢10條數據
格式 select * from 表名 limit 數值1, 數值2 ;
示例
select * from t_student limit 4, 8 ;
可以理解為:跳過最前面4條語句,然后取8條記錄
limit常用來做分頁查詢,比如每頁固定顯示5條數據,那么應該這樣取數據
第1頁:limit 0, 5
第2頁:limit 5, 5
第3頁:limit 10, 5
…
第n頁:limit 5*(n-1), 5
下面語句的作用
select * from t_student limit 7 ;
相當於select * from t_student limit 0, 7 ;表示取最前面的7條記錄
三、補充
1.關於外鍵約束(建立起兩張表之間的聯系)
第一種做法:可以新建一張關系表,讓之前兩張表(班級表和學生表建立起對應的聯系),但是這種做法很冗余,沒有必要
第二種做法:使用外鍵約束
一對一,一對多,多對多關系。當兩張表有聯系時,如何設置外鍵(在哪張表中設置?)
2.關於表連接
子查詢:要求查詢所有類型為粵菜的菜名。
查詢結果為:
連接查詢:
查詢結果為: