select ssj_id.nextval as DataID from dual ssj_id是个序列 dual是oracle自带的表,不用管.
insert into system.SSJ_SData values(sdata_id.nextval,:dataID,:NOi,:x1,:y1,:z1,:x2,:y2,:z2,:err)"; 子表就是按顺序录入,没管列名,如果其他地方没用到的话,随便起名吧 如果其他地方查询和录入需要用到列名,再参考下那里的代码
ssj_id是个序列 那这个序列还要添加到虚表dual中么? 如果要添加,那它的值该怎么定。
序列是序列,跟表没有直接的关系 就是用来产生一个不重复的数字,调用.nextval使他自增,用来生成主键的 而dual是个系统表,不能增加,也不能删除,不可更改,里面只有一行一列,通常是用来获取一个计算的结果的 比如select 2*2 from dual,select sysdate from dual(获取系统时间)
select ssj_id.nextval as DataID from dual; 就是说,我要测试的话,这条语句就不用管了么?
DataID,
PartNo,
ServerID
,ServerName,
FileName,
UploadTime,
GIF1,
GIF2,
JPG1,
JPG2,
JPG3,
JPG4,
JPG5,
WORD,
FCT1,
FCT2,
FCT3,
FCTLV1,
FCTLV2,
FCTLV3,
FCT4,
FCT5,
FCT6,
FCT7,
FCT8,
FCT9,
FCT10,
CHAOCHANUM,
CHAOCHARATE,
DJ,
CV,
SK,
UU,
ISOK
这就是表名和列名
表必须创建到system用户下
至于每个列的类型,你只能根据后面Parameters的类型对应创建了
目测至少有number,varchar,blob
ssj_id是个序列
dual是oracle自带的表,不用管.
子表就是按顺序录入,没管列名,如果其他地方没用到的话,随便起名吧
如果其他地方查询和录入需要用到列名,再参考下那里的代码
那这个序列还要添加到虚表dual中么?
如果要添加,那它的值该怎么定。
就是用来产生一个不重复的数字,调用.nextval使他自增,用来生成主键的
而dual是个系统表,不能增加,也不能删除,不可更改,里面只有一行一列,通常是用来获取一个计算的结果的
比如select 2*2 from dual,select sysdate from dual(获取系统时间)
就是说,我要测试的话,这条语句就不用管了么?
自增字段是个很重要的区别,slqserver里可以设置表的某一个字段自增,而oracle需要创建一个序列来产生自增的数字
函数也有很多不同,slqserver里获取系统时间用getsysdate()就可以直接获取系统时间,而oracle不能直接执行函数,只能执行查询才能获得结果,所以需要dual这个表
序列不等于序号列
英文叫SEQ,中文叫序列
有专门放序列的地方
执行select DataID from system.SSJ_Data where ServerName=:ServerName and FileName=:FileName;
提示:
ORA-01008: 并非所有变量都已绑定