oracle10g相关内容
我有几个时间字段是 INTERVAL DAY(0) TO SECOND(0) 数据类型来存储一天中的不同时间. 目前在正常检索中,我的字段显示如下: +00 19:00:00.000000 我如何设置格式以使其显示为 19:00? 解决方案 使用 substr(to_char(interval_value), 5, 5) 其中 interval_value 是列名(顺
..
是否可以在单个 SQL 语句中执行以下操作: 在提示中使用电话号码的子集,例如 8001231000-8001239999.然后查询我的数据库中有电话号码,并返回原始子集中哪些电话号码不在我的数据库中?我的数据库是 Oracle 10g. 基本上不是带回8001231000-8001239999之间的电话号码,我想知道8001231000-8001239999之间的哪些电话号码不在我的
..
我想使用这个 SQL 查询来只获取 8 到 10 之间的记录: 选择 *从(SELECT a.*,rownum rn来自 ACTIVESessionSLOG a按用户 ID ASC 排序)其中 rn >= 8 和 rn
..
我有一个带有日期字段的表.当我运行查询时,我看到: 01/10/2009 22:10:39 如何只检索时间(IE:22:10:39) 解决方案 你可以试试这个: SELECT TO_CHAR(yourval, 'DD-MON-YYYY HH:MI:SS') FROM yourtable;SELECT TO_CHAR(yourval, 'HH:MI:SS') FROM your
..
我们需要填充一个主表,其中包含来自一组 20 个不同表的列. 我编写了一个存储过程来连接一些表,这些表返回最大列数并将它们放在游标中. 现在.我正在使用 for 循环遍历游标记录,以便将它们插入到主表中. 如何在游标 for 循环中使用合并语句,以便我可以检查是否需要更新现有行或插入新行,具体取决于记录是否已存在. 如果我们可以在游标 for 循环中使用合并语句有什么想法吗
..
我们在 Oracle 10g 和 19c 中存在相同的存储过程,具有相同的数据集和设置.该过程执行了如此多的数据获取和操作.当我们使用相同的数据集(比如 10000 条记录)执行时,它在 10g 中运行良好,时间更少,但在 19c 中它需要很多时间,一段时间后它会抛出“超出打开游标限制"错误.我们对 OPEN_CURSOR 和 OPEN_CURSOR 的两个数据库进行了基本比较.CACHED_CU
..
我编写了一个脚本,计划在夜间运行以复制昨天的表、删除昨天的表、创建新表,然后比较更改.这作为计划任务运行良好,但我真的很难找到一种方法,允许用户出于测试目的即时执行它. 我真正想做的是将它全部打包到一个存储过程中,因为我有一个 eForm 工具,它可以轻松地让用户(非常非技术性的)能够通过单击来执行该过程. > 这是脚本开始的示例.谁能帮我把它硬塞到一个存储过程中,因为它显然不会接受像
..
我们有一个带有主键的表,该表在插入时由表上的触发器填充 - 触发器从我们为表创建的序列中获取下一个序列号,并将其用作插入时键的值.现在我们希望能够在我们的插入过程 (PL\SQL) 中返回该值,类似于 SQL Server 中的 select @@scope_identity.我一整天都在谷歌上搜索,基本上什么也没有——以前有人成功过吗? 谢谢 解决方案 我不知道它是否适用于触发器,
..
是否有内置函数来确定 PL/SQL 集合中元素的(第一个)索引? 类似的东西 DECLARE类型 t_test 是 VARCHAR2(1) 表;v_test t_test;开始v_test := NEW t_test('A', 'B', 'A');dbms_output.put_line( 'A: ' || get_index( v_test, 'A' ) );dbms_output.pu
..
08-SEP-20 08:55:0508-SEP-20 15:36:13 下面的查询在 15:36:13 正常工作,因为它四舍五入到 15:30,但 8:55:05 向下舍入到 08:45,而它应该四舍五入到 09:00 select event_date,trunc(event_date,'mi') - numtodsinterval( mod(to_char(event_date,'mi'
..
我使用以下 CREATE 语句在 Oracle 10g 中创建了一个表. CREATE TABLE test ("id" NUMBER(35, 0) 主键,"description" VARCHAR2(250) not null); 基本的表结构如下所示. -----------------------------------------------------------------列名
..
我在脚本中有以下行,但我不明白“使用"部分的用途. 我在谷歌上找不到任何东西.有人熟悉吗? 非常感谢!! 创建实体化视图“PVTRNDM".“DM_MVW_DAILY_CAL"使用 ("DM_MVW_DAILY_CAL",(8, 'PLANVP.XXXX.INT', 1, 0, 0, "PVTRN", "DAILY_CAL", '2009-10-15 16:12:25', 8, 45073,
..
嗨,我在 oracle 中有以下用于字符串聚合的函数 CREATE OR REPLACE FUNCTION STRING_AGGREGATE(i_query VARCHAR2,i_seperator VARCHAR2 DEFAULT ',')返回 VARCHAR2作为l_return CLOB:='';l_temp VARCHAR(32000);TYPE r_cursor 是 REF CURSO
..
我在这样的包中有一个 Oracle 过程 PROCEDURE getEmployee(pinLanguage IN VARCHAR2,pinPage IN NUMBER,pinPageSize IN NUMBER,pinSortColumn IN VARCHAR2,pinSortOrder IN VARCHAR2,poutEmployeeCursor OUT SYS_REFCURSOR)作为开始
..
我创建了一个表,列 id 为 varchar2(20).现在我想修改它并将大小更改为 13,即列 id varchar2(13).如何实现?提前致谢 ps:我的表中没有任何数据. 解决方案 你可以在 Oracle 上试试这个:- alter table tablename modify(column_name varchar2(13)); 此外,如果表中没有任何数据,则也可以dr
..
IMO,此查询应返回 A=1,B=2, SELECT regexp_substr('A=1,B=2,C=3,', '.*B=.*?,') as A_and_B FROM dual 但它返回整个字符串,A=1,B=2,C=3,,而不是.为什么? 更新 1: 在正则表达式中使用 Perl 样式的元字符需要 Oracle 10.2+. 更新 2: 我的问题的更清晰形式(以避免
..
我已经成功地为罪犯表中的criminal_id 列创建了一个序列,但是当我尝试插入新行时,出现“不允许列"错误.这是我运行的语句: INSERT INTO 罪犯(criminal_id, last, first)值(criminals_criminal_id_seq.NEXTVAL,Capps,Johnny); 我收到的错误消息说我的错误在第二行,并指出:“此处不允许使用列."我做错了什么?
..
我有2张桌子. 1)汽车表:
..
我设法将Oracle 10g中的日期21-Feb-12017(我知道这不是一个正确的日期)输入到日期列中.甲骨文接受了罚款.当我尝试在SQL Developer中重新选择它时,SQL Developer将其显示为NULL.但是,当我尝试通过java检索日期时,我又回到了插入时的值.想知道发生了什么,因为我还可以看到Oracle将不同的5位数字年份转换为4位数字年份.我输入了21019年2月21日,
..
我想创建一个过程来检索表上的所有索引并重新构建 i使用此查询检索所有索引: 从user_indexes中选择index_name,其中table_name ='your_table_name' 我用这个查询重建了 更改索引重建; 谢谢. 解决方案 创建或替换过程rebuild_indexes(varchar2中的p_owner,varchar2中
..