我們如何設置數字類型列的默認值爲'00'?我試過但仍保存爲'0',我需要這樣做。Oracle:爲數字列設置默認值
//alter table table_name add column column1 default '00';
請給我一個建議。
我們如何設置數字類型列的默認值爲'00'?我試過但仍保存爲'0',我需要這樣做。Oracle:爲數字列設置默認值
//alter table table_name add column column1 default '00';
請給我一個建議。
不可能存儲這樣的數字 - 以您描述的格式('00')。您可以將數字作爲數字進行存儲(當然作爲數值數據類型的值),並使用to_char
函數或to_char
函數與lpad
函數結合使用以表示您喜歡的格式的數字。這裏有一個例子:
SQL> create table TB_SingleNumberColumn(
2 col number
3 )
4/
Table created
SQL> insert into TB_SingleNumberColumn(Col) values(1);
1 row inserted
SQL> insert into TB_SingleNumberColumn(Col) values(5);
1 row inserted
SQL> insert into TB_SingleNumberColumn(Col) values(11);
1 row inserted
SQL> insert into TB_SingleNumberColumn(Col) values(111);
1 row inserted
SQL> commit;
Commit complete
-- The values as they are
SQL> select * from TB_SingleNumberColumn;
COL
----------
1
5
11
111
-- Values padded with zeros.
SQL> select to_char(col, '000') res
2 from TB_SingleNumberColumn;
RES
----
001
005
011
111
SQL> select lpad(to_char(col), 3, '0')
2 from TB_SingleNumberColumn
3 ;
LPAD(TO_CHAR(COL),3,'0')
------------------------
001
005
011
111
:我在這個答案後得到了一個想法。謝謝,我會實施讓你知道的。 – user1495475
我嚴重懷疑你可以存儲00作爲表的數字數據類型。 – user75ponic
@Polppan:怎麼辦?我試過了,它不起作用。 – user1495475
我想你可能必須存儲爲varchar2或存儲爲數字,當你檢索你做select語句中的操作。 – user75ponic