1.什麼是SQL(瞭解):
- 結構化查詢語言,是一種功能齊全的數據庫語言。在使用它時,只須要發出「作什麼」的命令,「怎麼作」是不用使用者考慮的
- SQL被美國國家標準局(ANSI)肯定爲關係型數據庫語言的美國標準, 後來被國際化標準組織(ISO)採納爲關係型數據庫語言的國際標準
2 SQL優勢:
- 標準統一:
- 不是特定數據庫供應商專有的語言, 幾乎全部DBMS都支持SQL
- 簡單易學:
- SQL語言由描述性很強的英語單詞組成, 這些單詞數量很少, 且都很經常使用
- 聲明式:
- SQL是一種聲明式的語言, 相對應的, Java是一種命令式的語言. 在SQL中, 你只須要指出 "想作什麼", 而無需指明 "怎麼作", 具體的操做過程由DBMS自動完成
1.DDL (Data Definition Language)數據庫
- 數據定義語言, 用來定義數據庫對象, 包括數據庫, 表, 列, 索引, 視圖等
2.DML (Data Manipulation Language)安全
- 數據操做語言, 用來操做數據庫表中的記錄
3.DQL (Data Query Language)編碼
- 數據查詢語言, 用來查詢數據庫表中的記錄
4.DCL (Data Control Language)spa
- 數據控制語言, 用來定義訪問權限和安全級別
1.數值類型3d
- int:整形
- double:浮點型, 例如double(5, 2)
2.文本和二進制類型對象
- char:固定長度字符串, char(10)
- varchar:可變長度字符串, varchar(255)
- text:字符串類型(非標準)
3.時間日期類型blog
- date:日期類型, 格式爲 yyyy-MM-dd
- datetime:yyyy-MM-dd hh:mm:ss
1.關鍵字:
- create:用於建立操做
- alter: 用於修改操做
- drop: 用於刪除操做
2.操做數據表:
2.1數據庫的約束
1.空值和非空值索引
- NULL NOT NULL(列值不能夠爲空,必須傳值)
2.自動增加 :自動增加,須要配合主鍵使用,默認起始值爲1 增量爲1,只針對整數類型ip
- AUTO_INCREMENT
3.主鍵約束:每張表只能存在一個主鍵,保證數據惟一性,自動位NOT NULL字符串
- 關鍵字PRIMARY KEY
4.惟一約束; 保證數據惟一性,能夠爲空值,一張表能夠存在多個
- 關鍵字UNIQUE KEY
5.默認約束:若是沒有輸入明確的字段值,則會自動設置爲默認值
- 關鍵字default
6.外鍵約束: 再多表中使用
- 關鍵字foreign key
2.2 例:建立一張student表
語法:( 列名 數據類型 , 列名 數據類型 , ......)
代碼:CREATE TABLE students(id int , name varchar( 50 ) ,age int ) ;
2.3.驗證:
2.3.1.查看數據庫中數據表
- show columns from 數據表名 ;
2.3.2.查看數據表字段信息
- desc 數據表名;
2.3.3.查看數據表建立細節
- show create table 數據表名;
3.修改操做
一、修改數據表表名稱
- 語法:RENAME TABLE oldname TO newname ;
- 代碼:RENAME TABLE students TO stud;
二、修改數據表字符集-編碼格式
- 語法:ALTER TABLE 表名稱 CHARACTER SET 字符集名稱;
- 代碼:ALTER TABLE students CHARACTER SET gbk;
三、修改列的數據類型
- 語法:ALTER TABLE 表名稱 MODIFY 列名稱 數據類型 ;
- 代碼:ALTER TABLE students MODIFY gender VARCHAR(10);
四、修改列名
- 語法:ALTER TABLE 代表稱 CHANGE 列名稱(old) 列名稱(new) 數據類型;
- 代碼:ALTER TABLE students CHANGE name sex VARCHAR(10);
4.刪除操做
一、刪除表中的列
- 語法:ALTER TABLE 表名稱 DROP 列名稱;
- 代碼:ALTER TABLE students DROP sex;
二、刪除數據表
- 語法:DROP TABLE 表名稱 ;
- 代碼:DROP TABLE students ;
三、刪除表中全部的數據(後面演示)
- 語法:TRUNCATE TABLE 表名稱;
- 代碼:TRUNCATE TABLE students;
5.增長操做
一、在表中增長一列 列名稱:age
- 語法:ALTER TABLE 表名稱 ADD 列名 數據類型;