數(shù)據(jù)庫使用

導(dǎo)語:

數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲(chǔ)和管理數(shù)據(jù)的倉庫.請(qǐng)不要被「數(shù)據(jù)庫」三個(gè)字所迷惑缚窿,數(shù)據(jù)庫的語法是十分簡(jiǎn)單棘幸。

一、認(rèn)識(shí)數(shù)據(jù)庫

數(shù)據(jù)庫(Database)是按照數(shù)據(jù)結(jié)構(gòu)來組織倦零、存儲(chǔ)和管理數(shù)據(jù)的倉庫,我們可以很方便的對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行增误续、刪吨悍、改、查操作蹋嵌。

iOS中數(shù)據(jù)存儲(chǔ)的方式

Plist(NSArray \ NSDictionary)

Preference(偏好設(shè)置 \ NSUserDefaults)

NSCoding(NSKeyedArchiver \ NSkeyedUnarchiver)

對(duì)數(shù)據(jù)操作(增育瓜、刪、改栽烂、查)不方便

SQLite3(數(shù)據(jù)庫)

Core Data(對(duì) SQLite 的封裝)

數(shù)據(jù)庫可以分為2大種類

關(guān)系型數(shù)據(jù)庫(主流)

對(duì)象型數(shù)據(jù)庫

常用的關(guān)系數(shù)據(jù)庫

PC 端:Oracle躏仇、MySQL、SQL Server

移動(dòng)客戶端:SQLite

SQLite3簡(jiǎn)介

是一款輕型的數(shù)據(jù)庫

設(shè)計(jì)目標(biāo)是嵌入式的

占用的資源是非常低的腺办,在嵌入式設(shè)備中焰手,可能只需要幾百 K 的內(nèi)存就夠了

它的處理速度比 Mysql、PostgreSQL 這兩款著名的數(shù)據(jù)庫都還快

關(guān)系型數(shù)據(jù)庫

存儲(chǔ)數(shù)據(jù)和 Excel 很像

一個(gè) 字段(COL) 存儲(chǔ)一個(gè)值怀喉,類似于對(duì)象的一個(gè)屬性

一行(ROW) 存儲(chǔ)一條記錄,保存一個(gè)對(duì)象里面的所有屬性

一個(gè)表(TABLE) 存儲(chǔ)一系列數(shù)據(jù)书妻,類似于對(duì)象數(shù)組

相關(guān)術(shù)語

字段(Field / Col):一個(gè)字段存儲(chǔ)一個(gè)值,Sqlite 提供 INTEGER(整型)磺送,REAL(實(shí)數(shù)型)驻子,TEXT(字符型),BLOB(二進(jìn)制數(shù))估灿,NULL (空)五種類型的數(shù)據(jù)

SQLite 在存儲(chǔ)時(shí)崇呵,本質(zhì)上并不區(qū)分準(zhǔn)確的數(shù)據(jù)類型

主鍵:Primary Key簡(jiǎn)稱PK,唯一地標(biāo)示一條記錄馅袁,具有以下特點(diǎn):

名字:xxx_id

類型:Integer

自動(dòng)增長

準(zhǔn)確數(shù)值由數(shù)據(jù)庫決定域慷,程序員不用關(guān)心

開發(fā)數(shù)據(jù)庫的步驟

建立數(shù)據(jù)庫 -> 存儲(chǔ)數(shù)據(jù)的文件

創(chuàng)建數(shù)據(jù)表 -> 每一張數(shù)據(jù)表存儲(chǔ)一類數(shù)據(jù)

數(shù)據(jù)表添加字段(column,列,屬性)

操作數(shù)據(jù):增/刪/查/改

移動(dòng)應(yīng)用中使用數(shù)據(jù)庫的好處

將網(wǎng)絡(luò)數(shù)據(jù)存儲(chǔ)在本地,不用每次都去網(wǎng)絡(luò)加載汗销,減少用戶網(wǎng)絡(luò)流量開銷

推薦工具

Navicat

需要破解版的請(qǐng)私信或在評(píng)論區(qū)留下郵箱犹褒,有空就給你們發(fā)。

