通过JDBC,我们可以向oracle插入大对象,如图片,音频,长文本等,其插入方法有很多,这里演示一下通过流更新更新的形式插入CLOB大对象。
这是一个存储文本的例子,解释我会在程序中以注释的形式写出
/**
* 将生成的表样存储到数据库
*
* @param htmlParam
* @return
*/
public static boolean addToDB(HtmlParam htmlParam) {
//此处定义数据库操作时使用的对象
Connection conn = null;
//与查询操作在此函数中多次使用
PreparedStatement stmt = null;
ResultSet rs = null;
//ORACLE中的大对象
CLOB clob = null;
//写入大对象所需的流
Writer write = null;
try {
// jdbc连接数据库参数
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@192.168.1.210:1521:moe210";
conn = DriverManager.getConnection(url, "tjdemo", "tjdemo");
// 先插入相应的数据
......
通过JDBC,我们可以向oracle插入大对象,如图片,音频,长文本等,其插入方法有很多,这里演示一下通过流更新更新的形式插入CLOB大对象。
这是一个存储文本的例子,解释我会在程序中以注释的形式写出
/**
* 将生成的表样存储到数据库
*
* @param htmlParam
* @return
*/
public static boolean addToDB(HtmlParam htmlParam) {
//此处定义数据库操作时使用的对象
Connection conn = null;
//与查询操作在此函数中多次使用
PreparedStatement stmt = null;
ResultSet rs = null;
//ORACLE中的大对象
CLOB clob = null;
//写入大对象所需的流
Writer write = null;
try {
// jdbc连接数据库参数
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@192.168.1.210:1521:moe210";
conn = DriverManager.getConnection(url, "tjdemo", "tjdemo");
// 先插入相应的数据
......
1.在ORACLE中用select * from all_users显示所有的用户,而在MYSQL中显示所有数据库的命令是show
databases。对于我的理解,ORACLE项目来说一个项目就应该有一个用户和其对应的表空间,而MYSQL项目中也应该有个用户和一个库。在
ORACLE(db2也一样)中表空间是文件系统中的物理容器的逻辑表示,视图、触发器和存储过程也可以保存在表空间中。而MYSQL并没有使用表空间来
进行管理。
2.查询当前所有的表。ORACLE: select * from tab,MYSQL:show tables。
3.改变连接用户(库)。ORACLE:conn 用户名/密码@主机字符串,MYSQL:use 库名。
4.显示当前连接用户(库)。ORACLE:show user,MYSQL:connect。
5.执行外部脚本命令。ORACLE:@a.sql,MYSQL:source a.sql。
& ......
1.在ORACLE中用select * from all_users显示所有的用户,而在MYSQL中显示所有数据库的命令是show
databases。对于我的理解,ORACLE项目来说一个项目就应该有一个用户和其对应的表空间,而MYSQL项目中也应该有个用户和一个库。在
ORACLE(db2也一样)中表空间是文件系统中的物理容器的逻辑表示,视图、触发器和存储过程也可以保存在表空间中。而MYSQL并没有使用表空间来
进行管理。
2.查询当前所有的表。ORACLE: select * from tab,MYSQL:show tables。
3.改变连接用户(库)。ORACLE:conn 用户名/密码@主机字符串,MYSQL:use 库名。
4.显示当前连接用户(库)。ORACLE:show user,MYSQL:connect。
5.执行外部脚本命令。ORACLE:@a.sql,MYSQL:source a.sql。
& ......
ORACLE bin目录下各文件的意义及使用方法
$ORACLE_HOME/bin下的utilities解释
Binary First Available Description
--------- ----------------
------------------------------------------
adapters (7.3.4) Installed Network Adapters
agentctl 9.0.1 Agent Control Utility
agtctl 8.1.5 &n ......
1.打开cmd,输入sqlplus,回车
2.输入用户名:system/manager@orcl as sysdba,回车
3.create user muzai identified by muzai; //创建muzai用户,密码为muzai
4.grant dba to muzai; //把dba的权限赋给muzai这个用户 ......
需要权限:
grant references on test_sys to user_1;
or
grant all on test_sys to user_1;
测试:
sys用户下:
SQL> create user user_1 identified by user_1;
用户已创建。
SQL> grant dba to user_1;
授权成功。
SQL> create table test_sys(pk_col varchar2(5))
2 /
表已创建。
SQL> alter table test_sys modify pk_col primary key;
表已更改。
user_1用户下:
SQL> conn user_1/user_1;
已连接。
SQL> create table test_fk(fk_col varchar2(5),constraint foreign
2 key references sys.test_sys(pk_col));
表已创建。 ......
事故原因:
1.由于误操作用hp unix 命令 rm -f datafilename 删除表空间的数据文件
2.alter tablespace tablespacenaem drop datafile datafile ;
3.drop tablespace tablespacename including content and datafiles;
上述两个步骤我用了近三个小时都没有执行完,最后导致数据库宕机。下面把我当时启动数据的后台页面展现给大家,为以后出现同样的问题,提供一个参照的作用.
SP2-0734: unknown command beginning "sqlplus /n..." - rest of line ignored.
SQL> conn sys/passwd as sysdba;
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 3.2212E+10 bytes
Fixed Size 2115136 bytes
Variable Size 3204450752 bytes
Database Buffers 2.8991E+10 bytes
Redo Buffers 14659 ......