4.4.3修改字段類型
為化隆等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及化隆網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為做網(wǎng)站、網(wǎng)站建設(shè)、化隆網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
語句格式:ALTER TABLE 表名 MODIFY 字段名?數(shù)據(jù)類型;
在上面語句格式中,“表名”指定要修改的是哪個表,“MODIFY”表示要修改表中字段數(shù)據(jù)類型,“字段名”指定要修改表中哪個字段(的數(shù)據(jù)類型),“數(shù)據(jù)類型”指定表中字段要修改成的新數(shù)據(jù)類型。
下面截圖中的“ALTER TABLE”語句將t_dept表中deptno字段數(shù)據(jù)類型由原來的 int(10)修改為varchar(20)。
4.4.4修改字段排列位置
語句格式:ALTER TABLE 表名 MODIFY 字段名?數(shù)據(jù)類型FIRST|AFTER 字段名2;
此語句從格式上看比上面的修改字段數(shù)據(jù)類型語句多了一個參數(shù),即在上面的修改字段數(shù)據(jù)類型語句的最后增加了一個字段位置參數(shù),這個字段位置參數(shù)可以選擇“FIRST”或“AFTER 字段名2”中的一個。當(dāng)選擇“FIRST”參數(shù)時表示將指定字段調(diào)至第一個字段;當(dāng)選擇“AFTER 字段名2”時表示將指定字段調(diào)至“字段名2”所指字段的后面。
下面截圖中的“ALTER TABLE”語句將t_dept表中l(wèi)oc字段的位置由原來第三的位置調(diào)至了第一。
4.4.2修改字段名
語句格式:ALTER TABLE 表名 CHANGE 舊字段名?新字段名 新數(shù)據(jù)類型;
在上面語句格式中,“表名”指定要修改的是哪個表,“舊字段名”指定要修改表中哪個字段(的字段名),“新字段名”指定要修改成的新字段名,“新數(shù)據(jù)類型”指定修改字段名后的字段數(shù)據(jù)類型(注意:新數(shù)據(jù)類型不能省掉,表中字段更改字段名后即便數(shù)據(jù)類型不改,也要給出新數(shù)據(jù)類型)。
下面截圖中的“ALTER TABLE”語句將t_dept表中l(wèi)oc字段更名為location,修改之前和修改之后的“desc”語句執(zhí)行結(jié)果的對比中可以看出loc字段被修改成了location。
一、修改表
二、復(fù)制表
三、表字段的數(shù)據(jù)類型
存儲引擎決定了表的類型,而表內(nèi)存放的數(shù)據(jù)也要有不同的類型,每種數(shù)據(jù)類型都有自己的寬度,但寬度是可選的。
mysql常用數(shù)據(jù)類型有:
數(shù)值類型
1、整數(shù)類型
TINYINT SMALLINT MEDIUMINT INT BIGINT
作用:存儲年齡,等級,id,各種號碼等
注意:為該類型指定寬度時,僅僅只是指定查詢結(jié)果的顯示寬度,與存儲范圍無關(guān),存儲范圍如下
其實我們完全沒必要為整數(shù)類型指定顯示寬度,使用默認的就可以了
默認的顯示寬度,都是在最大值的基礎(chǔ)上加1
2、浮點型
定點數(shù)類型 DEC等同于DECIMAL
浮點類型:FLOAT DOUBLE
作用:存儲薪資、身高、體重、體質(zhì)參數(shù)等
3、日期類型
DATE TIME DATETIME TIMESTAMP YEAR
作用:存儲用戶注冊時間,文章發(fā)布時間,員工入職時間,出生時間,過期時間等
datatime與timestamp的區(qū)別
4、字符串類型
總結(jié):
單從數(shù)據(jù)類型的實現(xiàn)機制去考慮,char數(shù)據(jù)類型的處理速度更快,有時甚至可以超出varchar處理速度的50%。
但對于InnoDB數(shù)據(jù)表,內(nèi)部的行存儲格式?jīng)]有區(qū)分固定長度和可變長度列(所有數(shù)據(jù)行都使用指向數(shù)據(jù)列值的頭指針),因此在本質(zhì)上,使用固定長度的CHAR列不一定比使用可變長度VARCHAR列性能要好。因而,主要的性能因素是數(shù)據(jù)行使用的存儲總量。由于CHAR平均占用的空間多于VARCHAR,因此使用VARCHAR來最小化需要處理的數(shù)據(jù)行的存儲總量和磁盤I/O是比較好的。
5、枚舉類型和集合類型
字段的值只能在給定范圍中選擇,如單選框,多選框
enum 單選 只能在給定的范圍內(nèi)選一個值,如性別 sex 男male/女female
set 多選 在給定的范圍內(nèi)可以選擇一個或一個以上的值(愛好1,愛好2,愛好3...)
update
表名
set
字段名='要修改的值'
where
條件;
例子:
update
student
set
name='張三'
where
sno='2012001'
;
把學(xué)號2012001的學(xué)生姓名改為張三
對mysql數(shù)據(jù)表中的某個字段的所有數(shù)據(jù)修改,可以使用update語句,語法是:
update table_name set column = value[, colunm = value...] [where condition];
[ ]中的部分表示可以有也可以沒有。
例如:
update students set stu_name = "zhangsan", stu_gender = "m" where stu_id = 5;
擴展資料:
SQL修改字段屬性總結(jié):
1、修改表中字段類型 可以修改列的類型,是否為空)
Alter table [表名] alter column [列名] 類型
2、向表中添加字段
Alter table [表名] add [列名] 類型
3、刪除字段
Alter table [表名] drop column [列名]
4、添加主鍵
Alter table [表名] add constraint [ 約束名] primary key( [列名])
5、添加唯一約束
Alter table [表名] add constraint [ 約束名] unique([列名])
6、添加表中某列的默認值
Alter table [表名] add constraint [約束名] default(默認值) for [列名]