二弛针、SQLite 命令

我們?cè)?iOS 應(yīng)用程序中無法使用圖形化界面操作數(shù)據(jù)庫叠骑。在程序運(yùn)行過程中操作數(shù)據(jù)庫中的數(shù)據(jù)需要通過 SQL 語句

什么是 SQL

SQL(structured query language):結(jié)構(gòu)化查詢語言

SQL 是對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行定義和操作的語言

SQL 語言簡(jiǎn)潔,語法簡(jiǎn)單削茁,好學(xué)好用

什么是 SQL 語句

使用 SQL 語言編寫出來的句子\代碼宙枷,就是 SQL 語句

在程序運(yùn)行過程中,要想操作(增/刪/改/查)數(shù)據(jù)庫中的數(shù)據(jù),必須使用 SQL 語句

SQL 語句的種類

1. DDL(Data Definition Language)- 數(shù)據(jù)定義語句

命令描述

CREATE創(chuàng)建一個(gè)新的表茧跋,一個(gè)表的視圖慰丛,或者數(shù)據(jù)庫中的其他對(duì)象

ALTER修改數(shù)據(jù)庫中的某個(gè)已有的數(shù)據(jù)庫對(duì)象,比如一個(gè)表

DROP刪除整個(gè)表瘾杭,或者表的視圖诅病,或者數(shù)據(jù)庫中的其他對(duì)象

不需要記憶,可以直接從客戶端軟件復(fù)制/粘貼

2. DML(Data Manipulation Language)- 數(shù)據(jù)操作語句

命令描述

INSERT新增數(shù)據(jù)

UPDATE修改數(shù)據(jù)

DELETE刪除數(shù)據(jù)

需要掌握,語法固定

3. DQL(Data Query Language)- 數(shù)據(jù)查詢語句

命令描述

SELECT查詢數(shù)據(jù)

需要掌握一些簡(jiǎn)單的查詢指令

SQL 語句的特點(diǎn)

不區(qū)分大小寫(比如數(shù)據(jù)庫認(rèn)為 user 和 UsEr 是一樣的)

每條語句建議以分號(hào) ; 結(jié)尾( ; 用于區(qū)分多條 SQL 語句)

SQL 中的常用關(guān)鍵字有 select贤笆、insert蝇棉、update、delete芥永、from银萍、create、where恤左、desc贴唇、order、by飞袋、group戳气、table、alter巧鸭、view瓶您、index 等等

數(shù)據(jù)庫中不可以使用關(guān)鍵字來命名 表、字段

三纲仍、案例

DDL - 數(shù)據(jù)定義語句

創(chuàng)建表

格式:CREATE TABLE IF NOT EXISTS 表名 (字段名1 字段類型1, 字段名2 字段類型2, …);

/*

? 創(chuàng)建數(shù)據(jù)表

? DDL CREATE

? CREATE TABLE? ? --創(chuàng)建數(shù)據(jù)表

? T_Student? ? ? ? --數(shù)據(jù)表名稱

? (

? id? ? ? ? ? ? ? ? --字段名稱

? ? ? INTEGER? ? ? ? --字段類型

? ? ? NOT NULL? ? --字段約束, NOT NULL表示字段的值不能為空

? ? ? PRIMARY KEY? ? --表示主鍵

? ? ? AUTOINCREMENT? ? --自動(dòng)增長

? ,? ? ? ? ? ? ? ? --多個(gè)字段之間用,分開

? name? ? ? ? ? ? --字段名稱

? ? ? TEXT? ? ? ? --字段的類型

? ...

? )

? ;? ? ? ? ? ? ? ? --表示一段sql語句結(jié)束

? 注意:

? ? ? 1.數(shù)據(jù)表名稱和字段名稱可以用""引起來,也可以不用

? ? ? 2.DDL語句不需要熟練的被下來.開發(fā)的時(shí)候可以在Navicat里面創(chuàng)建好表,在把DDL復(fù)制過來

? ? ? 3.數(shù)據(jù)表已經(jīng)存在,還創(chuàng)建表會(huì)報(bào)'數(shù)據(jù)表已經(jīng)存在'的錯(cuò)誤,需要加IF NOT EXISTS 表示數(shù)據(jù)表不存在才創(chuàng)建

*/CREATE TABLE IF NOT EXISTST_Student(? id INTEGER NOTNULLPRIMARY KEY AUTOINCREMENT,? name text,? age integer,? height real,? score real);CREATE TABLE IF NOT EXISTST_Person(? id INTEGER NOTNULLPRIMARY KEY AUTOINCREMENT,? name text,? age integer,? height real);

