java學習筆記一 2019.6.23 週日

一、數據
insert into T_Customers(id,name,age) values(1,'tom',21);
INSERT INTO T_Customers(id,name,age)VALUES(2,'mike',24);
INSERT INTO T_Customers(id,name,age)VALUES(3,'jack',30);
insert into T_Customers(id,name,age)VALUES(4,'tom',25);
insert into T_Customers(id,name,age)VALUES(5,'linda',null);

insert into T_Ordertypes(ID,NAME)VALUES(1,'現貨訂單');
insert into T_Ordertypes(id,name)VALUES(2,'預定訂單');
insert into T_Ordertypes(id,name)VALUES(3,'預定訂單');
insert into T_Ordertypes(id,name)VALUES(4,'內部');

//暈,把T_Orders寫成T_Ordertypes了,出現了 error : Unknown column 'customerID' in 'field list'的錯誤
insert into T_Orders(id,number,price,customerID,TYPEID)VALUES(1,'K001',100,1,1);
INSERT INTO T_Orders(ID,NUMBER,PRICE,CUSTOMERID,TYPEID)VALUES(1,'K002',200,1,1);
INSERT into T_Orders(id,number,price,customerid,typeid)VALUES(3,'k003',300,1,2);
insert into T_Orders(id,number,price,customerid,typeid)VALUES(4,'n002',100,2,2);
insert into T_Orders(id,number,price,customerid,typeid)VALUES(5,'n003',500,3,4);
insert into T_Orders(id,number,price,customerid,typeid)VALUES(6,'t001',300,4,3);
insert into T_Orders(id,number,price,customerid,typeid)VALUES(7,'t002',100,null,1);

二、join
1、多表檢索最常用的技術就是表連接。
2、sql中使用join關鍵字來使用表連接。
3、主流的有cross join 、inner join、outter join。
4、outter join又分爲left join(等值連接)、right join

三、連接的語法
1、select o.number,o.price,c.name,c.age from t_orders o left join t_customers c on o.cutomersid=c.id
2、添加where語句select o.number,o.price,c.name,c.age from t_orders o left join t_customers c on o.customersid=c.id where o.price>=150
3、可以join多張表
select o.number 訂單號,o.price 價格,c.name 客戶姓名,c.age 客戶年齡,t.name 訂單類型 from t_order o left join t_customerid c on o.cumsterid=c.id left join t_ordertypes t on o.typeid=t.id

四、外鍵約束
對於初學者,都把外鍵加上,熟練後可以通過程序進行數據合法性控制。
1、t_orders指向t_customers,如果t_customers裏面刪除or更新一行記錄,可以回出現錯誤,如何處理t_orders指向t_customers外間的行
2、外鍵約束建立在外鍵字段‘***id’的表上(t_orders)
3、新建or修改標的時候,‘外鍵’-‘添加外鍵’。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章