-
在引入Oracle插入触发器的WHEN原因中,引用OLD的内容是什么?
所属栏目:[百科] 日期:2021-04-02 热度:97
在Oracle中编写行级触发器时,我知道您可以使用OLD和NEW伪记录来引用触发触发器的行的旧状态和新状态.我知道在INSERT触发器中OLD不包含任何数据,但我不确定这会如何影响该触发器的WHEN子句的评估.例如,如果我有以下触发器: CREATE OR REPLACE TRIGGER mung_r[详细]
-
oracle – 建立一对一关系
所属栏目:[百科] 日期:2021-04-02 热度:84
可以通过约束在Oracle中完全建模一对一关系吗?换句话说,PARENT实体总是完全具有子实体的n-CHILDREN,并且每个孩子只有一个父母. 将n视为数据库常量. 解决方法 即使多个会话正在进行更新,这样做也是非常容易的.如果你尝试使用触发器,你会陷入混乱,Oracle的声[详细]
-
oracle – PL / SQL:检索包中的过程和函数的名称
所属栏目:[百科] 日期:2021-04-02 热度:66
是否可以检索特定包中的所有过程和函数的名称?我知道他们可以从ALL_SOURCE视图中收集(闻起来像是hack-ish),但我更喜欢更规范的策略. 解决方法 DBA_PROCEDURES具有包中的公共方法 SELECT owner,object_name AS package_name,procedure_name AS method_name F[详细]
-
Oracle:存储过程的可变参数数量
所属栏目:[百科] 日期:2021-04-02 热度:90
我想使用存储过程将各种用户插入到Oracle数据库中.用户(表“用户”)具有姓名,姓氏和出生日期: CREATE TABLE "USER" ( "Name" VARCHAR2(50),"Surname" VARCHAR2(50),"Dt_Birth" DATE,) 创建用户的存储过程非常简单: CREATE PROCEDURE Insert_User(p_user,p_[详细]
-
使用.NET将数据加载到ORACLE数据库的最快方法是什么?
所属栏目:[百科] 日期:2021-04-02 热度:72
我目前有一个每日进程,使用调用sql_loader的 shell脚本将大量数据从TXT文件加载到ORACLE数据库.我想将它迁移到.NET服务,但不想依赖从我的服务执行sql_loader. 实现这一目标的最佳(最快)方法是什么? 解决方法 我假设你不喜欢SQLLoader,因为它的命令行界面,以[详细]
-
Oracle上的动态SQL与存储过程的性能
所属栏目:[百科] 日期:2021-04-02 热度:137
有很多关于SQL Server中缓存执行计划如何消除存储过程的大部分性能优势而不是动态sql的信息.但是,我还没有发现Oracle数据库是否也是如此.有没有人有关于Oracle中动态SQL处理信息的信息或指针?最好是实际的性能数字,而不是一般的“sp是好的”/“sp是坏的”讨[详细]
-
Oracle写入文件
所属栏目:[百科] 日期:2021-04-02 热度:173
我正在运行oracle并有一个查询从数据库中提取一些结果.我想把结果写成文本文件.我该怎么做呢? 我首选的方法是使用UTL_FILE.有人会举例说明如何做到这一点吗? 解决方法 如果您正在使用PL / SQL,那么您可以使用UTL_FILE包,与使用sql spool的不同之处在于文件[详细]
-
为什么Oracle会忽略“完美”指数?
所属栏目:[百科] 日期:2021-04-02 热度:190
我有这张桌子: create table demo ( key number(10) not null,type varchar2(3) not null,state varchar2(16) not null,... lots more columns ...) 而这个指数: create index demo_x04 on demo(key,type,state); 当我运行此查询时 select * from demo whe[详细]
-
SAS到Oracle ODBC – 将SAS表传入INTO数据库
所属栏目:[百科] 日期:2021-04-02 热度:132
任何人都可以建议将表从SAS库INTO传递到oracle数据库的语法? 下面的示例代码(虽然显然无法以这种方式引用与WORK库的连接) PROC SQL noprint;connect to ODBC as X (dsn='ALIAS' uid='USER1' pwd='passwd' quote_char='');exec (CREATE TABLE Test AS SELECT[详细]
-
在oracle中将字符串转换为整数
所属栏目:[百科] 日期:2021-04-02 热度:83
我试图将Oracle(版本8i)中的一列字符串解析为整数. 我通过Oracle.DataAccess库访问结果 我已经使用带掩码的TO_NUMBER将字符串转换为没有小数位的数字.问题是客户端代码中的值是以十进制而不是int的形式检索的. 解决方法 在ODP.NET中,NUMBER列总是以小数形式[详细]
-
PLSQL:在一个查询中获取一周中每一天的总和和一周的总和
所属栏目:[百科] 日期:2021-04-02 热度:188
比方说,我有一个表ClientClde,就像这样: ClientName,TradeDate,Quantity 我想在Oracle PLSQL中创建一个查询,它应该返回如下结果: (天数来自TradeDate列,Mon = Sum(数量)为Mon,Tue = sum(Quantity)为Tue ……等) ClientName Mon Tue Wed Thu Fri Sat Sun To[详细]
-
确定Oracle数据库实例
所属栏目:[百科] 日期:2021-04-02 热度:70
除了查询v_ $ database和v_ $instance表(或视图v $instance,v $database)之外还有其他方法可以从程序上检索(从PL / SQL)oracle数据库的数据库名称吗? 解决方法 dbms_standard.database_name[详细]
-
Oracle:更新语句没有等待/没有失败
所属栏目:[百科] 日期:2021-04-01 热度:60
我在多应用程序环境中有许多竞争更新语句.根据目前的设计,死锁频繁. 如有必要,可以跳过除一个更新之外的所有更新,并在下一个时间间隔更新. 我可以将NOWAIT应用于更新声明吗?当无法获得锁定时,我可以让我的声明无声地失败吗?我可以指定尝试获取锁定的时间吗[详细]
-
Oracle SQL – 帮助在Select语句中使用Case
所属栏目:[百科] 日期:2021-04-01 热度:146
CREATE TABLE student_totalexp2 nologging compress ASSELECT /*+parallel(a,4)*/ DISTINCT a.member_sk,CASE WHEN b.end_date IS NULL THEN SYSDATE - MIN(TO_DATE(b.start_date,'yyyymm')) ELSE (MAX(TO_DATE(b.end_date,'yyyymm')) - MIN(TO_DATE(b.star[详细]
-
如果你有Oracle 11g,PL / SQL是学习的语言吗?
所属栏目:[百科] 日期:2021-04-01 热度:198
PL / SQL是Oracle 11g的语言吗? Oracle还有其他一些语言吗?我不是指使用其他语言的前端应用程序,就像我直接在数据库中一样.我问,因为我知道SQL Server会让你使用各种.NET语言,并且不知道Oracle是否还有pl / sql以外的东西. 谢谢. 编辑:我只是想确保pl / s[详细]
-
如何将Oracle数据库中的UTF-8格式数据转换为文本文件
所属栏目:[百科] 日期:2021-04-01 热度:92
如何将UTF-8格式的数据从Oracle数据库转换为文本文件,所有UTF-8字符都正确输出,例如中文字符. 我试图从启用了UTF-8的Oracle数据库假脱机数据并尝试将相同的数据假脱机到txt或cvs.而不是我得到的汉字????. 我知道这个问题早先被问过,但没有给出答案,因此再次[详细]
-
Literal与字符串列上的Oracle SQL to_date的格式字符串不匹配
所属栏目:[百科] 日期:2021-04-01 热度:130
亲爱的来自Stack Overflow的SQL专家: 环境:Oracle 我试图理解为什么我不能对包含字符串的表列进行to_date选择.注意下面示例中带有名称值Value的tableZ包含一串字符串,其中一些是正确的格式,例如6/20/2010 00:00:00. tableZ | Value || __________________[详细]
-
在Oracle Package Body中使用Pragma
所属栏目:[百科] 日期:2021-04-01 热度:70
我想创建一个Oracle Package和两个函数:一个公共函数(function_public)和一个私有函数(function_private). public函数在sql语句中使用私有函数. 没有编译指示代码不编译(PLS-00231:函数’FUNCTION_PRIVATE’可能不在SQL中使用) CREATE OR REPLACE PACKAGE[详细]
-
知道Oracle中是否更新了记录?
所属栏目:[百科] 日期:2021-04-01 热度:196
是否有选项可以查看Oracle数据库中的现有表/记录是否已更新? 解决方法 从监视角度(不打算查找以前的更改),您有几个选项,包括但不限于触发器,流和默认值为sysdate的列.触发器允许您在记录更改(插入,更新,删除)时执行一些编程逻辑(直接存储在触发器或外部数据[详细]
-
database – Oracle – 将数据导入到具有不同名称的表中?
所属栏目:[百科] 日期:2021-04-01 热度:73
我有一个从Oracle表导出的大型(多GB)数据文件.我想将此数据导入另一个Oracle实例,但我希望表名与原始表不同.这可能吗?怎么样? 导入和导出系统都是Oracle 11g.该表包含BLOB列,如果这有任何区别. 谢谢! 更新: 这里的想法是更新表,同时将系统的停机时间保持[详细]
-
oracle里面的加密
所属栏目:[百科] 日期:2021-04-01 热度:171
在dot net中,我可以使用dll文件,以便我的代码可以安全地使用其他代码.但有没有办法让所有人都看不到我的一些程序和触发器的代码…… 解决方法 你可以 wrap procedure code让它变得不可读.您无法包装触发器代码,但您可以将触发器代码移动到存储过程中,以便触[详细]
-
如何卸载Oracle 10g?我没有看到任何卸载工具
所属栏目:[百科] 日期:2021-04-01 热度:76
我想卸载Oracle 10g(在 Windows 7上),但我没有看到任何卸载工具.我该如何卸载它? 解决方法 运行通用安装程序(你用它安装了oracle)并选择卸载.[详细]
-
在Oracle =gt;用于的符号
所属栏目:[百科] 日期:2021-04-01 热度:95
DECLAREprice_to_update NUMBER(6,2) := 20;updated_price NUMBER(6,2) := 0;BEGINdbms_output.put_line('price before ' || price_to_update);dbms_output.put_line('updated_price before ' || updated_price);changePrice (old_price = price_to_update,n[详细]
-
Oracle SQL触发器用于自动设置列值
所属栏目:[百科] 日期:2021-04-01 热度:193
我正在写一个Oracle触发器.此触发器应自动将列“productId”的值设置为刚刚插入的行的oid. 我写的触发器是: create or replace trigger MyProduct_id_trg after insert on MyProductbegin update MyProduct set productId = inserted.oid where oid = inser[详细]
-
oracle – 连接条件下的Rownum
所属栏目:[百科] 日期:2021-04-01 热度:132
最近我修复了一些错误:在连接条件下有rownum. 这样的事情:在t1.id = t2.id和rownum 2上左连接t1.因此无论“左连接”如何,它都应该只返回一行. 当我进一步研究这个时,我意识到我不明白Oracle如何在“左连接”条件下评估rownum. 让我们创建两个样本表:主表[详细]