刪除表

格式:DROP TABLE IF EXISTS 表名;

/*

? DDL刪除表

? DROP TABLE T_Student? ? --刪除T_Student這張表

*/DROP TABLE T_Person;

DML - 數(shù)據(jù)操作語句

插入數(shù)據(jù)

格式:INSERT INTO 表名 (字段1, 字段2, …) VALUES (字段1的值, 字段2的值, …);

/*

? DML插入數(shù)據(jù)

? INSERT INTO? ? ? ? --表示插入數(shù)據(jù)

? T_Person? ? ? ? --插入數(shù)據(jù)的數(shù)據(jù)表名稱

? (name, age, height)? ? ? ? --表示要設(shè)置哪些字段的值

? VALUES

? ('zhangsan', 18, 1.65)? ? --每個(gè)字段對(duì)應(yīng)的值

? 注意:

? ? ? 1.字段名和字段值要對(duì)應(yīng)

? ? ? 2.sqlite其實(shí)是沒有數(shù)據(jù)類型的,DDL語句中的類型只是給我們程序員看的

? ? ? 3.字符串需要用‘’

*/INSERT INTOT_Person(name, age, height)VALUES('lisi1',15,1.70);INSERT INTOT_Person(name, age, height)VALUES('lisi2',15,1.70);INSERT INTOT_Person(name, age, height)VALUES('lisi3',18,1.80);INSERT INTOT_Person(name, age, height)VALUES('lisi4',17,1.78);INSERT INTOT_Person(name, age, height)VALUES('zhangsan1',18,1.72);INSERT INTOT_Person(name, age, height)VALUES('zhangsan2',18,1.75);INSERT INTOT_Person(name, age, height)VALUES('zhangsan3',28,1.71);INSERT INTOT_Person(name, age, height)VALUES('zhangsan4',16,1.79);INSERT INTOT_Person(name, age, height)VALUES('wangwu111',28,1.69);INSERT INTOT_Person(name, age, height)VALUES('wangwu222',10,1.49);INSERT INTOT_Person(name, age, height)VALUES('wangwu333',20,1.75);INSERT INTOT_Person(name, age, height)VALUES('wangwu',20,1.79);INSERT INTOT_Person(name, age, height)VALUES('zhaoliu0',20,1.77);INSERT INTOT_Person(name, age, height)VALUES('zhaoliu1',21,1.77);INSERT INTOT_Person(name, age, height)VALUES('zhaoliu2',26,1.87);

更新數(shù)據(jù)

格式:UPDATE 表名 SET 字段1 = 字段1的值, 字段2 = 字段2的值, … ;

/*

? DML更新數(shù)據(jù)

? UPDATE T_Person? ? ? ? --更新T_Person中的數(shù)據(jù)

? SET

? 字段名稱=字段的值;? ? ? ? --更新的字段名=字段值

? ...? ? ? ? ? ? ? ? ? ? --更多的字段

? WHERE? ? ? ? ? ? ? ? --設(shè)置更新條件

? 字段名稱=字段的值

? 注意:

? ? ? 1.如果不設(shè)置更新數(shù)據(jù)的條件,默認(rèn)會(huì)更新所有數(shù)據(jù)

*/UPDATE T_Person SET name ='wangwu', height =180WHERE id =3;

刪除數(shù)據(jù)

格式:DELETE FROM 表名

