MySQL資料庫動作陳述式(補充1)(cmd環境運行)

來源:互聯網
上載者:User

標籤:text   mysql資料庫   sql   var   語句   枚舉類   enum   輸入   def   

一.字串類型enum枚舉類型
 1 /* 2 也叫做枚舉類型,類似於單選! 3 如果某個欄位的值只能從某幾個確定的值中進行選擇,一般就使用enum類型,
在定義的時候需要將該欄位所有可能的選項都羅列出來: 4 5 */ 6 7 create table test_enum( 8 gender enum(‘male‘,‘female‘,‘secret‘); 9 );10 11 -- 而在插入資料的時候,只能在規定的選項中的進行選擇:12 insert into test_enum values(‘male‘);13 insert into test_enum values(‘female‘);

 -- 資料庫中實際儲存的其實是整型資料!

1 -- 插入female2 insert into test_gender values(2); 
text 

在實際的開發中,自由輸入區一般都用text類型,比如新聞本文,部落格本文等!

1 create table news(2     news_id int(11) primary key  auto_increment  ,3     content text 4 );

 

set
/*也叫做集合類型,類似於多選項!如果一個欄位的值只能是某個或某幾個選項的值,最好使用set類型同enum類型一樣,在定義的時候也需要把所有可能的選項都羅列出來:*/create table zifu(  hobby set(‘sleep‘,‘eat‘,‘study‘,‘php‘,‘LOL‘,‘WOW‘));insert into zifu values(‘sleep,php,LOL‘);

其實,多選項實際儲存的也是整型資料:

1 -- 選擇sleep 和php    1+8= 92 insert into zifu  values(9); 
二.列屬性

 

null和not null

預設情況下,欄位都是可以為空白的,也就是該屬性的預設值為null

 

1 -- not null 不可為空  unsigned非特殊字元2 create table stu(3    name varchar(20) not null,4    age tinyint unsigned5 );
default

自訂預設值屬性,也叫做default約束,通常就是配合not null屬性一起使用,也就是說某個欄位不允許為空白,但是如果使用者沒有給該欄位插入資料,就用預設值去填充!

create table user_my(   id int primay key auto_increment   name varchar(32) unique key default ‘我是沒有設定唯一鍵內容的name‘);
-- 當然,也可以直接插入default關鍵字,意思就是插入預設值:insert into user_my values(23,default);

 

primary key

 1.設定主鍵之後就不能添加重複的主鍵的值了

 2.主鍵會自動增加非空約束

定義主鍵方法有2:

 

 1 -- 1.直接在欄位的後面進行設定 2 create table stu( 3     id int unique primary key  auto_increment    4 ); 5  6 -- 2.定義完欄位後再定義主鍵 7 create table stu( 8     id int unique  auto_increment, 9     primary key(id)10 );

注意:

如果某個主鍵是一個組合主鍵,就只能使用第二種方式!

1 create table tea(2     tea_name varchar(20),3     class_id tinyint unsigned, 4     day_num tinyint unsigned,5     -- 定義組合主鍵6     primary key(tea_name,class_id)7 );
unique key
 1 -- 1.直接在欄位後面加unique 2 create table stu( 3     id int unsigned primary key auto_increament, 4     stu_id int unsigned unique key, 5     tel char(11)  unique key 6 ); 7  8 -- 2.先定義欄位,後設定unique key 9 create table stu(10     id int unsigned primary key auto_increament,11     stu_id int unsigned ,12     tel char(11) ,13     -- 定義兩個唯一鍵14     unique key(stu_id,tel)15 );

 

MySQL資料庫動作陳述式(補充1)(cmd環境運行)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.