- SQL語法
- 1.註釋
/註釋多行/ - 註釋單行
- 2.不區分大小寫
- 3.每條語句後必須加分號
- 4.字符串使用單引號括起來
- 5.字段類型:text->字符串類型 integer->整型 real->浮點型
/DDL語句/
1.創建表
-- 格式1: CREATE TABLE 表名(字段名1 字段1類型, 字段名2 字段2類型,...);
-- CREATE TABLE t_Student('name' text, 'age' integer,'score' real);
-- 格式2: CREATE TABLE IF NOT EXISTS 表名(字段名1 字段1類型,字段名1 字段2類型,...);
-- CREATE TABLE IF NOT EXISTS t_Student('name' text, 'age' integer,'score' real);
- 完整的創建表的示例:
- a.創建表的時候必須設置主鍵
CREATE TABLE IF NOT EXISTS t_Student(id integer PRIMARY KEY AUTOINCREMENT,name text NOT NULL,age integer DEFAULT 18,studyId integer UNIQUE);
2.刪除表
-- 格式1: DROP TABLE 表名;
-- DROP TABLE t_Student;
-- 格式2: DROP TABLE IF EXISTS 表名; ->當表存在的時候刪除表
-- DROP TABLE IF EXISTS t_Student;
/DML語句/
– 1.插入數據
- 格式: INSERT INTO 表名(字段名1,字段名2,...) VALUES(字段1的值,字段2的值,...);
INSERT INTO t_Student(name,studyId) VALUES('小明3',109);
-- INSERT INTO t_Student('name','age','score') VALUES('小明7',22,23);
-- INSERT INTO t_Student('name','age','score') VALUES('小明8',30,89);
-- INSERT INTO t_Student('name','age','score') VALUES('小明9',21,34);
-- INSERT INTO t_Student('name','age','score') VALUES('小明10',12,23);
- 2.修改數據
- 格式: UPDATE 表名 SET 字段名1=字段1的新值,字段名2=字段2的新值,...;
-- UPDATE t_Student SET 'age'=18; --注意:這樣寫,所有的學生的年齡都會變成18
-- 將表中'小明1'的年齡變成18
-- UPDATE t_Student SET age=18 WHERE name='小明1';
- 3.刪除數據
- 格式: DELETE FROM 表名;
-- DELETE FROM t_Student; --注意:刪除表中的所有的數據
-- 將表中成績小於60的學生信息刪除
-- DELETE FROM t_Student WHERE score<60;
/DQL語句/
- 1.查詢數據
- 格式1: SELECT 字段名1,字段名,... FROM 表名; ->查詢指定的字段
-- SELECT name,score FROM t_Student;
-- 格式2: SELECT * FROM 表名; ->查詢表中所有的字段
-- SELECT * FROM t_Student;
-- 獲取表中年齡大於20,分數小於60的學生的所有信息
-- SELECT * FROM t_Student WHERE age>20 AND score<60;
-- 2.獲取表中的數據的個數
-- 格式1:SELECT count(*) FROM 表名;
-- SELECT count(*) FROM t_Student;
-- 計算表中不及格的學生的數量
-- SELECT count(*) FROM t_Student WHERE score<60;
-- 3.對查詢結果進行排序
-- 格式:SELECT * FROM 表名 ORDER BY 字段名
-- SELECT * FROM t_Student ORDER BY score; -- 將查詢結果按照分數從小到大排序
-- SELECT * FROM t_Student ORDER BY score desc; -- 將查詢結果按照分數從大到小排序
-- 4.限制查詢的結果的數量
-- 格式: SELECT * FROM 表名 LIMIT 數值1,數值2; -- 數值1->從0開始數第幾條數據開始獲取;數值2->一次獲取數據的數量
-- SELECT * FROM t_Student LIMIT 1,5;
參考自簡書作者:寫啥呢
拓展:模糊查詢
//注意%爲轉義字符
NSString *sql = [NSString stringWithFormat:@"SELECT * FROM BookDBModel WHERE BookName LIKE '%%%@%%'",@"我"];