标签: oracle10g

为什么即使列存在,我也有ORA-00904?

我在执行hibernate sql查询时看到一个错误.

java.sql.SQLException:ORA-00904:"table_name"."column_name":无效的标识符

当我在sqldeveloper中打开表时,列就存在了.

错误仅发生在PROD中,而不是发生在DEV中.

我该怎么检查?

oracle oracle10g ora-00904

28
推荐指数
4
解决办法
14万
查看次数

如何在oracle中将列varchar更改为clob

我在oracle DB中有一个设计为varchar 的列详细信息,此DB现在用于客户,而某些行已经存储了数据.

现在我想将列详细信息更改为Clob列.什么是实现这一目标的聪明方法?

sql oracle oracle10g

28
推荐指数
3
解决办法
4万
查看次数

为什么非贪心量词有时在Oracle正则表达式中不起作用?

IMO,这个查询应该返回 A=1,B=2,

SELECT regexp_substr('A=1,B=2,C=3,', '.*B=.*?,') as A_and_B FROM dual
Run Code Online (Sandbox Code Playgroud)

但它返回整个字符串A=1,B=2,C=3,.为什么?

UPD: Oracle 10.2+需要在正则表达式中使用Perl样式的元字符.

UPD2:
我的问题的更清晰形式(以避免有关Oracle版本和Perl样式正则表达式扩展的可用性的问题):
为什么在相同系统上非贪婪量词有时按预期工作,有时不工作?

这工作正常:

regexp_substr('A=1,B=2,C=3,', 'B=.*?,')
Run Code Online (Sandbox Code Playgroud)

这不起作用:

regexp_substr('A=1,B=2,C=3,', '.*B=.*?,')
Run Code Online (Sandbox Code Playgroud)

小提琴

UPD3:
是的,这似乎是一个错误.
任何人都可以就此问题提供Oracle支持响应吗?
这个虫子已经知道了吗?
它有ID吗?

regex oracle oracle10g oracle11g regex-greedy

28
推荐指数
2
解决办法
4552
查看次数

pls_integer和binary_integer有什么区别?

我继承了一些代码,这些代码将成为一些额外工作的基础.看看存储过程,我看到了很多关联数组.

其中一些由binary_integers索引,一些由pls_integers索引.这两者有什么不同吗?

我查看了文档,但除此之外:

PL/SQL数据类型PLS_INTEGERBINARY_INTEGER相同.为简单起见,本文档使用PLS_INTEGER来表示PLS_INTEGERBINARY_INTEGER.

我发现两者之间没有任何区别.那有什么区别?是否出于历史/兼容性原因?

我正在使用Oracle 10gR2

oracle plsql associative-array oracle10g

27
推荐指数
3
解决办法
7万
查看次数

在Oracle clob列中搜索特定字符串

如何从clob列中获取特定字符串?

我有如下数据存储在名为clob列中 product_details

CALCULATION=[N]NEW.PRODUCT_NO=[T9856] 
OLD.PRODUCT_NO=[T9852].... -- with other text
Run Code Online (Sandbox Code Playgroud)

我想NEW.PRODUCT_NO从列中搜索字符串product_details

我试过了

select * from my_table
where dbms_lob.instr(product_details,'NEW.PRODUCT_NO')>=1
Run Code Online (Sandbox Code Playgroud)

以上从我的表中提取全文.

任何帮助都非常值得赞赏.

问候

sql oracle clob oracle10g

26
推荐指数
3
解决办法
11万
查看次数

如何将日期值插入表中

如何使用/,使用日期数据类型插入具有不同输入的表?

insert into run(id,name,dob)values(&id,'&name',[what should I write here?]);
Run Code Online (Sandbox Code Playgroud)

我正在使用oracle 10g.

sql oracle datetime oracle10g date-formatting

26
推荐指数
2
解决办法
35万
查看次数

在Oracle中动态地将行旋转到列中

我有以下Oracle 10g表名为_kv:

select * from _kv

ID       K       V
----     -----   -----
  1      name    Bob
  1      age     30
  1      gender  male
  2      name    Susan
  2      status  married
Run Code Online (Sandbox Code Playgroud)

我想使用纯SQL(而不是PL/SQL)将我的密钥转换为列,以便生成的表看起来像这样:

ID       NAME    AGE    GENDER  STATUS
----     -----   -----  ------  --------
  1      Bob      30     male 
  2      Susan                   married
Run Code Online (Sandbox Code Playgroud)
  • 查询应该具有与表中K存在的唯一s 一样多的列(没有那么多)
  • 在运行查询之前无法知道可能存在哪些列.
  • 我试图避免运行初始查询以编程方式构建最终查询.
  • 空白单元格可能为空或空字符串,并不重要.
  • 我正在使用Oracle 10g,但11g解决方案也可以.

当您知道可以调用您的透视列时,有很多示例,但我找不到Oracle的通用透视解决方案.

谢谢!

sql oracle pivot oracle10g

25
推荐指数
3
解决办法
14万
查看次数

如何从oracle数据库获取24小时格式的日期时间?

有什么其他方法可以从24小时格式的oracle数据库中获取datetime字段???比如 - >"从tab_name中选择getxsddate(col_name)"会得到你的日期时间格式为"2012-04-04T12:31:00"...我想知道是否有其他方式,因为我对这种格式不满意.

oracle10g

25
推荐指数
1
解决办法
9万
查看次数

ORA-01652无法在表空间中扩展临时段

我正在创建一个像

create table tablename
as
select * for table2
Run Code Online (Sandbox Code Playgroud)

我收到了错误

ORA-01652 Unable to extend temp segment by in tablespace
Run Code Online (Sandbox Code Playgroud)

当我用Google搜索时,我经常发现ORA-01652错误显示有些值

Unable to extend temp segment by 32 in tablespace
Run Code Online (Sandbox Code Playgroud)

我没有得到任何这样的价值.我跑了这个查询

select 
   fs.tablespace_name                          "Tablespace", 
   (df.totalspace - fs.freespace)              "Used MB", 
   fs.freespace                                "Free MB", 
   df.totalspace                               "Total MB", 
   round(100 * (fs.freespace / df.totalspace)) "Pct. Free" 
from 
   (select 
      tablespace_name, 
      round(sum(bytes) / 1048576) TotalSpace 
   from 
      dba_data_files 
   group by 
      tablespace_name 
   ) df, 
   (select 
      tablespace_name, 
      round(sum(bytes) / 1048576) FreeSpace 
   from 
      dba_free_space 
   group by 
      tablespace_name 
   ) fs 
where 
   df.tablespace_name …
Run Code Online (Sandbox Code Playgroud)

oracle10g tablespace

25
推荐指数
2
解决办法
21万
查看次数

如何在不使用OEM的情况下检查上次在Oracle上运行统计信息的时间

我想查看上次在Oracle 10g服务器上运行统计信息的时间.我通常会通过OEM做到这一点,但由于无关的原因,OEM已关闭.有什么方法可以使用sqlplus来检查这个吗?如果输出格式合理,那将会非常有用.

oracle statistics sqlplus oracle10g

24
推荐指数
1
解决办法
9万
查看次数