首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我想获得oracle的命令。

我想获得oracle的命令。
EN

Stack Overflow用户
提问于 2014-12-06 20:43:53
回答 3查看 145关注 0票数 3

我需要一些关于Oracle的命令的帮助。

现在我没有接近那个数据库所以我不能尝试任何东西。

我会把你的答案写在纸上,然后再试一试,让你知道。

现在有一些信息:

通过使用c# connection将OLE连接到数据库,需要执行哪些命令才能获得:

主键每个表:

我已经为主键获得了SQL,但我不知道如何执行它来更改转换内容

代码语言:javascript
运行
复制
            "SELECT a.owner, a.TABLE_NAME, b.column_name
            FROM all_constraints a, all_cons_columns b
            WHERE a.constraint_type='P'
            AND a.constraint_name=b.constraint_name
            AND a.TABLE_NAME = 'CASTING'"

编辑:删除了如果存在(我将得到所有的表和前端表,我将添加删除表查询)

但是它是如何在甲骨文上的(现在我会保留它,明天早上9-11小时后我会告诉你,我会更新这个话题)

我如何检查某些列是否is_identity --意思是auto_increment

当我发现它时,如何检查

代码语言:javascript
运行
复制
           **"IDENT_SEED ,IDENT_INCR ,IDENT_CURRENT"**

最后一件事:

我怎么能从每一张桌子上得到这样的信息:

代码语言:javascript
运行
复制
column_name, data_type, is_nullable, character_maximum_length

提前感谢你的帮助

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-12-06 20:58:34

代码语言:javascript
运行
复制
select count(*) 
from all_tables 
where table_name = 'YOUR_TABLE_NAME_IN_UPPERCASE';

如果表不存在,则返回0(或者您的用户对此表没有任何特权)

代码语言:javascript
运行
复制
select column_name, data_type, nullable, data_length, data_scale, data_precision 
from all_tab_columns where table_name = 'YOUR_TABLE_NAME_IN_UPPERCASE';

提供表列的详细信息。

在Oracle中,没有身份列这样的东西,因为它的版本小于12c。你在用12c吗?

票数 1
EN

Stack Overflow用户

发布于 2014-12-08 03:59:22

谢谢你们的项目工作。版本为11.42,因此没有自动集成和任何工作,完善所有列信息工作,主键工作

票数 2
EN

Stack Overflow用户

发布于 2014-12-06 20:59:33

Oracle没有使用if exists table子句删除表的任何方法。作为最佳实践,只需删除表并忽略错误,然后使用

代码语言:javascript
运行
复制
BEGIN
   EXECUTE IMMEDIATE 'DROP TABLE mytable';
EXCEPTION
   WHEN OTHERS THEN
      NULL;
END;

如果你想得到通知,那就用,

代码语言:javascript
运行
复制
BEGIN
   EXECUTE IMMEDIATE 'DROP TABLE mytable';
EXCEPTION
   WHEN OTHERS THEN
      IF SQLCODE != -942 THEN
         RAISE;
      END IF;
END;

关于表的详细信息,查询ALL_TAB_COLUMNS

而且,甲骨文的IDENTITY COLUMNS是可用的。你的版本是哪一种?

查询,select * from v$version知道您的数据库版本。

查询all_tab_identity_cols以获取IDENTITY COLUMNS详细信息。

代码语言:javascript
运行
复制
SELECT table_name, 
       column_name,
       generation_type,
       identity_options
FROM   all_tab_identity_cols
WHERE  owner = 'TEST'
ORDER BY 1, 2;

按照OP关于表的PRIMARY KEY的请求编辑PRIMARY KEY

all_constraints中,列constraint_type将有主键的值P。因此,在查询中,将where constraint_type = 'P'放在

你的询问似乎没问题。执行就行了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27336294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档