dm表管理

模式:一组数据对象的集合。在创建用户的时候就会生成一个跟用户同名的模式。

表:
达梦支持那些表?
    默认的表(索引组织表),堆表,临时表,分区表,外部表等。
    
如何去规划表?
l 命名  字母开头 a-z,0-9,$,#,_
l 数据类型:int char varchar date clob blob number等等。
l 存储位置:自已规划表空间
l 约束(5大约束)
        非空,唯一,主键,检查,外键
l 注释:comment
l  遵循3范式
 
案例:规划一张学员信息表
表名:stu
列:学号(id  char(10)),姓名(name  varchar(20) not null),性别(sex  char(1)),年龄(age int),电话(tel varchar(15)  not null),家庭住址(address  varchar(50))
表空间:stu
约束:主键列—学号,非空—姓名,电话
备注:学员信息表


 
查看表的结构
sp_tabledef(模式名,表名)  表名区分大小写。

sp_tabledef('LJW','LJW');

sp_tabledef('TEST','stu')  

SQL> select dbms_metadata.get_ddl('TABLE','stu','TEST');

如何查看表在那个表空间:

如何查看表的备注信息:

表上有哪些约束:


 
 
案例2:创建表的时候指定约束


唯一约束

 

主键约束:
SQL> create table t5(id int primary key);

检查约束:

 

 

外键约束:(一张表可有多个外键,一般表的外键是另一张表的主键)

SQL> create table t13(id int primary key,sid int foreign key references t11(sid));

案例3:对列加备注
SQL> comment on column t13.sid is '编号';
SQL> select table_name,column_name,comments from dba_col_comments where table_name='T13';
 
案例4:把sql脚本的数据导入到表中?
cat  /home/dmdba/a.sql
insert into t1 values(2);
insert into t1 values(3);
insert into t1 values(4);
insert into t1 values(5);
insert into t1 values(6);
commit;

SQL> start /home/dmdba/a.sql

利用DTS工具进行迁移

 

 
如何去维护表?
重命名
SQL> alter table t1 rename to tt;

增加、删除列
SQL> alter table tt add name varchar(10) default 'aaa';
SQL> alter table tt drop name;

启用和禁用约束(迁移数据,最好把约束禁用,迁移完成再启用);
SQL> alter table t13 disable constraint CONS134218863;
SQL> alter table t13 enable constraint CONS134218863;

删除表
SQL> drop table tt;
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值