DM达梦数据库建表及插数据

DM达梦数据库建表及插数据

一、建表

CREATE TABLE DM表名(

T_ID bigint not null,

T_DATE date null,

T_TIMESTAMP timestamp(6) null,

T_DATETIME datetime null,

T_TIME time null,

CONSTRAINT PK_DM表名 PRIMARY KEY (T_ID)

);

二、插入数据

BEGIN

FOR v_count IN 1..101 Loop

INSERT INTO DM表名 VALUES(v_count,

CAST(v_count as date),CAST(v_count as timestamp),

CAST(v_count as datetime),CAST(v_count as time)

);

END Loop;

COMMIT;

END;

/

三、其他字段类型

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

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

bigint | bigint | v_count | 111

byte | byte | v_count | 444

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

char | char(20) | v_count | nihao

varchar | varchar(20) | v_count | zhongguo

character | character(20) | v_count | nihao

varchar2 | varchar2(20) | v_count | zhongguo

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

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

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

bit | bit | - | 0 / 1

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

float | float | - | 123.001234

real | real | - | 123.4567

double | double | - | 1.201

double precision | double precision | - | 90

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

blob | blob | - | hextoraw(16226c6f6231626cf6231626c6f6231626x6f6626c6f6231626c6)

clob | clob| - | ffffffCLOB

binary | binary(20) | - | hextoraw(16226c6f6231626cf6231626c6f6231626x6f6626c6f6231626c6)

varbinary | varbinary(2000) | - |hextoraw(16226c6f6231626cf6231626c6f6231626x6f6626c6f6231626c6)

longvarbinary | longvarbinary(2000) | - | hextoraw(16226c6f6231626cf6231626c6f6231626x6f6626c6f6231626c6)

longvarchar | longvarchar(200) | - | ffffffCLOB

text | text | - |ffffffCLOB

image | image | hextoraw(16226c6f6231626cf6231626c6f6231626x6f6626c6f6231626c6)

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

date | date |CAST(v_count+43100 as date) | 2018-01-08 / current_timestamp/getdate() /now ()/sysdate/dateadd(day,3,getdate())

datetime | datetime | CAST(v_count as datetime)|2018-01-08 01:01:01.999999/current_timestamp/getdate() /now ()/sysdate/dateadd(day,3,getdate())

timestamp | timestamp(6) | CAST(v_count as timestamp)| 2018-01-08 01:01:01.999999/current_timestamp/getdate() /now ()/sysdate/dateadd(day,3,getdate())

time | time | CAST(v_count as time) | 05:06:08/curtime /current_timestamp/getdate() /now ()/sysdate/dateadd(day,3,getdate())

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

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

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

四、指定主键字段

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

第一种:

CREATE TABLE DM表名(

T_ID bigint primary key not null,

T_DATE date);

第二种:

CREATE TABLE DM表名(

T_ID bigint not null,

T_DATE date,

CONSTRAINT PK_DM表名 PRIMARY KEY (T_ID)

);

第三种:

CREATE TABLE DM表名(

T_ID bigint not null,

T_DATE date);

ALTER TABLE DM表名 ADD CONSTRAINT PK_DM表名 PRIMARY KEY (T_ID);

注:PK_DM表名为约束名

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

如:

CONSTRAINT PK_DM表名 PRIMARY KEY (T_ID,T_DATE)

ALTER TABLE DM表名 ADD CONSTRAINT PK_DM表名 PRIMARY KEY (T_ID,T_DATE);

五、其它

六、操作界面

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