七、用户和对象管理
1、用户管理
用户的概念:
创建用户会自动创建一个同名模式,模式内存放了表数据、存储过程、视图等等
- 权限:用于限制用户对数据的增、删、改、查等操作
- 角色:拥有相同权限的用户的集合
- 用户:用于登录,连接实例使用
- 模式:存放用户的表、存储过程、视图等等数据
#这里的person指的是模式
select * from person.city
-- 用户管理
-- 1.查看所有角色
select * from dba_roles;
-- 2.查看所有用户信息
select * from dba_users;
select username,user_id,account_status from dba_users;
-- 3.查看所有用户对应的角色
select * from dba_role_privs;
-- 4.创建用户
-- 用户名qxy 密码qxy123qxy123
create user qxy identified by "qxy123qxy123";
create user qxy identified by "qxy123qxy123" limit connect_time 3;
-- 5.给用户授权
grant public,resource to qxy;
-- 6.使用该用户登录disql,查看当前用户名,在该用户下建表查看是否表在该用户同名的模式下
-- disql qxy qyx123qxy123
-- select username from user_users;
-- creat table tmptb as select * from sysobjects;
2、表管理
表管理:创建表、重命名表、插入数据、查询数据、修改表结构、删除表
-- 表管理
-- 1.创建表
create table tmptb2(id int,name varchar(32));
select count(1) from tmptb2;
-- 2.插入数据
insert into tmptb2 values(1,'jack');
-- 3.修改表名
alter table tmptb2 rename to qxytb;
-- 4.查看表结构,desc仅在disql有效
desc qxytb;
select * from QXY.QXYTB;
insert into qxytb values(2,'rose');
select count(1) from qxytb;
-- 5.添加列
alter table qxytb add column(old int);
desc qxytb;
-- 6.删除列
alter table qxytb drop column old;
desc qxytb;
-- 7.
alter table qxytb add primary key(id);
desc qxytb;
-- 8.
alter table qxytb modify name varchar(255);
desc qxytb;
3、索引管理
达梦支持的索引:二级索引、位图索引、唯一索引、复合索引、函数索引、分区索引等。
默认的表是索引组织表,利用rowid创建一个默认的索引,所以我们创建的索引,称为二级索引。
create index idx_dmbak2_id on dmbak2(id);
4、视图管理
视图:视图是从用户的实际需要中抽取出来的虚表。
-- 视图管理
-- 1.创建视图
create VIEW qxtvb AS
select name from QXY.QXYTB;
-- 2.使用视图,和表一样的用法
select * from SYSDBA.QXTVB;