oracle
文章平均质量分 75
EverSpring007
计算机程序员
展开
-
ORACLE 10g以后的expdp/impdp
需要把服务器上的数据库导到本地做测试,其中有一个张数据量过大,不用导出。目前用的exp/imp无法实现某些表不用导入导出的功能,10g以后可以采用expdp/impdp。服务器 user:bpm;pwd:bpm;SID:bpm,表空间:XCC,不导sk表,操作如下:1、sqlplus /nolog2、conn bpm/bpm3、创建逻辑文件夹:create or replac...原创 2013-02-18 16:03:32 · 187 阅读 · 0 评论 -
存储过程中的日期使用报“ORA-01861”
在存储过程begin中用查询用到to_date(),一直报“ORA-01861: 文字与格式字符串不匹配”。我的存储create or replace procedure p_bill_statics(start_date in varchar2,end_date in varchar2) is --1 cursor cur is select distinct(b...原创 2017-08-07 16:03:22 · 716 阅读 · 0 评论 -
存储过程中调用同义词报“表和视图不存在”
创建了同义词,直接查询都是正常的,但存储过程中一调用就报“”表和视图不存在“”,因为"在存储过程中访问公共同义词,必须直接对用户授权,而不能通过角色授权"。见http://blog.csdn.net/linminqin/article/details/6671785。比如我test用户的存储过程中要调用ca的表,在test创建ca的同义词后需要grant all on 同义词表名 to...原创 2016-06-30 17:43:57 · 595 阅读 · 0 评论 -
oracle 只允许部分表给其他用户
在提供数据库接口时,我们经常碰到只允许其他用户操作某几张指定表,并只能查询不能增、删、改。表所在用户alarm,新增接口用户alarm11、使用system用户连接数据库,并创建新用户conn /as sydba;create user alarm1 identified by alarm1 default tablespace XCC;2、赋予新用户访问数据库的权限...原创 2014-02-14 16:21:13 · 295 阅读 · 0 评论 -
通过LogMiner实现数据同步迁移
1、手动创建LogMiner文件夹,E:\ora_logminer\utl2、以DBA用户登陆,配置LogMiner文件夹conn /as sysdba;CREATE DIRECTORY utlfile AS 'E:\ora_logminer\utl';alter system set utl_file_dir='E:\ora_logminer\utl' scope=spfil...原创 2014-01-23 16:27:16 · 811 阅读 · 0 评论 -
oracle在已有重复数据的表中某列加上唯一索引
有两种方法:方法1、alter table sk_data add (unique(longtime) deferrable enable novalidate)sk_data为表名,longtime为需要加上唯一索引的列。注意加上了deferrable方法2、create index u_longtime on sk_data(longtime) 先在需要增加唯一索引的列上...原创 2013-08-08 16:12:12 · 1264 阅读 · 0 评论 -
导入不同表空间的数据
以前在导入表空间的时候,为了保证表导入完成,需要先创建一个与数据来源相同的表空间名,这样造成很麻烦。在oracle 10g后新加了impdp和expdp两种数据泵,可以实现不同表空间数据的导入。1、在源数据库需要导入的用户中创建directory,这个是必须有的。我的用户名和密码都是alarm SQL> conn alarm/alarm;SQL> create di...原创 2013-08-01 17:09:28 · 266 阅读 · 0 评论 -
ORA-12541: TNS: 无监听程序和监听程序当前无法识别连接描述符中请求的服务
今天安装Oracle 11.2后,发现连接不上,出现了以下几个问题。1、"conn /as sysdba"后报“已连接到空闲例程”,是因为tnsnames.ora中缺少制定监听。在tnsnames.ora中加入LISTENER_ORCL = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))2、加上后没有上面的错误,但又发现使用“con...原创 2013-12-25 16:03:00 · 554 阅读 · 0 评论 -
Linux bash中存储过程的调用
在bash中调用存储过程,需要模拟sqlplus输入,通过<<管道与EOF结尾标识处理。#!/bin/bashuser=aps2passwd=aps2sid=192.168.11.129/orcl#there is no space before last EOFfunction call_procedure(){value=`sqlplus -s...原创 2017-09-02 17:09:44 · 413 阅读 · 0 评论