扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
安装一个PLSQL
创新互联公司科技有限公司专业互联网基础服务商,为您提供成都电信服务器托管,高防物理服务器租用,成都IDC机房托管,成都主机托管等互联网服务。
1.输入你访问数据库的用户名和密码
2.在工具菜单下点击export
3.选择导出的路径和要导出的表
具体的操作见下图
oracle中执行了insert、update、delete这三个DML语句后,结果在未提交前实际上是保存在undo空间内,只有提交之后,才会真正写入到表中。所以会发生你的问题。
提交语句:commit
另外,在未做提交前,其他人是无法select到你处理的数据的,看到的是未处理前的数据。
还有一点要说明,当你执行了update、delete时,语句所影响的数据会被oracle自动锁定,其他人只能查,而不能update或delete,如果执行update或delete,那么就会产生数据库锁。而锁一旦产生,对系统的影响会很大,因此应尽快提交。
sqlplus 中直接敲入存储过程代码(create or replace procedure ...), / 结束,\x0d\x0a如果代码没有错误,该过程就被保存到数据库中。 \x0d\x0a可以用 exec 过程名 运行。\x0d\x0a\x0d\x0a如果是plsql developer之类的工具,那更简单,编辑完存储过程后,有运行按钮,点击即可。
oracle
存储过程的基本语法
1.基本结构
CREATE
OR
REPLACE
PROCEDURE
存储过程名字
(
参数1
IN
NUMBER,
参数2
IN
NUMBER
)
IS
变量1
INTEGER
:=0;
变量2
DATE;
BEGIN
END
存储过程名字
2.SELECT
INTO
STATEMENT
将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条
记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND)
例子:
BEGIN
SELECT
col1,col2
into
变量1,变量2
FROM
typestruct
where
xxx;
EXCEPTION
WHEN
NO_DATA_FOUND
THEN
xxxx;
END;
...
3.IF
判断
IF
V_TEST=1
THEN
BEGIN
do
something
END;
END
IF;
4.while
循环
WHILE
V_TEST=1
LOOP
BEGIN
XXXX
END;
END
LOOP;
5.变量赋值
V_TEST
:=
123;
6.用for
in
使用cursor
...
IS
CURSOR
cur
IS
SELECT
*
FROM
xxx;
BEGIN
FOR
cur_result
in
cur
LOOP
BEGIN
V_SUM
:=cur_result.列名1+cur_result.列名2
END;
END
LOOP;
END;
7.带参数的cursor
CURSOR
C_USER(C_ID
NUMBER)
IS
SELECT
NAME
FROM
USER
WHERE
TYPEID=C_ID;
OPEN
C_USER(变量值);
LOOP
FETCH
C_USER
INTO
V_NAME;
EXIT
FETCH
C_USER%NOTFOUND;
do
something
END
LOOP;
CLOSE
C_USER;
8.用pl/sql
developer
debug
连接数据库后建立一个Test
WINDOW
在窗口输入调用SP的代码,F9开始debug,CTRL+N单步调试
服务器无法开机保存oracle数据的方法:
1、如果SQLdevelop可以连接数据库,从新开一个账号,分配表空间,进行数据库复制,这是最简单的方法。
2、如不能链接数据库,可使用PLSQL进行远程登录oracle进行数据库备份。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流