DM SQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
-- disql 连接
disql SYSDBA/SYSDBA@192.168.0.107:5236 -- 连接数据库。格式:disql 用户名/密码@ip:端口


-- 重要: 达梦 只能使用单引号
-- 达梦数据库管理工具无论是 命令行工具disql,还是可视化管理工具 默认不会自动提交,需要手动提交commit操作 或者点击 对号。
commit;
-- 或者临时修改:
-- SET AUTO[COMMIT] <ON|OFF>
-- ON:表示打开自动提交,所有执行的 SQL 语句的事务将自动进行提交。
-- OFF:表示关闭自动提交,所有执行的 SQL 语句的事务将由用户显式提交,为默认设置


-- 角色相关
-- 查看所有角色
select * from dba_roles;
-- 查看用户信息,USERNAME 代表的就是用户名字
SELECT USERNAME,* FROM DBA_USERS;
--查看系统中所有用户对应的角色
select * from dab_role_privs;
-- 创建用户dm,设置密码dameng123
create user <用户名> identified by <密码> limit connect_time 3 DEFAULT TABLESPACE 表空间名称;
-- 对用户授权
grant public,resource,dba to dm;
-- 查看当前用户
select username from user_users;
select user();
-- 查询用户状态
select username,user_id,account_status from dba_users;
-- 切换用户
conn mkcks_test



-- 数据库相关
select name from v$database; -- 查询有哪些数据库



-- 查看表空间信息
select tablespace_name,* from dba_tablespaces;
-- 查询有表空间 (数据库)的状态、存储数据文件路径 信息
select tablespace_name,file_name,status from dba_data_files order by 1;
-- 创建表空间
CREATE TABLESPACE BOOKSHOP DATAFILE 'BOOKSHOP.DBF' size 150;
-- 删除表空间
drop tablespace “VSPACE”;
-- 重命名
alter tablespace test rename to testNew;



-- 表模式
SELECT DISTINCT object_name FROM ALL_OBJECTS WHERE OBJECT_TYPE = 'SCH'; --查看所有的表模式
SELECT USERNAME FROM DBA_USERS;
SET SCHEMA DMHR; -- 指定模式
SELECT SYS_CONTEXT ('userenv', 'current_schema') FROM DUAL; -- 获取当前模式名
CREATE SCHEMA TEST AUTHORIZATION SYSDBA; -- 无法结束,需要在分号;换行之后再加一个 /,特此记录。



-- 所有表的查询
select * from user_tables; -- 当前用户的表
select * from ALL_TABLES; -- 所有用户的表
select * from DBA_TABLES; -- 包括系统表
select TABLE_NAME from ALL_TABLES where TABLESPACE_NAME='MAIN'; -- 按某个表空间查询 SYSTEM
SELECT * FROM DBA_TABLES WHERE OWNER='SYSSSO' -- 按某个模式查询

-- 表字段信息:Table_Name 表名,OWNER 用户名,应使用大写
select * from user_tab_columns;
select * from user_tab_columns where Table_Name='STU' AND OWNER='SYSDBA';
select * from all_tab_columns where Table_Name='DEPARTMENT';
select * from dba_tab_columns where Table_Name='STU' AND OWNER='SYSDBA';


select * from user_tab_comments -- 获取表注释
select * from user_col_comments -- 获取字段注释
select * from user_indexes; -- 获取表索引:
select * from user_constraints; -- 获取表主键
-- 查看表定义语句
select dbms_metadata.get_ddl('TABLE',<表名称>,<模式名称>);

DM SQL
https://flepeng.github.io/041-国产-DM-达梦数据库-21-命令-DM-SQL/
作者
Lepeng
发布于
2024年3月6日
许可协议