非常怪异的SQL语句 ALTER TABLE TABLE_TEST ADD TABLE_COLUMN_ONE VARCHAR2(20) NOT NULL DEFAULT '' WITH VALUES;我在看以前公司人写的数据库表管理模块,在为表添加字段时有这么一条SQL,但现在不能执行了.. ORA-30649: 缺少 DIRECTORY 关键字 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.WITH VALUES是什么意思,为什么要加2.NOT NULL 和 DEFAULT '' 矛盾吧 WITH VALUES 是什么意思.. 我也想知道,, 这条SQL是啥意思.. 这是我想弄明白的 ALTER TABLE table_test ADD table_column_one VARCHAR2(20) DEFAULT '' NOT NULL; 里面的引号是什么啊?WITH VALUES又是什么意思啊? 请教DEFAULT '' NOT NULL什么意思? DEFAULT ''表示默认值是空的字符串not null表示此字段不允许为null 首先,你的语句不能执行是因为当中多了一个字符,在 VARCHAR2(20) 多了一个2,改成VARCHAR(20)你的语句的意思是在TABLE_TEST表中添加一个VARCHAR(20)的列,该列不允许为null,并且在添加的同时设置一个空串作为默认值,with values的意思就是在创建列的同时给它赋值在你的语句中,由于设置了not null和default '',在创建列的时候也会把默认值赋给该列的所有行,此时with values就是多余的,如果没有设置not null,with values就会把空串''付给该列所有行,此时若少了with values,创建的列的所有行的值都是null,不知道说清楚没有 求个sql语句:按照字段分组分别取100条记录 一个关于游标的问题 hql case when 无法执行 为什么 解释代码 问一个时间问题 job中的broken指什么? 角色与权限问题 菜鸟求救(一) Help!Help!Help!Help! 往Oracle数据库中灌数据,可不可以不写日志?主要为了提高灌入的速度 进不进来随你~! 问一个有点难度的存储过程!! 写sql语句
2.NOT NULL 和 DEFAULT '' 矛盾吧
WITH VALUES又是什么意思啊?
请教DEFAULT '' NOT NULL什么意思?
表示默认值是空的字符串
not null表示此字段不允许为null
你的语句的意思是在TABLE_TEST表中添加一个VARCHAR(20)的列,该列不允许为null,
并且在添加的同时设置一个空串作为默认值,with values的意思就是在创建列的同时给它赋值
在你的语句中,由于设置了not null和default '',在创建列的时候也会把默认值赋给该列的所有行,
此时with values就是多余的,如果没有设置not null,with values就会把空串''付给该列所有行,
此时若少了with values,创建的列的所有行的值都是null,
不知道说清楚没有