日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

数据库(概念、语法、DBMS、SQL语言:创建数据库、表格,添加、修改、删除数据记录)...

發布時間:2024/4/17 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据库(概念、语法、DBMS、SQL语言:创建数据库、表格,添加、修改、删除数据记录)... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

關系型數據庫:以表作為實體,以主鍵和外鍵關系作為聯系的一種數據結構。

主鍵:在關系型數據庫中,用一個唯一的標識符來標志每一行,這個標識符就是主鍵。主鍵有兩個特點:非空和不能重復。

外鍵:在關系型數據庫中,外鍵就是用來表達表與表之間的關系、聯系,通過主外鍵關系,建立實體之間的聯系。

表之間的三種基本關系模型:

? ? ? ① 一對多關系: 一條主表記錄對應多條從表記錄,一條從表記錄對應一條主表記錄。

? ? ? ② 一對一關系: 一條主表記錄對應一條從表記錄,一條從表記錄對應一條主表記錄。

? ? ? ③ 多對多關系: 一條主表記錄對應多條從表記錄,一條從表記錄對應多條主表記錄。

關系型數據庫管理系統(DBMS):

? ? ?關系型數據庫只是一個保存數據的容器,大多數數據庫依靠一個稱為數據庫管理系統(DBMS)的軟件來管理數據庫中的數據。

? ? ?目前流行的關系型數據庫服務器管理系統有:

? ? ? ① 微軟的MS SQL Server

? ? ? ② 甲骨文的Oracle

? ? ? ③ IBM公司的DB2

? ? ? ④ 開源數據庫的MySQL、PostgreSQL

SQL:

? ? ?SQL是結構化查詢語言,是一種用于管理關系型數據庫,并與數據庫中的數據進行通訊的計算機語言。

SQL語句:

? ? ?① 數據定義語言(DDL): 用于創建、修改和刪除數據庫內的數據結構。

1 -- 創建數據庫db 2 CREATE DATABASE db; 3 -- 刪除數據庫db 4 DROP DATABASE db; 5 -- 建立表t_student 6 CREATE TABLE t_student( 7 -- PRIMARY KEY標志該列為主鍵列 8 -- AUTO_INCREMENT設置自動增長列,該列的值由DBMS分配,不用開發者維護 9 id INT PRIMARY KEY AUTO_INCREMENT,-- 編號 10 studentName VARCHAR(20),-- 姓名,20表示名字20個字 11 sex ENUM('',''),-- 性別,enum表示枚舉 12 birthday DATE, -- 生日 13 tel VARCHAR(11) -- 電話 14 );

? ?

?② 數據查詢語言(DQL):用于數據庫中數據的查詢??

1 -- 查詢所有的性別 DISTINCT表示去除重復的列 2 SELECT DISTINCT sex FROM t_student; 3 4 -- 查詢表中所有的數據,*表示查詢表中所有的列 5 SELECT * FROM t_student; 6 7 -- 查詢第一條 開始的數據,顯示3條記錄 8 SELECT * FROM t_student LIMIT 0,3;

③ 數據操作語言(DML): 用于修改數據庫中的數據,包括插入、更新和刪除數據

1 -- 添加記錄 2 INSERT INTO t_student(studentName,sex,birthday,tel) 3 VALUES('張三','','1983-09-30','13987879898'); 4 5 -- 刪除id為17的記錄 6 DELETE FROM t_student WHERE id=17; 7 8 -- 修改李四的電話 9 UPDATE t_student SET tel='13966666666' WHERE studentName='李四';

④ 數據控制語言(DCL):控制數據庫訪問權限

?1 -- 給用戶授予訪問權限的GRANT語句 2?-- 取消用戶訪問權限的REVOKE語句?

?

?外鍵約束:

? ? ? ?外鍵:是指從表的某列與主鍵的某列存在依附關系。

? ? ? ? 外鍵約束:是指在外鍵關聯主鍵上強制加上一個約束,如果違反該約束,則不允許該條數據的修改。

? ? ? ? 注意:沒有建立外鍵約束不等于沒有外鍵。

主鍵約束:

