標籤:des blog http 使用 os io 資料 for
前短時間學習了幾天的mysql,也就是局限於一些簡單的SQL文法,做了幾天的筆記,打算5天以後
拿上來的,但是因為電腦出現點問題,所以不知道怎麼回事就不見了,索性重頭學過一下,這次我看
的是mysql技術內幕,感覺不錯,希望我筆記中理解錯誤的地方大家指點一下
第一天:
建立一個mysql帳號:create user ‘新的使用者名稱’@‘localhost’identified by ‘口令’;
Now()顯示當日日期和時間,user()顯示當前的使用者,version()顯示資料庫的版本
使用“;”把一行上輸入多條語句:select now();select();
顯示當前資料庫select database()和show databases不一樣,後者是顯示使用者裡有多少個資料庫,並將其列出來。但前者是顯示當前使用的資料庫。噹噹前沒有使用某個資料庫的時候select database()顯示為NULL。
可以通過在進入mysql的時候直接使用資料庫,mysql –p –u user databasename;
日期類型date 預設形式“yyyy-mm-dd”
自動成長類型 auto_increment,如果沒有給列的值將自動增加.
Primary key(columns_name),作為索引,主鍵
使用describe來描述表格的詳細資料
與其相同作用的還有desc member;explain…;show columns from member;show flelds from member
但是Show full columns from table_name,表格的全部資訊,和describe是不同的含義。
在表格建立時規定類型engine=”…” ,如果沒有指定,預設的類型為MyISAM
ENUM(…)的用法,資料的取值只能夠是enum中的一個:enum(‘Y’,’N’)那麼資料只能取Y或N其中的一個
Describe 不僅可以描述整個表的結果,還可以描述單個列:describe table_name‘columns’
PRIMARY KEY(student_id,event_id):student_id和event_id兩個的組合為主鍵
Index():索引,讓mysql更快的搜尋到
Foreign key(...) references …作用是將這個表中的列和其他表中的相關聯,這樣score就不會產生一個不存在的student_id或event_id;
對於為什麼student_id有一個索引,這是因為對於froeign定義的的每一個資料列,要麼它本身是一個索引,要麼本身有索引的性質,而剛還primary key本身有索引的作用,所以第一個event_id已經有索引的作用,但是student_id卻沒有這個作用,所以用索引student_id;
沒有依賴的表格先建立,ps:frogign key…references…references後面的將先建立,然後前面的在建立。如果要將表格丟棄,順序剛好是相反的,
插入表格式資料的各種方法:
(1) insert into table_name values(value);
(2) insert into table_name values(value1),(value2),(…);
(3) insert into table_name(column1,column2),values(‘1_columns’,’2_columns’)給出列名,然後賦值,(可以多個或一個賦值)