SELECT CAST('张三' AS VARCHAR2(20)) name
FROM dual;
一般来说在查询时很少有用到这种语句,但是使用CREATE TABLE ... AS SELECT ...语句的时候这个就很好用了
--建表
CREATE TABLE test01 AS
SELECT '张三' name FROM dual;
--正常插入数据
INSERT INTO test01
SELECT '李四' FROM dual;
--插入报错
INSERT INTO test01
SELECT '王老五' FROM dual;
为啥报错呢,看下表结构,name默认为CHAR(4),所以没办法插入3个汉字
这样建表再插入数据就没问题了
--建表
CREATE TABLE test02 AS
SELECT CAST('张三' AS VARCHAR2(20)) name FROM dual;
--正常插入数据
INSERT INTO test02
SELECT '李四' FROM dual;
--正常插入数据
INSERT INTO test02
SELECT '王老五' FROM dual;