OSCAR神通数据库建表及插数据

OSCAR神通数据库建表及插数据

一、建表

CREATE TABLE OSCAR表名(

T_ID bigint not null,

T_DATE date,

T_TIME time(6),

T_TIMESTAMP timestamp(6),

T_SERIAL serial,

T_BIGSERIAL bigserial,

CONSTRAINT TBL_OSCAR表名_PKEY PRIMARY KEY (T_ID)

);

说明:

1.serial、bigserial为序列号类型,其范围都是(1,9223372036854775807),但序列号类型其实不是真正的类型,当声明一个字段为序列号类型时其实是创建了一个序列,INSERT时如果没有给该字段赋值会默认获取对应序列的下一个值。

2.建表成功时,会提示以下信息:

3.创建表时,serial、bigserial字段类型的字段应放在最后,不然INSERT时,不给这两个字段赋值,会报错;把这两个字段类型的字段放在最后,就不会存在这个问题,这两个字段类型的字段会自增长赋值。

二、插入数据

BEGIN

FOR v_count IN 1..101 Loop

INSERT INTO OSCAR表名 VALUES(

v_count,

to_date(v_count+2450000,J),curtime,to_date(v_count+2450000,J)

);

END Loop;

COMMIT;

END;

/

三、其他字段类型

字段类型 | 定义 | 唯一值 | 非唯一值

------整数------------------

bigint | bigint | v_count | 888

int | int | v_count | 12

smallint | smallint | v_count | 888

tinyint | tinyint | v_count | 123

--------字符---------------------------

char | char(20) | v_count | nihao

varchar | varchar(50) | v_count | zhongguo

-------------------------------------------

numeric | numeric(20,5) | v_count||0.88 | 123.12345

decimal | decimal(20,5) | v_count||0.88 | 123.456

float | float(53) | - | 123.0012345

real | real | - | 123.456

double precision | double precision | - | 222.555

-------大字段类-------------------------------

blob | blob | - | 101010

clob | clob| - | 1010101

text | text | - | nihao

binary | binary(20) | - | 0x01

varbinary | varbinary(2000) | - | 0x01

--------布尔类--------------------------------

boolean | boolean | - | true

---------时间类-------------------

date | date | to_date(v_count+2450000,J) / dateadd(day,v_count,getdate()) | 2018-01-08 / getdate() / dateadd(day,3,getdate())/sysdate

timestamp | timestamp(6) | to_date(v_count+2450000,J) /dateadd(day,v_count,getdate()) | 2018-01-08 01:01:01.999999/getdate() /now ()/ dateadd(day,3,getdate())/sysdate

time | time(6) | - | curtime / now()/sysdate

注:v_count为自定义循环变量,以便重复插值; - 表示省略; / 表示有多种可选值

选一个举例说明:numeric | numeric(20,5) | v_count||0.88 | 123.12345

建表时nemeric字段类型可定义为numeric(20,5); 如果该字段为主键,循环插数据时使用v_count||0.88赋值;该字段不为主键,循环插数据时使用123.12345赋值。

四、指定主键字段

建表时指定主键字段的三种方法:

第一种:

CREATE TABLE OSCAR表名(

T_ID bigint primary key not null,

T_DATE date);

第二种:

CREATE TABLE OSCAR表名(

T_ID bigint not null,

T_DATE date,

CONSTRAINT TBL_OSCAR表名_PKEY PRIMARY KEY (T_ID)

);

第三种:

CREATE TABLE OSCAR表名(

T_ID bigint not null,

T_DATE date);

ALTER TABLE OSCAR表名 ADD CONSTRAINT TBL_OSCAR表名_PKEY PRIMARY KEY (T_ID);

注:TBL_OSCAR表名_PKEY为约束名

创建联合主键时,在第2和第3种方法中的括号里直接加入需要增加的字段,用逗号隔开。

如:

CONSTRAINT TBL_OSCAR表名_PKEY PRIMARY KEY (T_ID,T_DATE)

ALTER TABLE OSCAR表名 ADD CONSTRAINT TBL_OSCAR表名_PKEY PRIMARY KEY (T_ID,T_DATE);

五、其它

OSCAR数据库不支持convert函数。

六、操作界面

经验分享 程序员 微信小程序 职场和发展