1.常用函数
1.TO_CHAR —- 日期转换
1
|
SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS') FROM dual
|
转换日期时to_char函数的格式参数应该传递如’YYYY-MM-DD HH24:MI:SS’,不区分大小写,之前写的’yyyy-MM-dd HH:mm:ss’有问题: 没有指定24小时制,‘HH’应该为’HH24’,因为格式不区分大小写,所以’MM’和’mm’会认为是同样的代码,月份应使用’MM’,分采用’MI’.
2.SYS_GUID —- 生成UUID
1
2
|
select sys_guid() from dual; /*默认如 A8F662B86E7413FEE040970A437C6BD7*/
select lower(sys_guid()) from dual; -- 小写
|
默认是大写没有分隔符,使用lower()
函数可转换为小写
3.RAWTOHEX —- 将一个二进制构成的字符串转换为十六进制
1
|
select rawtohex(sys_guid()) from dual
|
可以应对sys_guid() 乱码的情况
2.修改过期密码
1.首先登录 sqlplus / as sysdba
2.修改密码
1
|
alter user xxx identified by "22@@xx!";
|
3.解锁用户
1
|
alter user xxx account unclock ;
|
3.常用SQL语句
1. INSERT INTO SELECT 语句
语句形式为INSERT INTO Table1(field1,field2..) SELECT value1,value2... FROM Table2
,这里需要注意的是字段需要一致.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
insert into TBL_ROLE_MENU(ID, ROLE_ID, MENU_ID, CREATE_TIME, UPDATE_TIME, DELETE_FLAG)
SELECT *
from (
select b.guid as ID,
(select ID
from TBL_ROLE
where CODE = 'ADMIN') as ROLE_ID,
t.ID as MENU_ID,
sysdate as CREATE_TIME,
sysdate as UPDATE_TIME,
(select 0 from dual) as DELETE_FLAG
from TBL_MENU t,
(select lower(sys_guid()) as guid
from dual) b
where t.DELETE_FLAG <> 1
and t.HIDDEN <> 1
);
|
4.表空间及用户相关操作
1.建立表空间
1
2
3
4
|
-- 格式:
create tablespace 表间名 datafile '数据文件名' size 表空间大小
-- 例:
create tablespace HEALTH datafile '/data/ora/health.dbf' size 2000M RESUSE AUTOEXTEND ON NEXT 100M MAXSIZE 5000M;;
|
2.创建表空间下的用户
1
2
3
4
|
-- 格式:
create user 用户名 identified by 密码 default tablespace 表空间表;
-- 例:
create user health identified by "123456" default tableplace HEALTH;
|
3.新用户授权
1
2
|
grant connect,resource to health; -- 表示把 connect,resource权限授予health用户
grant dba to health; -- 给health用户授予dba权限
|
4.删除表空间
1
2
3
4
|
-- 1.首先修改表空间的状态为offline
alter tablespace xxx offline;
-- 2.将表空间及物理文件一并删除
drop tablespace xxx including contents and datafiles;
|
5.删除用户 – 需要关闭当前用户的连接