22_oracle
文章平均质量分 78
自找苦吃,自得其乐
有时候,我们缺乏的不是道理,而是吃苦的勇气
展开
-
oracle左右连接
左连接左边的表数据应该是全的,应该是主表,有链接应该是右边的表是全的是主表因此记为:左连接左全,右连接右全。看下面的实例create table student(id number,name varchar2(20));create table score(sid number,score number);insert into student values(1,'原创 2012-07-10 14:14:43 · 599 阅读 · 0 评论 -
oralce的to_date()和to_char()函数使用
创建表:testcreate table TEST( ID NUMBER, NAME VARCHAR2(20), BIRTHDAY DATE)insert into test values (1,'name',sysdate);这个sysdate的时间是:2012-9-19 11:58:08如果使用to_原创 2012-10-04 19:19:30 · 719 阅读 · 0 评论 -
java 备份、还原oracle数据库
package com.hdx.cs.services;import java.io.BufferedReader;import java.io.File;import java.io.IOException;import java.io.InputStreamReader; public class OracleBackUp{ public static void main(String[] a...原创 2012-11-01 14:10:11 · 1404 阅读 · 0 评论 -
ORA-12516 解决方法
oracle服务器上某个数据库出现' ORA-12516: TNS: 监听程序找不到符合协议堆栈要求的可用处理程'错误,要解决该问题首先查看一下数据库现有的进程数,是否已经达到参数processes的大小。 a.select count(*) from v$process; 取得数据库目前的进程数。 b.select value fr转载 2012-11-02 16:50:19 · 1140 阅读 · 0 评论 -
查看oracle连接
怎样查看oracle当前的连接数呢?只需要用下面的SQL语句查询一下就可以了。 select * from v$session where username is not null select username,count(username) from v$session where username is not null group by username #查看不同用户的连接数转载 2012-11-05 11:14:26 · 461 阅读 · 0 评论 -
oracle插数出错处理
创建存放数据表:create table MESSAGE_CODE( v_name varchar2(5))创建存放错误信息表:create table MESSAGE_E( ERR_TIME DATE, ERRM_MESSAGE VARCHAR2(300))创建存储过程:create or replace procedure pro_原创 2012-11-26 14:20:54 · 463 阅读 · 0 评论 -
oralce返回结果集cursor
1.通过包来进行定义,然后在包体中返回查询结果create or replace package PKG_QUERY is TYPE query_result IS REF CURSOR; PROCEDURE query_day(v_mac_addr varchar2,v_date varchar2,r OUT query_result); end PKG_QUERY;2原创 2012-11-27 10:52:50 · 850 阅读 · 0 评论 -
oracle分区表创建
oracle创建分区表:1、准备工作创建相应的表空间,使各分区放于不同的表空间上:SQL> conn / as sysdba已连接。SQL> create tablespace test01 datafile 'D:xtdbtest01.dbf' size 50m;表空间已创建。SQL> create tablespace test02 datafile 'D:xtdb转载 2012-11-26 16:54:51 · 1038 阅读 · 0 评论 -
java调用oracle存储过程动态生成表
1.给用户授予权限即便是用户有了connect,resource权限了你还是要给他授予权限的,否则在java调用时候会提示你权限不够。grant create any table to userxxx;2.创建存储过程CREATE OR REPLACE PROCEDURE createAnyTable(tableName_in IN VARCHAR2) AS SQL_in原创 2012-11-12 15:44:18 · 1093 阅读 · 0 评论 -
oralce修改已有的表为分区表
1.利用原有表创建表——>对此新表创建分区,把原有表的数据都拷贝到新表当中,修改原来表的名称为其他名称,把新创建的表的名称改为原来表名称。create table MESSAGE( ID NUMBER, PK_ID NUMBER, CONTENT VARCHAR2(50))insert into message values(99,99,'m99')转载 2012-11-26 18:03:06 · 860 阅读 · 0 评论 -
oralce em访问的地址
http://192.168.1.104:1158/em原创 2012-10-03 00:36:18 · 662 阅读 · 0 评论 -
ORA-20000: ORU-10028: line length overflow, limit of 255 chars per line
当用cmd窗口执行procedure的时候,有时候会出现屏幕没有输出或者屏幕输出时溢出的情况,解决方法如下set serveroutput on: 1. 在屏幕显示输出内容SQL> conn / as sysdba 已连接。SQL> begin2 dbms_output.put_line('hello');3 end;4 /PL/SQL 过程已成功完成。/转载 2012-08-02 09:29:46 · 2217 阅读 · 0 评论 -
oracle远程连接并导入数据
远程连接数据库:使用cmd操作sqlplus /nolog这句话的意思就是开启sqlplus软件,但是不登陆SQL> conn test/test@//192.168.1.123/orcl这句话意思是登陆在ip为192.168.1.123上的orcl数据库实例Connected.说明登录成功SQL>@D:\test.sql把D:\test.sql文件导入到192.1原创 2012-07-11 11:17:08 · 578 阅读 · 0 评论 -
oracle启动问题
正常情况下您的oracle服务是可以自己启动的,如果您的oracle不知道因为什么突然之间不可以启动了,你可以考虑以下情况。1.你的电脑IP地址发生了改变,比如你的电脑ip地址是自动分配的,因为oracle的启动绑定的是自己的IP地址,所以如果你的IP地址发生了变化,那么你的数据库肯定是无法启动的。解决办法:打开实例的安装路径C:\oracle\product\10.2.0原创 2012-06-30 21:53:42 · 462 阅读 · 0 评论 -
oracle处理重复插入数据
create table t(id number,name varchar2(20))alter table T add constraint PK primary key (ID)declarei number;n varchar2(20);begini:=1;n:='test';insert into t values(i,n);原创 2012-07-03 13:50:17 · 1784 阅读 · 0 评论 -
oracle的转义字符
oracle的转义字符是什么?是 'begindbms_output.put_line('(''');end;输出结果:('理解:在分析的时候我们首先要找出来最外面的那一对’‘,剩下的就是转义字符的作用了。比如'('''字符,最外面的是一对,表示里面所引起来的是字符串,而里面的’‘表示的是’,因为‘是转义字符所以要获取这样的字符就需要加上一个’来对‘原创 2012-07-15 19:58:23 · 1603 阅读 · 0 评论 -
oracle存储过程和函数的调用
--创建存储过程create or replace procedure pro_add(num1 number,num2 number,r out number)asbeginr:=num1+num2;end;create or replace procedure pro_minus(num1 number,num2 number,r out number)as原创 2012-07-15 15:22:24 · 707 阅读 · 0 评论 -
oracle job
当你只是创建了一个job而没有运行它的时候,它的状态是sys.dbms_job.change()的状态begin sys.dbms_job.change(job => 86, what => 'insert_sensor_real;', next_date => to_date('17-07-20原创 2012-07-17 14:18:21 · 423 阅读 · 0 评论 -
oracle监听无法启动
1.如果数据库的监听没有启动,首先是看看数据库有没有启动。查看数据库启动状态sqlplus /nologconn /as sysdbaselect * from v$instance查看它的status如果是active就说明是启动的状态2.启动监听先停止后启动lsnrctl> stoplsnrctl> start--查看当前的监听的状态lsn原创 2012-07-18 13:57:13 · 640 阅读 · 0 评论 -
oracle的游标控制问题
create table test(sid number,sname varchar2(20))insert into test values(1,'jack');insert into test values(2,'tom');declarecur1 sys_refcursor;cur2 sys_refcursor;n varchar2(20);原创 2012-08-03 14:38:06 · 542 阅读 · 0 评论 -
oracle密码文件使用
作者:左边【赛迪网-IT技术报道】Oracle关系数据库系统以其卓越的性能获得了广泛的应用,而保证数据库安全性是数据库管理工作的重要内容。本文在总结Oracle数据库安全管理工作的基础上,对Oracle数据库系统密码文件的创建、使用和维护作了详细的介绍,供大家参考。关键词:Oracle数据库密码文件在Oracle数据库系统中,用户如果要以特权用户身份(INTERNAL/SY原创 2012-07-19 13:32:46 · 723 阅读 · 0 评论 -
oracle存储过程返回值
oracle的存储过程只要返回的值是指定的类型就行了有的时候我们会看到这种写法的存储过程create or replace function func_add(num1 in number,num2 in number)return number is r number(3);num3 number(3);beginnum3:=num1+num2;r:=num3;r原创 2012-07-31 14:04:18 · 17859 阅读 · 3 评论 -
java向存储过程传递集合类型的变量
Oracle中把Array类型作为参数传入存储过程并用Java对其进行调用的示例是本文我们主要要介绍的内容,接下来我们就开始介绍这一过程. 使用Oracle Database 11g Enterprise Edition Release 11.2.0.1.0. 步骤: 1. 创建自定义的类型.由于Oracle没有提供现成的array类型,这里用table类型来模拟. CREATE OR R...转载 2012-11-15 13:48:49 · 2075 阅读 · 1 评论 -
oracle一维和多维数组
因为在PL/SQL中并没有数组,这是我查资料找的范例和自己写的范例来解释如何在PL/SQL中使用数组。也许很多人已知道,不过就是让不知道的朋友们了解一下吧。 ---------------------- 单维数组 ------------------------ DECLARE TYPE emp_ssn_array IS TABLE OF NUMBE转载 2012-11-15 13:56:31 · 3067 阅读 · 0 评论 -
如何写sql语句
也许你对数据库的语法很清楚了,但是给你一个数据库的查询问题你却写不出来,或者要很长时间才能写出来,这里面是有一些技巧的总的来说就是下面的几句话:记录值值指定的是where条件列值指定的是group条件统计值指定的是having条件排序指定的是order by条件而他们在查询语句中出现的先后顺序也是像上面那样的顺序示例:--1.列出emp表中各部门的部门号,原创 2013-02-21 16:23:17 · 923 阅读 · 0 评论 -
sql 面试题
数学比语文高平均分大于60学生表:studentid stuName1 s12 s23 s3课程表:courseid couName1 chinese2 math3 english成绩表:socreid stuid couid score1 1 1 502 1 2原创 2014-03-15 13:25:20 · 611 阅读 · 0 评论 -
mysql 面试题
1.题目:表1:原创 2014-05-06 18:23:16 · 857 阅读 · 0 评论 -
pl/sql输出正三角、倒三角、平行四边形
--倒三角declarestr varchar(50);beginstr :=''; for i in reverse 1..5 loop for k in 1..5-i loop str:=str||' '; end loop; for j in 1..i loop str:=str||'* '; end loop; dbms_output.pu原创 2013-02-21 15:15:13 · 3205 阅读 · 0 评论 -
oracle动态创建job
CREATE OR REPLACE PROCEDURE createAnyJob AS SQL_in VARCHAR2(5000); tableName_in varchar2(200); job number;BEGIN--1.构造动态创建job的字符串--构造的过程中需要定一个一个number参数用来接收--sys.dbms_job.sub原创 2013-01-30 17:04:22 · 1323 阅读 · 0 评论 -
存储过程查询一张表中记录是否连续、重复并且取出对应的数据
创建主表:MESSAGE1create table MESSAGE1( ID NUMBER not null, RECEIVE_TIME DATE, PK_ID NUMBER, CONTENT VARCHAR2(50))插入测试数据:insert into MESSAGE1 (ID, RECEIVE_TIME,原创 2012-11-15 11:08:56 · 1118 阅读 · 0 评论 -
oracle 把一张表的数据放入另一张表
insert into temp_message(id,pk_id,recevetime,speed,flow,occupy,timelength) select m.id,m.pk_id,m.recevetime,m.speed,m.flow,m.occupy,m.timelength from message m where id =1;原创 2012-11-15 17:12:03 · 1092 阅读 · 0 评论 -
oracle闪回技术
1、闪回数据库到之前某时间点(在安装时需要开放闪回功能)不支持表空间删除select name from v$database;--看是否打开闪回功能select flashback_on,name from v$database;select name from v$bgprocess where paddr打开闪回功能SQL> shutdown im转载 2012-12-03 17:10:40 · 442 阅读 · 0 评论 -
java调用oracle函数存储过程
package com.dada.test;import java.sql.CallableStatement;import java.sql.Connection;import java.sql.ResultSet;public class Service {//测试调用oracle的函数public int fun_add() {System.o原创 2012-07-17 22:18:47 · 582 阅读 · 0 评论 -
java.sql.SQLException: ORA-01426: numeric overflow
java.sql.SQLException: ORA-01426: numeric overflow 这种问题除了网上通常所说的是它们的for循环出错了之外还有一种可能是你根本没有使用到for循环也同样出现了错误,这是因为oracle版本不一样导致的,我就是这样的受害者,把oracle10.2的用户对象导入到了oracle10中之后就出现了上述的问题。原创 2012-12-06 16:13:57 · 6595 阅读 · 1 评论 -
Oracle利用Sequence和触发器Trigger实现Columns的Default自动编号(标识)
Create SEQUENCE SEQUENCE名称 MINVALUE 1 MAXVALUE 1.0E28 Start With 1 INCREMENT By 1 CACHE 20; Create or Replace Trigger 触发器名 Before Insert On 表 For E转载 2012-12-10 13:42:57 · 592 阅读 · 0 评论 -
java通过存储过程操作oracle表
存储过程: create table LOG( ID NUMBER, TIME_INPUT DATE, TIME_OCCUR DATE, TITLE VARCHAR2(200), CONTENT VARCHAR2(4000), RECORDER VARCHAR2(50))创建sequence-- Cre原创 2012-12-28 18:27:20 · 780 阅读 · 0 评论 -
Class.forName()使用详解
首先要搞清楚这句话的作用是什么。这句话的作用是去加载org.git.mm.mysql.Driver这个类,加载类有两种方式既Class.forName(classname)和ClassLoader.getSystemClassLoader().loadClass("")用哪个都可以,不过这个方法的一个好处在于它不是写死的而是根据传入的字符串动态进行变化的,因此这个字符串也同样可以写进配置文件里面,...原创 2012-04-23 17:34:32 · 689 阅读 · 0 评论 -
删除oracle数据库
转载 2013-01-24 16:52:37 · 393 阅读 · 0 评论 -
启动数据库
新建了两个实例库ORACL和TEST,默认启动的是最后一个实例库TEST,在连接第一个实例ORACLE, 会报:ORA-12154: TNS: 无法解析指定的连接标识符,如何设置两个实例库都启动呢? 实质上就是把ORCL实例库也启动起来。实现同时启动两个实例库的方法如下:1、首先重新配置第一个实例的监听2、接着启动第一个实例库ORCLC:/> set ORACLE_原创 2012-06-27 11:17:52 · 525 阅读 · 0 评论 -
java mysql保存和读取文件
保存图片import java.io.File;import java.io.FileInputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.SQLException;publi原创 2011-12-11 23:36:30 · 3312 阅读 · 0 评论