/*

? DML刪除數(shù)據(jù)

? DELETE FROM? ? T_Person? ? --刪除T_Person中的數(shù)據(jù)

? WHERE? ? ? ? ? ? --設(shè)置刪除數(shù)據(jù)的條件

? id=14? ? ? ? ? ? --表示刪除id=14的這條記錄

*/DELETE FROM T_Person WHEREid=6;

條件語句

如果只想 更新呀袱、 者刪 或 查詢 除某些固定的記錄,那就必須在SQL 語句 后面 加上一些條件

條件語句的常見格式

WHERE 字段 = 某個(gè)值 ; // 不能用兩個(gè) =

WHERE 字段 is 某個(gè)值 ; // is 相當(dāng)于 =

WHERE 字段 != 某個(gè)值 ;

WHERE 字段 is not 某個(gè)值 ; // is not 相當(dāng)于 !=

WHERE 字段 > 某個(gè)值 ;

WHERE 字段1 = 某個(gè)值 and 字段2 > 某個(gè)值 ; // and相當(dāng)于C語言中的 &&

WHERE 字段1 = 某個(gè)值 or 字段2 = 某個(gè)值 ; // or 相當(dāng)于C語言中的 ||

DQL - 數(shù)據(jù)查詢語句

查詢數(shù)據(jù)

格式:SELECT 字段1, 字段2, … FROM 表名;

-- 查詢指定字段-- 查詢所有字段-- 查詢 age <20的記錄的 name, age 字段-- 查詢 age <20的記錄的所有字段-- 查詢記錄總數(shù)-- 查詢 age <18的記錄總數(shù)-- 查詢最大 age-- 查詢最小 age-- 查詢所有記錄的所有字段,根據(jù) age 排序(默認(rèn)升序排序,ASC)-- 查詢所有記錄的所有字段,根據(jù) age 降序排序(DESC)-- 使用多個(gè)字段排序,先按age降序排序,當(dāng)age相同時(shí)再根據(jù)height降序排序-- 返回指定的記錄/*

? LIMIT 常用于分頁, 比如一頁顯示3條數(shù)據(jù)

*/-- 取出年齡最大的3條記錄-- 查詢時(shí)給字段取別名

/*

? ? SELECT? ? ? ? --查詢

? ? name,? ? --需要的字段

? ? age,? ? --需要的字段

? ? FROM 表名;? ? --從哪張表里查找

*/SELECT name, age FROM T_Person;-- 查詢 age <20的人名SELECT name FROM T_Person WHERE age <20;-- * 查詢所有的字段SELECT * FROM T_Person;-- 查詢 age >20記錄的所有字段SELECT * FROM T_Person WHERE age >20;-- 查詢記錄總數(shù)SELECTcount(*)FROM T_Person;-- 查詢age <18的記錄總數(shù)SELECTcount(*)FROM T_Person WHERE age < 18;-- 查詢最大的年齡SELECTMAX(age)FROM T_Person;-- 查詢最小的年齡SELECTMIN(age)FROM T_Person;-- ORDER BY age 根據(jù)age排序,默認(rèn)排序升序(ASC)SELECT * FROM T_Person ORDER BY age;-- 根據(jù)age降序排序(DESC)SELECT * FROM T_Person ORDER BY age DESC;-- 使用多個(gè)字段排序,先按age降序排序,當(dāng)age相同時(shí)再根據(jù)height降序排序SELECT * FROM T_Person ORDER BY age DESC, height DESC;-- LIMIT 返回指定的記錄數(shù)-- 前面的數(shù)值: 跳過的記錄條數(shù)-- 后面的數(shù)值: 返回的記錄條數(shù)SELECT * FROM T_Person LIMIT2,3;/*

? ? LIMIT 常用于分頁, 比如一頁顯示3條數(shù)據(jù)

? ? 第一頁: LIMIT 0, 3? ? --取最前面的3條數(shù)據(jù)

? ? 第二頁: LIMIT 3, 3? ? --跳過前面3條取3條數(shù)據(jù)

? ? 第三頁: LIMIT 6, 3? ? --跳過前面6條取3條數(shù)據(jù)

? ? 第n頁:? LIMIT (n - 1) * 3, 3

? ? 注意: LIMIT 0,3; 前面的數(shù)值為0時(shí),可以省略 0, LIMIT 3;

*/SELECT * FROM T_Person LIMIT0,3;SELECT * FROM T_Person LIMIT3,3;SELECT * FROM T_Person LIMIT6,3;SELECT * FROM T_Person LIMIT9,3;--LIMIT0,3; 前面的數(shù)值為0時(shí),可以省略0, LIMIT3;SELECT * FROM T_Person LIMIT3;/*

? ? 取出年齡最大的3條記錄

? ? ? ? 1.按年齡降序排序,年齡大的在前面

? ? ? ? 3.取出前3條記錄.

*/SELECT * FROM T_Person ORDER BY age DESC LIMIT3;