? ? ? ? 主鍵是表中的一到多個列,主鍵列不能為空,也不能重復,一個表中只能由一個主鍵。

聚合函數:

? ? ? 對一組數據進行統計分析是使用聚合函數來實現的。常見聚合函數如下:

? ? ? ?COUNT:統計行數量。

? ? ? ?SUM:獲取單個列的和計量。

? ? ? ?AVG:計算某個列的平均值。

? ? ? ?MAX:計算某個列的最大值。

? ? ? ?MIN:計算某個列的最小值。

SQL語句的執行順序:

? ? ? 第一步:執行FROM

? ? ? ?第二步:where條件過濾

? ? ? ?第三步:GROUP BY分組

? ? ? ?第四步:執行select投影列

? ? ? ?第五步:HAVING條件過濾

? ? ? ?第六步:執行ORDER BY排序語句,默認為asc升序,DESC為降序。

聯接:

? ? ? 內聯接和外聯接的區別:

? ? ? ?內聯接:只能查詢兩個表中都有的相關數據的記錄;

? ? ? ?外連接:可以查詢一個表中所有的記錄,無論該記錄是否有關聯數據。

?

1 CREATE TABLE t_man( 2 id INT PRIMARY KEY AUTO_INCREMENT, 3 manName VARCHAR(20), 4 birthday DATE 5 ); 6 INSERT INTO t_man(manName,birthday) 7 VALUES('張三','1980-02-03'),('李四','1994-01-05'), 8 ('王五','1991-07-30'),('趙六','1995-11-18'); 9 SELECT * FROM t_man; 10 11 CREATE TABLE t_bike( 12 id INT PRIMARY KEY AUTO_INCREMENT, 13 bikeType VARCHAR(20), 14 money INT, 15 manId INT 16 ); 17 18 -- 添加外鍵約束,讓主鍵和外鍵一一對應,防止垃圾數據的產生 19 ALTER TABLE t_bike ADD CONSTRAINT fk_mb FOREIGN KEY (manId) 20 REFERENCES t_man(id); 21 22 INSERT INTO t_bike(bikeType,money,manId) 23 VALUES('鳳凰',400,1),('永久',500,1),('火麒麟',250,1), 24 ('大運',1000,2),('夏力',600,2),('捷安特',1200,3), 25 ('摩拜',200,3),('寶馬',2000,3),('奔馳',600,3); 26 27 -- 查詢所有自行車,并顯示該自行車的主人姓名 28 SELECT b.*,m.manName FROM t_bike b JOIN t_man m ON m.id=b.manId; 29 30 -- 查詢李四所有的自行車(內連接:顯示兩個表中有聯系的數據) 31 SELECT b.* ,m.manName FROM t_bike b JOIN t_man m ON m.id=b.manId WHERE m.manName='李四'; 32 SELECT b.* ,m.manName FROM t_man m JOIN t_bike b ON m.id=b.manId WHERE m.manName='李四'; 33 34 SELECT b.* FROM t_bike b,t_man m WHERE b.manId=m.id AND m.manName='李四'; 35 36 -- 顯示所有用戶的自行車信息,外連接不能用,加where的形式來寫 37 -- 外連接:RIGHT 右外連接,包含右邊表中所有的信息,left 左外連接,包含左邊表中所有的信息。 38 SELECT m.*,b.bikeType,b.money FROM t_bike b RIGHT JOIN t_man m ON b.manId=m.id; 39 40 -- 顯示所有用戶自行車的數量 41 -- 左外連接 42 SELECT m.*,COUNT(bikeType) num FROM t_man m LEFT JOIN t_bike b ON m.id=b.manId GROUP BY m.id; 43 -- 右外連接 44 SELECT m.*, COUNT(bikeType) number FROM t_bike b RIGHT JOIN t_man m ON b.manId=m.id GROUP BY m.id;

?

?

?

?

? ? ??

?

轉載于:https://www.cnblogs.com/jichuang/p/6664127.html

總結

以上是生活随笔為你收集整理的数据库(概念、语法、DBMS、SQL语言:创建数据库、表格,添加、修改、删除数据记录)...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。