資料庫
資料庫和資料表管理
建立資料庫
語句格式 create database (if not exists)資料庫名
-------->create database if not exists mysqldb
(if not exists保證如果資料庫存在則不會報錯)
顯示資料庫
語句格式 show create database 資料庫名
-------->show create database mysqldb
刪除資料庫
語句格式drop database 資料庫名
-------->drop database mysqldb
資料表資料庫最近本的邏輯單元,由行和列組成
e-r(entity-relationship)實體關係模型
三要素:實體。屬性、關係
主鍵(primary key)
為保證每一行記錄的唯一性設定主鍵
特徵:1、主鍵可以有乙個欄位也可以有多個字段組成(復合主鍵)
2、主鍵不可為空,當主鍵為復合主鍵時每乙個主鍵都不可為空
實體間的關係和外來鍵(foreign key)
實體間的關係可以用外來鍵來表示
如果乙個表(實體)的裡字段是另外乙個表(實體)的字段,那個這個字段就是這個表的乙個外來鍵
約束(constraint)
為表新增的一種強制規則約束
如果為表新增了約束那麼所有sql操作必須要遵守這個約束否則會失敗
not null 非空約束,約束某列的所有資料都不可為空
unique 唯一約束,約束某列或者某些列組合資料必須唯一
primary key 主鍵約束,約束每一條記錄的唯一性
foreign key 外來鍵約束,在表與表之間建立一種強制依賴關係
check 檢查性約束,在列上建立乙個必須滿足的條件約束
資料表的數值屬性
時間屬性
資料型別 描述
bit 位欄位型別,取值範圍是1~64, 預設為1
tinyint 很小的整數型別。帶符號的範圍是-128~127,無符號的範圍是0~255
bool,boolean 布林型別,是tinyint(1)的同義詞。zero值被視為假。非zero值被視為真
smallint 小的整數型別,帶符號的範圍是-32768~32767。無符號的範圍是0~65535
mediumint 中等大小的整數型別。帶符號的範圍是-8388608~8388607,無符號的範圍是0~16777215
int 普通大小的整數型別。帶符號的範圍是-2147483648~2147483647,無符號的範圍是0~4294967295
integer 與int的含義相同
bigint 大整數型別,帶符號的範圍是-9223372036854775808~9223372036854775807。無符號的範圍是0~18446744073709551615
float 單精度浮點型別
double 雙精度浮點型別
decimal 定點數型別
dec 與decimal的含義相同
資料型別 描述
date 日期型別,例如』2012-01-01』
datetime 日期和時間型別,例如』2012-01-01 12:00:00』
timestamp 時間戳型別,timestamp列用於insert或update操作時記錄日期和時間
time 時間型別
year 兩位或四位的年份型別,預設為四位年份型別
char(m) 固定長度字串,m為儲存長度
varchar(m) 可變長度的字串,m為最大儲存長度,實際儲存長度為輸入字元的實際長度
binary(m) binary型別類似於char型別,但儲存二進位制位元組字串而不是非二進位制字串。m為儲存長度
varbinary(m) varbinary型別類似於varchar型別,但儲存二進位制位元組字串而不是非二進位制字串。m為儲存長度
blob 二進位製大物件,包括tinyblob、blob、mediumblob和longblob 等4種blob型別
text 大文字型別,包括tinytext、text、mediumtext和longtext等4種text型別
enum 列舉型別
set 集合型別
複製表複製乙個表的語句格式:
1、like:create table 新錶名 like 原表名
2、select * from: create table 新錶名 select * from 原表
刪除表刪除乙個表的語句格式:
drop table 表名
通過alter table對錶的列進行增加,修改刪除
(設定表的一列的預設值default(『預設值』))
alter table 表名 add 列名 資料型別和長度 列屬性
---->使用alter table語句在表emp中增加一列,列名為tele,資料型別為varchar,長度為50,列屬性為允許空,具體語句如下:
alter table emp add tele varchar(50)null
alter table 表名 modify 列名 新的資料型別和長度 新的列屬性
---->使用alter table語句在表emp中修改tele列的屬性,將資料型別為char,長度為50,列屬性為允許空。具體語句如下:
alter table emp modify tele char(50)null
alter table 表名 drop column列名
---->使用alter table語句在表emp中刪除tele列。具體語句如下:
alter table emp drop column tele
修改約束條件
新增約束條件格式:
alter table 表名 add constraint 約束名 約束型別(欄位名)
—>alter table class add constraint name_unique unique(name)
刪除約束條件
刪除主鍵約束
alter table 表名 drop primary key
刪除外來鍵約束(注意指明外來鍵約束名)
alter table 表名 drop foreign key 約束名
刪除字段唯一約束(刪除唯一性約束實際上就是刪除唯一索引)
alter table 表名 drop index 索引名
—>alter table class drop index name_unique
資料庫基礎學習
資料庫 資料庫是按照 資料結構儲存 管理資料的倉庫 是一種長期儲存在磁碟中 有組織 可共享 統一管理大量資料庫的集合。根據個人理解,類似於現實中的圖書館 超市一般。儲存了種類不同的物品的同時,對於物品進行分類 管理。資料庫管理系統 database management system 簡稱dbms,...
資料庫的基礎學習
了解資料庫 1.資料庫是檔案儲存資料,按照一定的規則 sql語句 來進行儲存 2.資料庫管理系統,可以對資料庫進行增刪改查 sql 3.安裝資料庫 需要配置環境變數 分割路徑為分號 把mysql的bin資料夾的路徑新增到環境變數path上 常見資料庫 mysql 開源免費的資料庫,小型的資料庫.已經...
MongoDB資料庫基礎學習!
collection就相對於mysql中的table 表 use db 使用db資料庫 db.collection.insert 使用了不存在的物件,即建立該物件。show dbs 檢視當前伺服器中寫在磁碟上的資料庫 show tables 檢視資料庫中的collection db 檢視當前使用的資...