テーブルBIND_TEST
と1つの列COL_1 varchar2(2 bytes)
があります。Oracleでバインド変数を使用してvarchar2列に '01'を挿入する方法は?
バインド変数を使用して、2行のデータ:01
と10
をテーブルに挿入します。
最初のSELECT文:
select :val_1 as COL_1 from dual;
Bind Variable value: 01
COL_1
--------
01
Bind Variable value: 10
COL_1
--------
10
すべてが今までOKです。今すぐ挿入文:0
から始まる値について
insert into BIND_TEST
select :val_1 as COL_1 from dual;
Bind Variable value: 01
COL_1
--------
1
Bind Variable value: 10
COL_1
--------
10
、値が正しく挿入されていません。 BIND変数を使用する場合、これをどのように処理する必要がありますか?参考のために、
INSERT INTO bind_test
SELECT LPAD(:val_1, 2, '0') AS col_1
FROM dual;
をそして:
これは、キャストの問題のように聞こえます。つまり、数値「1」が数値として扱われているため、先頭のゼロは存在しません。 –