按使用场景分组,点击"复制"按钮一键复制命令
sqlplus user/password@<service_name>
sqlplus sys/password AS SYSDBA
SELECT USER FROM DUAL;
SELECT * FROM v$version;
disql user/password@<server>
CREATE USER <user> IDENTIFIED BY "密码";
ALTER USER <user> IDENTIFIED BY "新密码";
GRANT CONNECT, RESOURCE TO <user>;
GRANT SELECT, INSERT, UPDATE ON <schema>.<table> TO <user>;
GRANT ALL PRIVILEGES ON <schema>.<table> TO <user>;
DROP USER <user> CASCADE;
CREATE TABLESPACE <tbs> DATAFILE '/u01/app/oracle/oradata/<db>/<tbs>.dbf' SIZE 10G AUTOEXTEND ON;
SELECT tablespace_name, status FROM dba_tablespaces;
SELECT tablespace_name, ROUND(SUM(bytes)/1024/1024/1024,2) AS size_gb FROM dba_data_files GROUP BY tablespace_name;
CREATE TABLE <table> (id NUMBER(19) PRIMARY KEY, name VARCHAR2(64) NOT NULL, created DATE DEFAULT SYSDATE);
DESC <table>;
SELECT table_name FROM user_tables ORDER BY table_name;
SELECT DBMS_METADATA.GET_DDL('TABLE', '<table>') FROM DUAL;
CREATE SEQUENCE seq_<table> START WITH 1 INCREMENT BY 1;
SELECT seq_<table>.NEXTVAL FROM DUAL;
SELECT seq_<table>.CURRVAL FROM DUAL;
SELECT * FROM (SELECT a.*, ROWNUM rn FROM (<sql> ) a WHERE ROWNUM <= <offset+size>) WHERE rn > <offset>;
SELECT * FROM <table> OFFSET <offset> ROWS FETCH NEXT <size> ROWS ONLY;
SELECT TO_DATE('2026-01-01', 'YYYY-MM-DD') FROM DUAL;
SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') FROM DUAL;
CREATE INDEX idx_<col> ON <table> (<col>);
EXPLAIN PLAN FOR <sql>;
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
SELECT sid, type, id1 FROM v$lock WHERE block = 1;
SELECT a.sid, a.serial#, a.username, a.status FROM v$session a JOIN v$lock l ON a.sid = l.sid WHERE l.block = 1;
SELECT * FROM <table> WHERE <col> = <val> FOR UPDATE;
SELECT * FROM <table> AS OF TIMESTAMP (SYSTIMESTAMP - INTERVAL '10' MINUTE) WHERE <cond>;
FLASHBACK TABLE <table> TO TIMESTAMP (SYSTIMESTAMP - INTERVAL '10' MINUTE);
DM8 兼容 Oracle 大部分语法(表空间 / 用户 / 序列 / 包),以上命令可直接复用;差异:VARCHAR2 默认按字节(Oracle 11g 同),部分高级特性(闪回、DBMS_METADATA)需在 DM 手册核对