項目使用postgreSql數(shù)據(jù)庫,先需要將庫中的某個表中的某個字段類型由Varchar改成Int,直接右鍵設(shè)計表,修改類型為int,保存的時候報錯,錯誤如下:
意思就是,這個crt_user字段不能自動轉(zhuǎn)換成成類型bigint,需要使用USING表達(dá)式來轉(zhuǎn)換。
這是在庫中運(yùn)行修改字段的類型的sql:
ALTER TABLE auth_client_service ALTER COLUMN crt_user
SET DATA TYPE int8 USING crt_user:: int8,
ALTER COLUMN crt_user
SET DEFAULT 0;
至此,類型修改成功。
補(bǔ)充:PostgreSQL中將Integer類型的字段轉(zhuǎn)換成Varchar類型的字段
rt,直接用pgadmin是沒有辦法進(jìn)行這個轉(zhuǎn)換的。
通過執(zhí)行sql卻是可以做到的,關(guān)鍵是添加USING表達(dá)式,這個表達(dá)式的意思是如何初始化這個字段。
比如下面的例子將整形轉(zhuǎn)換成varchar(16)類型
ALTER TABLE app.app_high_school_score
ALTER COLUMN chinese TYPE character varying(16) USING (chinese::character varying(16));
USING 中也可以使用CAST操作符,例如:
USING CAST(column_name AS integer)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:- postgresql 修改字段長度的操作
- PostgreSQL 中字段類型varchar的用法
- PostgreSQL 修改表字段常用命令操作
- PostgreSQL 如何修改文本類型字段的存儲方式
- postgresql 實現(xiàn)獲取所有表名,字段名,字段類型,注釋