查詢時(shí)給字段取別名

/*

? 別名格式:

? 字段名 AS 別名. 可以省略 AS 關(guān)鍵字

*/SELECTid, name AS Stu_Name, height Stu_Height FROM T_Person LIMIT20;

排序

在 DQL 后面添加 ORDER BY 字段名

SELECT * FROM 表名 ORDER BY 字段名;

多個(gè)字段進(jìn)行排序

SELECT * FROM 表名 ORDER BY 字段名1, 字段名2;

ASC 表示 升序, DESC 表示 降序,默認(rèn) 升序

四郑叠、約束

簡(jiǎn)單約束

建表時(shí)可以給特定的字段設(shè)置一些約束條件夜赵,常見的約束有

NOT NULL :規(guī)定字段的值不能為null

UNIQUE :規(guī)定字段的值必須唯一

DEFAULT :指定字段的默認(rèn)值 (建議:盡量給字段設(shè)定嚴(yán)格的約束,以保證數(shù)據(jù)的規(guī)范性)

示例

CREATE TABLET_Person(id integer, name text NOTNULLUNIQUE, age integer NOTNULLDEFAULT1);// name 字段不能為 NULL乡革,并且唯一// age 字段不能為 NULL寇僧,并且默認(rèn)為1

主鍵約束

如果 T_Person 表中就 name 和 age 兩個(gè)字段,而且有些記錄的 name 和 age 字段的值都一樣時(shí),那么就沒法區(qū)分這些數(shù)據(jù),造成數(shù)據(jù)庫的記錄不唯一,這樣就不方便管理數(shù)據(jù)

良好的數(shù)據(jù)庫編程規(guī)范應(yīng)該要保證每條記錄的 唯一性,為此,增加 主鍵約束

每張表都必須有一個(gè)主鍵沸版,用來標(biāo)識(shí)記錄的唯一性

主鍵(Primary Key嘁傀,簡(jiǎn)稱PK)用來 唯一 地標(biāo)識(shí)某 一條記錄

例如t_student可以增加一個(gè)id字段作為主鍵,相當(dāng)于人的身份證

外鍵約束

利用 外鍵約束 可以用來 建立表與表之間 的聯(lián)系

外鍵的一般情況是:一張表的某個(gè)字段,引用著另一張表的主鍵字段

新建一個(gè)外鍵

CREATE TABLE T_Student (id integer primary key autoincrement, name text, age integer, class_id integer, constraint fk_student_class foreign key (class_id) references t_class (id));

T_Student 表中有一個(gè)叫做 fk_t_student_class_id_t_class_id的 外鍵

這個(gè)外鍵的作用是用 T_Student 表中的 class_id 字段引用 T_Class 表的 id 字段

五、表連接查詢

什么是表連接查詢?

需要聯(lián)合多張表才能查到想要的數(shù)據(jù)

表連接的類型

內(nèi)連接:inner join 或者 join (顯示的是左右表都有完整字段值的記錄)

左外連接:left outer join (保證左表數(shù)據(jù)的完整性)

示例

查詢 iOS08 班的所有學(xué)生SELECT s.name,s.age FROM t_student s, t_class cwheres.class_id = c.id AND c.name = ‘0316iOS’;

作者:劉鄧詔初

鏈接:http://www.reibang.com/p/51aec65a06df

來源:簡(jiǎn)書

