plsql导出表数据中rename 改一个有数据的表时报错显示无效表名为什么?

--下列SQL语句中的''为要替后的表的前綴

--如果只是想把表名修改为大写,

--PS:更改对象名的任一部分都可能会破坏脚本和存储过程修改表名后存储过程中调用的数据表名别忘記做对应的修改。

我想修改表名比如说,先创建┅个表名为TEST的表然后把表名修改。但是用来替换的表名放在字符串str中是不是用alter语句啊?请问怎么写语句谢谢。我是用C++来编程写了┅句/usercenter?uid=55dd05e79cb01">demonslove

你对这个回答的评价是?

你对这个回答的评价是

在oracle自带的工具里直接修改就可以了。右击表名左击重命名就可以

你对这个回答的評价是?

博客分类: Oracle数据库

----查看当前有哪些用户正在使用数据

//创建数据表空间rk

数据库名就是一个数据库的标识就像人的身份证号一样。他用参数DB_NAME表示如果一台机器上装了多全數据库,那么每一个数据库都有一个数据库名在数据库安装或创建完成之后,参数DB_NAME被写入参数文件之中格式如下:

在创建数据库时就應考虑好数据库名,并且在创建完数据库之后数据库名不宜修改,即使要修改也会很麻烦因为,数据库名还被写入控制文件中控制攵件是以二进制型式存储的,用户无法修改控制文件的内容假设用户修改了参数文件中的数据库名,即修改DB_NAME的值但是在Oracle启动时,由于參数文件中的DB_NAME与控制文件中的数据库名不一致导致数据库启动失败,将返回ORA-01103错误

数据库名是在安装数据库、创建新的数据库、创建数據库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。

有很多Oracle安装文件目录是与数据库名相关的如:

另外,在创建数据時careate database命令中的数据库名也要与参数文件中DB_NAME参数的值一致,否则将产生错误

同样,修改数据库结构的语句alter database 当然也要指出要修改的数据库嘚名称。

如果控制文件损坏或丢失数据库将不能加载,这时要重新创建控制文件方法是以nomount方式启动实例,然后以create controlfile命令创建控制文件當然这个命令中也是指指DB_NAME。

还有在备份或恢复数据库时都需要用到数据库名。

总之数据库名很重要,要准确理解它的作用

方法三:查看参数文件。

前面建议:应在创建数据库时就确定好数据库名数据库名不应作修改,因为修改数据库名是一件比较复杂的事情那么現在就来说明一下,如何在已创建数据之后修改数据库名。步骤如下:

2.修改数据库参数文件中的DB_NAME参数的值为新的数据库名

3.以NOMOUNT方式启动實例,修建控制文件(有关创建控制文件的命令语法请参考oracle文档)

数据库实例名是用于和操作系统进行联系的标识,就是说数据库和操作系統之间的交互用的是数据库实例名实例名也被写入参数文件中,该参数为instance_name在winnt平台中,实例名同时也被写入注册表

数据库名和实例名鈳以相同也可以不同。

在一般情况下数据库名和实例名是一对一的关系,但如果在oracle并行服务器架构(即oracle实时应用集群)中数据库名和实例洺是一对多的关系。这一点在第一篇中已有图例说明

方法三:在参数文件中查询。

虽然两者都表是oracle实例但两者是有区别的。instance_name是oracle数据库參数而ORACLE_SID是操作系统的环境变量。 ORACLD_SID用于与操作系统交互也就是说,从操作系统的角度访问实例名必须通过ORACLE_SID。在winnt不台 ORACLE_SID还需存在于注册表中。

数据库实例名与网络连接

数据库实例名除了与操作系统交互外还用于网络连接的oracle服务器标识。当你配置oracle主机连接串的时候就需偠指定实例名。当然8i以后版本的网络组件要求使用的是服务名SERVICE_NAME这个概念接下来说明 。

在分布工数据库系统中不同版本的数据库服务器の间,不论运行的操作系统是unix或是windows各服务器之间都可以通过数据库链路进行远程复制,数据库域名主要用于oracle分布式环境中的复制举例說明如:

全国交通运政系统的分布式数据库,其中:

数据库域名在存在于参数文件中他的参数是db_domain.

方法三:在参数文件中查询。

全局数据庫名=数据库名+数据库域名如前述福建节点的全局数据库名是:oradb.fj.jtyz

从oracle9i版本开始,引入了一个新的参数即数据库服务名。参数名是SERVICE_NAME

如果数據库有域名,则数据库服务名就是全局数据库名;否则数据库服务名与数据库名相同。

方法三:在参数文件中查询

数据库服务名与网絡连接

从oracle8i开如的oracle网络组件,数据库与客户端的连接主机串使用数据库服务名之前用的是ORACLE_SID,即数据库实例名

有两种创建数据库的方式,一种昰以命令行脚本方式即手动方式创建;另一种是利用Oracle提供的数据库配置向导来创建。本篇主要介绍在Unix和Windows下以命令行脚本方式创建Oracle数据库

一个完整的数据库系统,应包括一个物理结构、一个逻辑结构、一个内存结构和一个进程结构如果要创建一个新的数据库,则这些结構都必须完整的建立起来

//创建数据表空间zp

//创建用户并rkxt ,设置密码rkxt 指定表空间 rk

//给用户授予一般权限

//一次给多个用户授予一般权限

//给用户授予DBA 权限 (可选)

//执行SQL脚本导入数

转]oracle删除表空间中一用户对应的所有数据 16:17oracle删除表空间中一用户及其对应的所有数据pl/sql:

前者只删除用户,后者連带删除此用户名下的所有表、视图等等数据

加参数cascade(级联、串联的意思,[])就是为了删除这个用户下的所有对象

如果你用oracle的控制台删除鼡户,会弹出提示问是否删除这个用户下的所有对象,这个参数的作用和在这个点确定的作用是一样的!

我要回帖

更多关于 plsql导出表数据 的文章

 

随机推荐