sql修改欄位類型
mysql資料庫中sql修改欄位類型可以按照以下方式:
語法規則:alter table 表名 modify 欄位名 新類型
例如,有張表student,有id欄位是int型的,改為varchar類型
alter table student modify id varchar(20);
執行該sql語句即可。
注意:如將varchar類型轉成int類型,原欄位必須是數字,
而且int的最大值是4294967295,原欄位的值需要小於等於int的最大值才可以。
② sql 修改欄位類型
alter table 表名 alter column 欄位名 type not null。
1、修改欄位名:
alter table 表名 rename column A to B。
2、修改欄位默認值:
alter table 表名 add default (0) for 欄位名 with values,如果欄位有默認值,則需要先刪除欄位的約束,在添加新的默認值。
3、增加欄位:
alter table 表名 add 欄位名 type not null default 0 。
5、刪除欄位:
alter table 表名drop column 欄位名。
(2)sql修改欄位類型擴展閱讀:
alter其他用法
1.重命名表
ALTER TABLE 【表名字】 RENAME 【表新名字】
2.刪除表中主鍵
Alter TABLE 【表名字】 drop primary key
3.添加主鍵
ALTER TABLE sj_resource_charges ADD CONSTRAINT PK_SJ_RESOURCE_CHARGES PRIMARY KEY (resid,resfromid)
4.添加索引
ALTER TABLEsj_resource_charges add index INDEX_NAME (name);
5.添加唯一限制條件索引
ALTER TABLE sj_resource_charges add unique emp_name2(cardnumber);
6.刪除索引
alter table tablename drop index emp_name;
7.聯合唯一索引
ALTER TABLE tablenameADD UNIQUE INDEX INDEX_NAME(school_id, settlement_time);
alterignoretable tablenameadniqueindex(user_id,user_name)
③ SQL語句如何修改主鍵欄位的欄位類型類型
首先,修改主鍵欄位的欄位類型,肯定是要先刪除主鍵才能操作的
--【1.查找主鍵】
--SQLSERVER
select name as pkName from dbo.sysobjects where xtype='PK' and parent_obj=(select id from dbo.sysobjects where name='表名')
--ORACLE
SELECT CONSTRAINT_NAME FROM USER_CONSTRAINTS WHERE TABLE_NAME = UPPER('表名') AND CONSTRAINT_TYPE ='P'
--【2.刪除主鍵約束】
ALTER TABLE 表名 DROP CONSTRAINT 約束名
--ORACLE
--刪除主鍵連同索引
ALTER TABLE 表名 DROP CONSTRAINT 約束名 CASCADE DROP INDEX;
或者
ALTER TABLE 表名 DROP PRIMARY KEY CASCADE DROP INDEX;--【3.修改欄位】
--【先把這一列的值備份到臨時列里,再把這一列update成null,再修改類型,再把數據拷貝回來】
--SQLSERVER
--默認值單獨處理,關聯約束
--默認值的變更涉及到約束,如有約束,需要先查詢出越是再進行刪除
ALTER TABLE 表名 DROP CONSTRAINT 約束名
ALTER TABLE 表名 ALTER COLUMN 欄位名 欄位類型(長度精度) 是否為空
ALTER TABLE 表名 ADD CONSTRAINT 約束名 DEFAULT 默認值 FOR 欄位名
--ORACLE
--刪除默認值:default null
ALTER TABLE 表名 MODIFY COLUMN 欄位名 VARCHAR2(20) DEFAULT ' ' NOT NULL--【4.新增主鍵】
--指定主鍵名字
ALTER TABLE 表名 ADD CONSTRAINT 主鍵名 PRIMARY KEY (F1,F2);
--未指定主鍵名字
ALTER TABLE 表名 ADD PRIMARY KEY (F1,F2)
④ 如何更改sql server列的欄位類型
在SQL Server中修改欄位類型和欄位名稱
--以下是完整的SQL執行語句
if exists(select * from syscolumns where id=object_id('數據表名稱') and name='欄位名') --判斷該欄位是否存在
begin
ALTER TABLE 表明 ALTER COLUMN 欄位名 VARCHAR(64);--更改類型
end
GO
if exists(select * from syscolumns where id=object_id('表名') and name='舊欄位名') --判斷該欄位是否存在
begin
EXEC sp_rename '表明。舊欄位名', '新欄位名', 'COLUMN'; --更改欄位名稱 sp_rename 為數據存儲過程
⑤ 如何更改SQL中欄位的類型
ALTER TABLE a ALTER COLUMN aaa varchar(50) NOT NULL
如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!
vaela
⑥ SQL中如何改變一列的數據類型
你可以使用 ALTER TABLE 加 ALTER COLUMN 來更改指定的列數據類型,如:
CREATE TABLE
myTest (fId int,fName nvarchar(20) null)
創建一個表,名為:myTest,包含兩個欄位。如果此時你想要更改 fName 列,那麼可以使用以下語句:
ALTER TABLE myTest
ALTER COLUMN fName nvarchar(30) null
這里要注意,如果指定的新的數據類型長度比原來的數據類型小,那麼會出現數據丟失的情況,所以千萬要注意,另外,不是所有的數據類型都可以更改,以下是SQL聯機叢書中提到的注意事項:
要更改的列不能是:
·數據類型為 text、image、ntext 或 timestamp 的列。
·表的 ROWGUIDCOL 列。
·計算列或用於計算列中的列。
·被復制列。
·用在索引中的列,除非該列數據類型是 varchar、nvarchar 或 varbinary,數據類型沒有更改,而且新列大小等於或者大於舊列大小。
·用在由 CREATE STATISTICS 語句創建的統計中的列。首先用 DROP STATISTICS 語句刪除統計。由查詢優化器自動生成的統計會由 ALTER COLUMN 自動除去。
·用在 PRIMARY KEY 或 [FOREIGN KEY] REFERENCES 約束中的列。
用在 CHECK 或 UNIQUE 約束中的列,除非用在 CHECK 或 UNIQUE 約束中的可變長度列的長度允許更改。
·有相關聯的默認值的列,除非在不更改數據類型的情況下允許更改列的長度、精度或小數位數。
⑦ mysql資料庫中sql修改欄位類型要怎麼做
方法如下:
//修改一個欄位的類型
alter table user MODIFY new1 VARCHAR(10);
//修改一個欄位的名稱,此時一定要重新指定該欄位的類型
alter table user CHANGE new1 new4 int。
⑧ SQL修改列數據類型
什麼資料庫啊 MSSQL直接進去圖形化界面搞,其他的數據就用
ALTER TABLE table_name ALTER COLUMN column_name new_data_type
⑨ sql中修改欄位名類型
--identity(1,1)只能加在新建的列上,已存在的不能加。可以先刪除原來的列,再新加。
alter table buka_biao
drop column id
go
alter table buka_biao
add id int identity(1,1) not null
go
⑩ 怎樣用SQL語句修改欄位類型
一般地,改欄位名可以用這條語句:
altertablearenamecolumnatoc
但是,實際應用中,我們往往是用j-sql進行編譯,而j-sql不支持修改欄位名,所以,如果一定要修改欄位名,那麼只有通過變通的方法了,具體思路為:
1.新建一個欄位,取名為c;
2.將欄位a的內容拷貝到c;
3.刪除欄位a;