簡(jiǎn)書著作權(quán)歸作者所有视粮,任何形式的轉(zhuǎn)載都請(qǐng)聯(lián)系作者獲得授權(quán)并注明出處细办。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市蕾殴,隨后出現(xiàn)的幾起案子笑撞,更是在濱河造成了極大的恐慌,老刑警劉巖区宇,帶你破解...
    沈念sama閱讀 206,968評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件娃殖,死亡現(xiàn)場(chǎng)離奇詭異值戳,居然都是意外死亡议谷,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門堕虹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來卧晓,“玉大人芬首,你說我怎么就攤上這事”岂桑” “怎么了郁稍?”我有些...
    開封第一講書人閱讀 153,220評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長胜宇。 經(jīng)常有香客問我耀怜,道長,這世上最難降的妖魔是什么桐愉? 我笑而不...
    開封第一講書人閱讀 55,416評(píng)論 1 279
  • 正文 為了忘掉前任财破,我火速辦了婚禮,結(jié)果婚禮上从诲,老公的妹妹穿的比我還像新娘左痢。我一直安慰自己,他們只是感情好系洛,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評(píng)論 5 374
  • 文/花漫 我一把揭開白布俊性。 她就那樣靜靜地躺著,像睡著了一般描扯。 火紅的嫁衣襯著肌膚如雪定页。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評(píng)論 1 285
  • 那天绽诚,我揣著相機(jī)與錄音拯勉,去河邊找鬼。 笑死憔购,一個(gè)胖子當(dāng)著我的面吹牛宫峦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播玫鸟,決...
    沈念sama閱讀 38,432評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼导绷,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了屎飘?” 一聲冷哼從身側(cè)響起妥曲,我...
    開封第一講書人閱讀 37,088評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎钦购,沒想到半個(gè)月后檐盟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡押桃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評(píng)論 2 325
  • 正文 我和宋清朗相戀三年葵萎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,137評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡羡忘,死狀恐怖谎痢,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情卷雕,我是刑警寧澤节猿,帶...
    沈念sama閱讀 33,783評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站漫雕,受9級(jí)特大地震影響滨嘱,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜浸间,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評(píng)論 3 307
  • 文/蒙蒙 一九孩、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧发框,春花似錦躺彬、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至铣减,卻和暖如春她君,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背葫哗。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評(píng)論 1 262
  • 我被黑心中介騙來泰國打工缔刹, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人劣针。 一個(gè)月前我還...
    沈念sama閱讀 45,595評(píng)論 2 355
  • 正文 我出身青樓校镐,卻偏偏與公主長得像,于是被迫代替她去往敵國和親捺典。 傳聞我的和親對(duì)象是個(gè)殘疾皇子鸟廓,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • pyspark.sql模塊 模塊上下文 Spark SQL和DataFrames的重要類: pyspark.sql...
    mpro閱讀 9,446評(píng)論 0 13
  • MYSQL 基礎(chǔ)知識(shí) 1 MySQL數(shù)據(jù)庫概要 2 簡(jiǎn)單MySQL環(huán)境 3 數(shù)據(jù)的存儲(chǔ)和獲取 4 MySQL基本操...
    Kingtester閱讀 7,780評(píng)論 5 116
  • 觀其大綱 page 01 基礎(chǔ)知識(shí) 1 MySQL數(shù)據(jù)庫概要 2 簡(jiǎn)單MySQL環(huán)境 3 數(shù)據(jù)的存儲(chǔ)和獲取 4 M...
    周少言閱讀 3,151評(píng)論 0 33
  • 車流 洶 人潮 涌 繃緊的神經(jīng) 趕在紅燈來臨前放松 光影 起 聲囂 伏 撲朔的靈感 遲到在下個(gè)十字路口 報(bào)站廣播 ...
    淡定的美男閱讀 170評(píng)論 0 0
  • 世界于你而言,無意義無目的襟己, 卻又充滿隨心所欲的幻想引谜, 但又有誰知,也許就在這悶熱令人疲倦的正午擎浴, 那個(gè)陌生人员咽,提...
    緩緩歸矣y閱讀 681評(píng)論 0 0