名称 类型 可为空 默认 存储 注释
ID NUMBER N 标识(加1)
NETID VARCHAR2(15) N 网络服务商
CINEMAID VARCHAR2(15) N
CINEMATYPE VARCHAR2(2) Y 0
CREATEDATE VARCHAR2(10) N to_char(sysdate,'yyyy-mm-dd')
AUTOAPP VARCHAR2(2) Y 0这个是CiName表
我插入数据的语句是INSERT INTO CiName(netid,cinemaid,cinematype,autoapp) VALUES('TEST','gyl123','0','0')
提示错误
cannot Insert Null Into ("MySchool","CiName","ID")但是ID是标识了 为什么还是提示啊 难道我的Sql不对吗
ID NUMBER N 标识(加1)
NETID VARCHAR2(15) N 网络服务商
CINEMAID VARCHAR2(15) N
CINEMATYPE VARCHAR2(2) Y 0
CREATEDATE VARCHAR2(10) N to_char(sysdate,'yyyy-mm-dd')
AUTOAPP VARCHAR2(2) Y 0这个是CiName表
我插入数据的语句是INSERT INTO CiName(netid,cinemaid,cinematype,autoapp) VALUES('TEST','gyl123','0','0')
提示错误
cannot Insert Null Into ("MySchool","CiName","ID")但是ID是标识了 为什么还是提示啊 难道我的Sql不对吗
你的ID列没有指定值,你的insert语句指定的是netId
[INCREMENT BY n]
[START WITH n]
[{MAXVALUE n|NOMAXVALUE}]
[{MINVALUE n|NOMINVALUE}]
[{CYCLE |NOCYCLE}]
[{CACHE n|NOCACHE}];
INCREMENT BY--指定步长
START WITH--指定初始值
MAXVALUE--定义序列生成的最大编号.默认的MAXVALUE就是NOMAXVALUE,对于递增序列为10^27,对于递减序列为-1
MINVALUE--定义序列的最小编号,默认的MINVALUE为NOMINVALUE,对于递增序列为1,递减序列为-10^26.
CYCLE--配置序列在达到界限值时重复编号
NOCYCLE--达到界限值时不重复编号,这是默认值,当你试图生成MAXVALUE+1时将返回异常.
CACHE--定义在内存中保留的序列编号块的大小,默认值为20.
NOCACHE--强制数据词典对于生成的每个序列编号进行更新,保证在生成的编号中没有空缺,但这样会降低性能.
如Sequences的名称为a,插入时要写a.nextval
sequence 是全局的,你先查看一下你表里最大的ID 是多少,然后 查看每个sequence的sequence_name.currval(select sequence_name.currval from dual; ),然后用大于ID的那个sequence就可以了
select sequence_name.currval from dual这个貌似不对吧