数据库 (Orecal)

540 阅读1分钟
//登录
sys/密码 as sysdba

//创建表空间
create tablespace 表空间名称 datafile ‘表空间路径.dbf’ size 200m autoextend on next 10m maxsize unlimited;
//创建用户名
create user 用户名 identified by 密码 default tablespace 表空间名;
//授权
grant connect, resource to 用户名;
grant dba to 用户名;

//表空间下线/上线
alter tablespace 表空间名称 offline;
alter tablespace 表空间名称 online;

**以下最好不要用**
//修改表空间名称
alter tablespace 旧表空间名称 rename to 新表空间名称;
//修改用户名
select user#,name from user$ where name='用户名';
//修改用户密码
alter user 用户名 identified by 新密码;
//查看用户列表
select username from dba_users

Oracle varchar2() 存储汉字 长度问题

  • varchar2最大是4000字节,那么就看你的oracle字符集:(select userenv('language') from dual;)
  • 如果字符集是16位编码的,ZHS16GBK,那么每个字符16位,2字节,所以可以容纳2000字符。
  • 如果是32位编码的字符集,那么只能存储 1000个字符。

例如:

  • varchar(50) 表示该字段类型为varchar2类型,长度为50,可以存单字节字符50个,如字母、数字等,可以存储双字节字符25个,如汉字。不同的是,若输入的不足,则以空格填充。
  • varchar2(50) 表示该字段类型为varchar2类型,长度为50,可以存单字节字符50个,如字母、数字等,可以存储双字节字符25个,如汉字。
  • nvarchar2(50)表示该字段类型为nvarchar2,长度为50,不论英文,数字,中文都能存50个。

SQL

保留两位小数
ROUND(a.MONEY_FILIALE*(1-a.TAXRATE/100),2)

最近用到的sql
distinct
ROUND
concat
row_number() over()
max()