写在前面
会涉及到以下内容:
改密码,本机SQL developer(windows)连接,删表,Oracle 数据类型介绍,建表,插入(手动+循环)小规模模拟数据,基础简单的SQL。
copy 表 +(循环)插入大规模(百万级)数据,基础简单的 SQL again ,效率对比,数据导出成执行脚本 ,数据导入, 换成服务器-客户端请求形式, 基础简单的SQL again, 效率对比 again ,
1 Oracle用户名即将失效,或者已经失效。
oracle 口令一般默认有效期是180天,过期失效。
我们可以将过期时间设为无限,但出于安全不建议这样做。
我们可以在即将失效,或者已经失效的时候,登录 system 用户,执行更改密码指令,xxx对应用户名,xxxx对应新密码:
#创建用户
create user profile identified by 123;
grant connect,resource,dba to profile;
grant create session, connect, resource to profile;
#改密码
alter user XXX identified by XXXX
2 Oracle SQL developer 登录
前提:安装的时候基本上是默认设置,而且是在本机安装的。
下图展示了一个登录 c##profile 用户需要填写的信息
端口默认是1521,SID默认是 orcl
3 删掉一个表
删掉所有数据
truncate table COMMENT_DETAIL;
删掉数据和这个表
drop table COMMENT_DETAIL;
drop table USER_ORDER_HIS;
drop table USER_ORDER;
drop table USER_BASKET;
drop table PRE_ORDER;
drop table DEMO_USER_DETAIL;
drop table DEMO_RESOURCE_DETAIL;
drop table DEMO_RESOURCE;
drop table DEMO_USER;
4 新建一些表
这里我会使用到如下类型:
char ;varchar2 ;number; float; date;
至于blob 和 clob ,我那个 shop 的例子有已经充分展示了 小数据量下 Java + Oracle 应该怎么用,这里就不试了。
oracle 6 大数据类型 (参考 https://blog.csdn.net/wuya814070935/article/details/73163604)
字符串类型
- char : CHAR类型,定长字符串,会用空格填充来达到其最大长度。非NULL的CHAR(12)总是包含12字节信息。CHAR字段最多可以存储2,000字节的信息。如果创建表时,不指定CHAR长度,则默认为1。
- nchar : 这是一个包含UNICODE格式数据的定长字符串。NCHAR字段最多可以存储2,000字节的信息。它的最大长度取决于国家字符集。
- varchar2 :变长字符串,与CHAR类型不同,它不会使用空格填充至最大长度(有var前缀的,表示是实际存储空间是变长的,而char 是定长的)。 VARCHAR2最多可以存储4,000字节的信息。
- nvarchar2 :这是一个包含UNICODE格式数据的变长字符串。 NVARCHAR2最多可以存储4,000字节的信息。
数字类型
- number: number(P,S), 需要1~22字节(BYTE)不等的存储空间 ,P表示有效数字的位数,最多不能超过38个有效数字。S(Scale)为正数时,表示从小数点到最低有效数字的位数,它为负数时,S表示从最大有效数字到小数点的位数
- integer : 是number的子类型, 等同于NUMBER(38,0),用来存储整数。若插入、更新的数值有小数,则会被四舍五入。
- binary_float : 是 32 位、 单精度浮点数字数据类型。
- binary_double: 是为 64 位,双精度浮点数字数据类型。
- float :Float(n), 也是number的子类,,数 n 指示位的二进制精度,,n 乘以 0.30103成为十进制,算上整数位一共保留 n*0.3 位 ,比如333 保留两位会变成 330, 3.333会变成 3.3
日期类型
- date : 为每个日期值,Oracle 存储以下信息: 世纪、 年、 月、 日期、 小时、 分钟和秒。一般占用7个字节的存储空间
- timestamp: 这是一个7字节或12字节的定宽日期/时间数据类型。它与DATE数据类型不同,因为TIMESTAMP可以包含小数秒,带小数秒的TIMESTAMP在小数点右边最多可以保留9位
- TIMESTAMP WITH TIME ZONE : 略
- TIMESTAMP WITH LOCAL TIME ZONE: 略
- INTERVAL YEAR TO MOTH: 略
- INTERVAL DAY TO SECOND: 略
LOB类型
内置的LOB数据类型包括 BLOB、CLOB、NCLOB、BFILE(外部存储)的大型化和非结构化数据,如文本、图像、视屏、空间数据存储。
- blob : 它存储非结构化的二进制数据大对象,它可以被认为是没有字符集语义的比特流,一般是图像、声音、视频等文件。BLOB对象最多存储(4 gigabytes-1) * (database block size)的二进制数据。
- clob: 它存储单字节和多字节字符数据。支持固定宽度和可变宽度的字符集。CLOB对象可以存储最多 (4 gigabytes-1) * (database block size) 大小的字符
- nclob: 它存储UNICODE类型的数据
- bfile: 二进制文件,存储在数据库外的系统文件,只读的,数据库会将该文件当二进制文件处理
LONG RAW & RAW 类型
- long :它存储变长字符串,最多达2G的字符数据(2GB是指2千兆字节, 而不是2千兆字符),与VARCHAR2 或CHAR 类型一样,存储在LONG 类型中的文本要进行字符集转换。ORACLE建议开发中使用CLOB替代LONG类型。支持LONG 列