Oracle结构理解
整个Oracle是一个大数据库
中间可创建不同的实例
实例中包括不同的表空间(即一个小数据库?),用户,用户可以管理表空间。
每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(DBF或者ORA)
(datafile)。一个数据文件只能属于一个表空间。
Oracle权限等级
sys; //系统管理员,拥有最高权限
system;//本地管理员,次高权限
scott; //普通用户,密码默认为tiger,默认未解锁
建立表空间
create tablespace NAME
datafile ‘c:\NAME.dbf’
size 100m
autoextend on
next 10m
——————
NAME为表空间名称
datafile 用于设置物理文件名称
size 用于设置表空间的初始大小
autoextend on 用于设置自动增长,如果存储量超过初始大小,则开始自动扩容
next 用于设置扩容的空间大小
为表空间创立管理的用户
create USERNAME为创建的用户名
identified by XXXXXXX 用于设置用户的密码
default tablesapce SPACENAME 用于指定默认表空间名称grant dba to USERNAME 赋予用户权限才可正常管理
常用数据类型
CHAR : 固定长度的字符类型,最多存储 2000 个字节
VARCHAR2 :可变长度的字符类型,最多存储 4000 个字节
NUMBER(5,2) : 数值类型 默认长度18位 这里类似MYSQL的DOUBLE类型
DATE:日期时间型,精确到秒
LONG : 大文本类型。最大可以存储 2 个 G
BLOB:存储图像、声音、视频等二进制数据,最多可以存 4 个 Gsysdate 可获取系统时间!
建表同MySQL
增删改查同MYSQL 但是不同的是一定要COMMIT
比较 truncat 与 delete 实现数据删除?
1. delete 删除的数据可以 rollback
2. delete 删除可能产生碎片,并且不释放空间
3. truncate 是先摧毁表结构,再重构表结构
OJDBC同MYSQL 除了
jdbc:oracle:thin:@IP地址:1521:orcl
驱动Class.forName(“oracle.jdbc.driver.OracleDriver”);
胖瘦连接区别之一
从使用上来说,oci必须在客户机上安装oracle客户端或才能连接,而thin就不需要,因此从使用上来讲thin还是更加方便,这也是thin比较常见的原因。
数据库备份 在CMD中操作
exp system / 密码 full=y 整库导出命令
exp system / 密码 file=文件名 full=y 如果想指定备份文件的名称,则添加 file 参数即可,命令如下imp system / 密码 t full=y 整库导入命令
imp system / 密码 full=y file=XXX.dmp 如果指定 file 参数,则按照 file 指定的备份文件进行恢复
按用户导出
exp system / 密码 owner=XXX file=XXX.dmp
按用户导入
imp system / 密码 file=XXX.dmp fromuser=XXX
按表导出
exp system / 密码 file=a.dmp tables=t_account,a_area