我面临一个特殊的问题,我需要更新数据库中的一个特定值,使之成为“地狱”。当我运行normal update语句时,值会被很好地更新。但是当我把它放在一个.sql脚本文件中,然后运行update语句时,最后一个字符将被一个垃圾值替换。有人能告诉我这一点以及oracle如何处理脚本文件吗?如果update语句起作用,那么这就不是数据库中字符编码的问题,因此有两个主要问题需要解决;您的软件和文件编码
检查编辑器是否符合UTF8标准——例如,记事本不符合UTF8标准,但写字板符合UTF8标准,Ultra
任何人都可以帮助我通过命令行界面从Oracle数据库模式提取包。使用DBMS\u元数据。GET\u DDL:
DBMS_METADATA.GET_DDL (
object_type IN VARCHAR2,
name IN VARCHAR2,
schema IN VARCHAR2 DEFAULT NULL,
version IN VARCHAR2 DEFAULT 'COMPATIBLE',
model IN VARCHAR2 DEFAULT 'ORACLE
我有一个场景,一个过程,其中有for循环,其中有一个select查询,每次运行时返回不同的结果。我必须将每个结果存储在单个变量、数组或游标中。请建议!!。以下是一个文件包中编写的程序:
包装规格:
TYPE t\u product\u id是产品表。productnr%TYPE
通过PLS_整数进行索引
类型t_product_desc是varchar(100)的表
通过PLS_整数进行索引
类型t\U产品的psnr是产品目录。psnr%类型
通过PLS_整数进行索引
类型t_prod_cont
首先,我对Cognos完全陌生;我被要求了解如何将PowerPlay Transformer 7.3应用程序连接到Oracle 10.2数据源,根据我目前的研究,没有直接的方法可以做到这一点,我需要一个Cognos BI服务器
有人能给我更多关于这个话题的信息吗
您好您应该使用Impromptu或Framework Manager准备一个.iqd文件。
此类文件描述了如何连接到数据库。
或者,您可以将数据从Oracle导出到文本文件,并直接使用它我想这些是额外的工具,对吗?我没有安装它们。是否有
Am在以下具体化视图性能问题上输入了一些信息
我有两个物化视图,类似于以下内容:
create materialized view m1 as
select stuff from tableone where adate = adate
union all
select stuff from tableone2 where adate = adate
union all
select stuff from tableone3 where adate = adate
uni
我们最近已将带有本机运行时的Oracle 6i表单迁移到10g,以使用web和java。它可以工作,但存在巨大的性能问题。例如,在运行red hat的服务器中,在web版本10g的两个屏幕之间切换时,每个客户端使用15%的cpu
这太疯狂了,一定是某个地方出错了,因为我们还有其他10g应用程序,它是为web“制造”的,但在6i中从未存在过,但在屏幕之间正常切换大约需要0.5-2%的cpu使用率,而不是15%甚至20%的cpu使用率
有什么好处?在6i和10g之间的迁移过程中,我们是否遗漏了什么?
我想使用sqlldr将以下文件加载到oracle数据库中,其中包含多个主详细信息数据
示例文件:
1 015
3 brnadcode1 brandname1
3 brnadcode2 brandname2
3 brnadcode3 brandname3
1 018
3 patterncode1 pattername1 address1
3 patterncode2 pattername2 address2
3 patterncode3 pattername3 address3
第一行记录类型为
我的典型要求是,我想减去两个日期作为时间戳。分钟数(第一个参数)是当前日期,分分钟数(第二个参数)分别存储为DD、MM和YYYY,分为三列。最终产出应为离散年数。我在玩类似这样的游戏:
SELECT (TO_DATE('05-DEC-2013') -
CASE LENGTH(CAND_DOB_DD)
WHEN 1 THEN
CAST(TO_DATE('0'||CAND_DOB_DD||'-'||CAND_DOB_MM||'- '||C
错误:ORA-00933:SQL命令未正确结束。
语法中缺少什么 您不能像现在这样创建多个记录。您可以这样尝试:
INSERT INTO EMP_COMPANY(ename,cname,salary,jdate) VALUES
('ANIL','ACC',1500.00,'01-MAY-89'),
........
('AMOL','ACC',1000.00,'17-MAR-95');
INSERT INTO EMP_COMPANY(ename,cname,salary,jdate)
sel
在下面的查询中,我想在字符串被delimeter“-”拆分后显示子字符串“test0-test!”。
从dual中选择regexp_substr('Helloworld-test0-test!','[^-]+',1,1)
你能帮我一下吗
谢谢 您可以将模式扩展为:
select regexp_substr('Helloworld - test0 - test!' ,'[^ -]+ - [^ -]+$', 1, 1)
from dual;
REGEXP_SUBSTR
-------------
我有客户购买的记录。有时,一个客户在一个给定的购买过程中购买多个项目,有时他们只购买一个项目。我要做的是,逐行识别发生了哪些购买事件(即,不是逐项,而是逐项结帐)
源数据库的每一行都包含以下字段
cust_id, purchase_date, sku
因此,在给定交易期间购买三件商品的客户如下所示
1, 01/01/01, dog1
1, 01/01/01, cat1
1, 01/01/01, mouse1
1, 01/02/01, wolf1
1, 01/03/01, lion1
我想要的
我不熟悉Oracle服务器的管理部分,只想知道删除用户是否意味着与该用户相关的数据也将被删除?
谢谢。取决于你所说的“相关”是什么意思。数据库中的每个用户都有相应的模式,包括表、索引等。如果您删除一个用户,他们的模式和其中的所有数据也会被删除。如果用户已将数据放入其他表中,则该数据不会被转移到任何地方 查看drop user命令的级联选项
我有一个BI 10g数据库,其中有两个实例使用侦听器端口1522。我使用端口1521配置了第二个侦听器,第一个侦听器使用端口1522。当我尝试连接到数据库时,无法解析连接描述符中给定的SID
我已将我的listner.ora配置为使用端口1521以及我的tnsnames指向数据库,当我使用lsnrctl系列时,我看不到两个SID,我只看到PLSEctProc
当执行lsnrctl状态时,我只能看到端口为1521的第二个侦听器
是否可以让两个侦听器侦听同一服务器中的相同实例 同一数据库的不同端口上
ORA-00955:名称已被现有对象使用
已经有这么多的语句和对象了。那么,如何找出是哪个对象(表、列、序列、视图等)导致了此错误的发生
我尝试了这些链接,但无法解决问题-
如果您在SQL*Plus中运行脚本,您可以将ECHO设置为ON,然后将输出假脱机到一个文件以供以后分析。如果您在SQL*Plus中运行脚本,您可以设置ECHO ON,然后将输出假脱机到一个文件以供以后分析。Show使用CREATE语句和用于查找现有对象的SELECT语句。从object\u name=''的所有对象中选
如何使用concat运算符concat三个字符串
select concat('today',To_Char(Rts,'dd/mm/yy hh24:mi:ss'),'date') From Mbl_Dishtv Partition(P_03dec2012) Where Aid=501604
请向CONCAT操作员建议。如果您真的想使用CONCAT,您需要打两个电话
select concat('today',To_Char(Rts,'dd/mm/yy hh24:mi:ss'),'date'
我正试图上传一个脚本,文件上传得很好,但在脚本编辑器窗口中,我将实际运行脚本,整个文件内容显示在一行上,整个编辑区域显示为红色。我不能运行那个脚本。此外,如果我从编辑器创建新脚本,编辑区域将再次显示为红色,并且我无法保存它。请帮助我了解要做什么,以便我可以运行SQL脚本。好的,所以我自己解决了。所以我回答我的问题是为了帮助其他有这个奇怪问题的人。当您在IE以外的任何浏览器上打开数据库主页时,就会出现此问题,并且您将无法对脚本执行任何操作。所以,如果你必须上传一些数据,一定要在IE上打开你的数据库
我们有多个进程,它们读取一个数据库表,获取可用记录并使用它。它很好用
当此表中没有记录时,每个进程将等待5秒并再次读取。
因此,记录可能会在表中闲置5秒钟,这是不好的
建议采用什么解决方案来消除此类等待,并在创建记录时立即进行?一种解决方案是触发器,它在创建记录时执行某些操作。但此解决方案需要了解工作流程,才能将记录传递给空闲流程之一
看起来,理想的解决方案是,当每个进程开始通过SQL从某个对象读取数据时,当创建记录时,其中一个等待的进程将有它的记录,而另一个进程将继续等待
Oracle 10是
似乎不可能在CREATETYPE子句中定义CHECK约束。这在CREATETABLE-子句中是可行的。不知道我在这里是否做错了什么,因为它觉得在类型定义中使用它并在createtable-part中进一步引用它会很方便
CREATE TYPE address_type AS OBJECT (
StreetAddress varchar2(200),
City varchar2(50),
AddressType varchar2(20)
constraint ckAddressT
有人能帮我知道ODI 10g中的哪个表存储所有已启动会话的详细信息。ODI将所有数据存储在工作报告的SNP_会话表中
我有一个在表中记录活动的应用程序(Oracle 10g)。日志记录应至少保存30天。我预计每个月会向这个表中添加大约2000万行
DBA建议将表拆分为包含一周数据的分区。然后,每周维护脚本将删除最旧的分区(表中只剩下4周的数据)
分区此日志表的最佳方法是什么?每月有2000万行,您只需保留30天的数据?(大约值一个月)
即使有12个月的数据,也不难用正确的索引查询这个表(作为一个大表)。
无论是日志记录表中的一行还是2000万行,插入都没有问题
如果我说的没错,Oracle中的分区也是一项需要付
我想在64位版本的2008服务器上安装oracle
有人能告诉我应该安装哪个软件吗?我需要Oracle客户端和服务器。请指定要安装的内容。是数据库、应用服务器还是其他什么
若您想安装数据库,我建议您检查计划安装的数据库版本的兼容性矩阵。Oracle的唯一免费数据库形式是XE,它只存在于windows平台的32位版本中
关于实际上我想安装oracle 10g R2数据库。如果是这样的话,我会试一试:但请保留,因为我不是oracle专家:
我在远程机器上安装了Oracle server,我想在本地机器上安装一个脚本,用于检查Oracle server是否已启动并正在运行。我知道可以通过sqlplus或JDBC创建连接来检查这一点。但在这种情况下,oracle客户端将不存在,我将保存JDBC方法作为最后一个选项。那么,有没有其他更简单的方法来检查这一点,它可以很容易地在shell脚本中实现
谢谢不太感谢。确保数据库响应查询的唯一方法是对其运行查询,例如:
select dummy from dual
不是真的。确保数据库响应查询的
我有一笔表T的补助金,我希望这笔补助金在以下情况下生效:
drop table T;
create table T(...);
有可能吗?来自(强调矿):
删除表会使依赖对象无效,并删除表上的对象权限。如果要重新创建该表,则必须重新授予该表的对象权限,重新创建该表的索引、完整性约束和触发器,并重新指定其存储参数。截断和替换都没有这些效果。因此,使用TRUNCATE语句删除行比删除和重新创建表更有效
因此,您需要在create table语句之后显式地将grant语句添加到脚本中。来自(强调项)
我收到一个通配符查询扩展,在执行类似于以下内容的查询时导致过多术语错误:
SELECT *
FROM table_a
WHERE contains(clob_field, '%a%') > 0;
有人知道这个问题的解决方法吗?根据,您可能需要增加通配符\u maxterms参数,或者采取进一步的步骤。有关详细信息,请参阅链接。不过,我不是Oracle文本方面的专家
我创建了一个具有列date_time类型(varchar2(40))的表,但当我尝试插入当前系统日期和时间时,该表不起作用,它会给出错误(值太多)。请告诉我insert语句有什么问题
create table HR (type varchar2 (20), raised_by number (6), complaint varchar2 (500), date_time varchar2(40))
insert into HR values ('request',6785,'good mor
我正在尝试从数据库中获取以下格式的数据
Month Count
----- -----
201208 124
201209 0
201210 56
201211 25
201212 0
201301 184
201302 0
在数据库中,我有如下条目:
Month Count
----- -----
201206 56
201208 124
201210 56
201211 25
201301 184
201
我需要生成一个XML并将其写入一个文件。
我使用了utl_file.put_行。它创建了文件,但没有写入任何内容。而且,它没有显示错误。
我已经检查了我是否有在目录上写入的权限。
代码:
出于性能原因,UTL_文件使用一个缓冲区,该缓冲区定期刷新到磁盘上的实际文件。一般来说,您不需要担心刷新,除非您需要在最后使用UTL_file.fclose(xmlfile)关闭文件刚刚发现我可以使用dbms_xslprocessor.clob2file将xml直接发送到我的文件中,该文件可以正常工作。但我仍然
如果我有一个具有以下表结构id、用户名、发送日期、消息的表,那么如何通过Oracle SQL获取不同用户的上一条消息
假设我有以下数据
id, username, send_date ,message
1, user A , 12.02.2018 10:08:05 ,'problem 1'
2, user B , 12.02.2018 11:34:12 ,'what ?'
3, user B , 12.02.2018 14:12:02 ,'try
我们最近将我开发的一个数据库从Oracle帐户更改为LDAP登录帐户,所有这些都很适合访问系统的工作人员使用的前端。但是,我们有第二种输入方法,仅限于将数据加载到数据库的管理员人员,并且使用dbms_调度程序调用了大量处理
大多数数据库表都有一个created_by列,默认情况下该列从sys_上下文中获取用户名,但当从dbms_调度程序运行数据加载时,该信息不可用,因此created_by列都会填充APP_GLOBAL
我已经设法用sys_上下文值填充了一个全局临时表(GTT),并使用它来填充从
是否有类似于ProvidersHelper但不适用于web的类?
我想实例化一个提供者集合。实际上,我使用的是CodeSmith&Nettiers,数据库提供者是Oracle。它生成了一个要添加到app.config的provider部分,我不知道为什么它使用System.Web.Configuration类,或者为什么在这个部分它说的是SQLClient而不是OracleClient
我得到的错误是:
“System.Web.dll中发生类型为'System.Configuration.Con
我必须删除超过364天的分区。
分区命名为log_20110101,因此比
今天必须是
CONCAT'log',TO_CHARSYSDATE-364,'yyyyymmdd'
现在,如果我尝试这样的陈述,我会得到错误
ALTER TABLE LOG
DROP PARTITION CONCAT('log_',TO_CHAR(SYSDATE -364,'YYYYMMDD'));
-
在发出SQL语句时需要固定分区名称,它不能是表达式。您应该能够执行类似的操作,遍历USER\u TAB\u PARTI
我读了一些,其中varchar存储2000字节,而varchar2存储4000字节。那么,您能告诉我为什么我仍然可以在ORacle 10g或ORacle 11g中创建下表结构吗
创建表格示例
(
col1 VARCHAR(2500)
)
Oracle应该给出上述查询的错误,但事实并非如此,有人能解释发生了什么吗
谢谢 您在哪里读到VARCHAR的限制是2000字节?列出了数据类型限制。VARCHAR和VARCHAR2具有相同的4000字节限制 我想我可能读过非常旧版本的Oracle。如果它们是
我有一个记录DCP\u SC\u DOT\u TBL,其中有两个键SETID和compractid。除此之外,还有78列是复选框,包含值Y或空白。例如:
SETID CONTRACTID 1 2 3 ...... 78
DCPID 00102 Y Y
DCPID 00192 Y Y Y
现在,我想删除所有这些列,并为每个非空列创建一个新行,以创建一个表,例如:
SETID CONTRACTID Checkbox(New c
在Oracle中,有一种深度克隆表的方法,即克隆表定义+索引+触发器+约束(更不用说序列)。我知道:
create clone_table as
select *
from table
,但它只涉及表的字段
我需要克隆一系列包含大量索引/触发器等的表,我希望实现自动化。该解决方案应与Oracle 10G配合使用,但它将仅为11G,这也是可以接受的。为此任务使用dbms\u metadata,尤其是其功能get\u ddl
我相信你会在网上找到很多例子
或者,根据您的具体需求,您
朋友们
我的apex页面有几个不同的广播组,每个组的值都可以是或否
当用户按下按钮时,我需要在页面的javascript处理中捕获这些单选组的值,然后根据它们的值进行“操作”
是否有Apex Javascript API可用于获取值?或者我需要实现一个类似的函数吗
提前感谢您提供的任何帮助。如果任何人对此感兴趣,APEX API$f_SelectValue会满足我的需要
记录
我已经创建了以下程序,但它给出了PLS-00302错误。提前感谢:)
ORA-06550:第11行第12列:PLS-00302:组件
“获取最新的LSR交易”必须为
声明的ORA-06550:第11行第3列:
PL/SQL:忽略语句
如果SEA\u用户架构不存在或您无权访问它,则当您尝试创建列出的过程时,将收到ORA-01031:权限不足错误。如果程序的主体是有效的,我看不出它不编译的原因
有鉴于此,如果在尝试调用存储过程时收到ORA-06550错误,那么我只能想到两种可能性:
您正在从调用该过
我正试图在Ubuntu服务器11.04虚拟机上安装Oracle database 10g。我正在使用Vagrant运行它并访问它。我下载了具有.cpio.gz文件扩展名的安装包。Oracle指定以下命令将其解压缩:
gunzip filename
cpio -idmv filename
gunzip操作运行得很好,但是当我运行cpio命令时,它似乎花费了太长时间。我让它运行了3个多小时,但它还没有完成。现在,.cpio文件是764MB。它应该运行这么长时间吗?使用以下方法之一
cpio -
是任何实用程序,通过它我们可以确定Oracle窗体或报表使用的数据库对象列表,或使用特定数据库对象的窗体和报表列表。
对于Oracle forms/Reports 10g,过去有一个由Quest软件“SQL Impact”制作的工具,但现在不再支持该工具
进行此类分析的最简单方法是将所有fmb/rdf转换为xml,然后用Ruby编写脚本搜索db对象名
或者,您可以使用JDAPI来迭代表单对象,但没有用于报表的JDAPI。使用JRuby使用JDAPI要容易得多,您可以在那里找到示例脚本:
您的问题
请您向我解释一下:我的软件包规范中包含以下内容,而不是使用Oracle 10g的正文
TYPE t_fraud_ext IS TABLE OF FI_RPT.FI_Fraud_OBJ;
FUNCTION fraud_ext_Sql
( schema_name IN VARCHAR2
, select_beginning_business_date IN DATE – Start Date
, select_thru_business_date IN DATE
我有一个表名Numbers。我有两列,即。第1列和第2列
现在,我想写一个查询,这样我就可以在一列Col_3中显示上述两列的值,如下所示
你可以用UNION
SELECT Col_1 AS Col_3
FROM Numbers
UNION
SELECT Col_2 AS Col_3
FROM Numbers
如果您只希望两个表中的唯一值,并且不介意扫描表两次,则:
select col1 as col3
from numbers
union
select col2
from n
所以我要问的问题是,拿两种类型的所有电影的制作年份,SH和CH,然后打印出一份列表,列出在我特定类型的任何电影制作之前制作的所有电影,片名和年份。我有这个:
SELECT x.title "Title", x.yr "Year"
FROM movies x
WHERE EXISTS (SELECT x FROM movies y
WHERE y.genre IN ('SH', 'CH') AND y.yr < x.yr)
ORDER BY yr;
但它正在制作各种各样的片名,这些片名是
标签: Oracle10g
materialized-viewsstring-aggregation
我有大量的物化视图,其中一些视图的创建和刷新只需几秒钟,而其他视图的编译可能需要40分钟,如果SQLDeveloper在此之前没有崩溃的话
我需要在查询中聚合一些字符串,我有以下函数
create or replace
function stragg
( input varchar2 )
return varchar2
deterministic
parallel_enable
aggregate using stragg_type
;
然后,在我的MV中使用select语
我想知道oracle中的BTree索引和位图索引存储了什么值,搜索“索引的内部结构”。搜索“索引的内部结构”
大家好,我对甲骨文很陌生。我认为品牌在('HP')中的位置条件
现在,我的报告将针对HP品牌运行
但是明天如果我想运行不同品牌的报告而不修改视图或报告
所以我想我需要创建一个类似查找表的东西
请建议如何创建以及如何将值传递给我的视图的过程从视图中删除条件,并在从视图中选择时应用它:
SELECT x
FROM your_view
WHERE brand IN ('HP');
明日跑
SELECT x
FROM your_view
WHERE brand IN ('X', 'Y',
我做了一些在线阅读,但似乎找不到我所寻找的答案。可能是因为我走错了路。
我正在使用Oracle 10g
我有表xyz和列:
recID- VARCHAR type
XML- CLOB type
XML列包含XML和html标记。即
<Employee><firstName>John</firstName>
<EmpDesc><![CDATA[<p>I like to live by Ghandi's mott
我目前正在经历一个我认为是奇怪的行为,当使用甲骨文与蟾蜍
我有一个问题:
SELECT
COUNT(as_at_date)
FROM
job_log
WHERE
as_at_date = TO_DATE('24/11/2009', 'dd/mm/yyyy');
当我尝试使用Toads的“executestatement”按钮运行此命令时,返回的行数为零。但是,当我使用“作为脚本执行”时,返回了一行,这与预期的一样
谁能解释一下为什么使用不同的命令会在结果集中产生
我创建了一个名为employees的表,其中一列名为salary,数据类型为NUMBER(11)
然后我在工资中输入了一个值12345678901
但在输出中,它的值显示为1.2345E+10
谁能给我解释一下这到底是什么吗?这是数字的第一部分。您可以看看Oracle中的数字数据类型。@Bhavana,感谢回答者的方式就是接受他们的回答。你该开始做这件事了。
我有一个具有更复杂外键关系的oracle数据库模式。。我需要将测试数据填充到所有表中。。由于外键限制,我发现很难找到表的层次结构。。有人能提出实现这一目标的方案或方法吗
提前感谢如果您能让我们知道您希望输出采用什么形式,那将非常有用。你可能想从弗兰克·库拉什的开始来展示这条路
如果您正在寻找一种方法来确定加载表的顺序,这与a相同,因为DBA仍处于测试阶段,所以不能将此问题标记为重复问题。差不多
WITH constraint_tree AS
(
SELECT DISTINCT
为什么我必须单击formservlet左上方的save按钮,这样我的insert查询才能保存到数据库?对不起,伙计们,我是新手谢谢
以下是我在add button触发器中的pl sql代码:
begin
insert into tb_distributor
(distributor_id, distributor_name, distributor_type, distributor_desc)
values
(distributor_id.nextval,
我想在oracle数据库中插入日期和时间,我已经创建了包含列的表
create table myadmin
( employe_id number(5),
supervisor Varchar2(20),
department Varchar2(20),
action Varchar2(20),
sdate date,
stime date)
While inserting the values below it gives an error. Please tel
1 2 3 4 5 6 ...
下一页 最后一页 共 9 页