新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > 数据库 > Oracle教程 > 正文:实例解析acle ORA-00903错误的具体原因

实例解析acle ORA-00903错误的具体原因

新客网 XKER.COM 2007-08-01 来源: luoying 收藏本文

问:出现如下的错误现象应该怎样解决:

 

acle ORA-00903错误具体原因分析            
acle ORA-00903错误具体原因分析 
 

  ORA-00903 invalid table name

  ORA-00903:无效的表名

Cause A table or cluster name 
is invalid or does not exist. This 
message is also issued if an invalid 
cluster name or no cluster name is 
specified in an ALTER CLUSTER or DROP 
CLUSTER statement.

Action Check spelling. A valid table 
name or cluster name must begin with 
a letter and may contain only 
alphanumeric characters and the 
special characters $, _, and #. 
The name must be less than or 
equal to 30 characters and cannot 
be a reserved word.

答:出错原因如下:表名或簇名不存在或无效,当运行ALTER CLUSTER 或 DROP CLUSTER语句时,会出现此错误信息。

 

解决方法:检查拼写是否正确。一个有效的表名或簇名必须以字母开头,只含有字母或数字,不能超过30个字符,可以包含一些特殊字符$, _, #。表名或簇名不能是关键字。

案例一:使用 DBMS_SQL包执行DDL语句

 

The DBMS_SQL package can be used to execute 
DDL statements directly from PL/SQL.

 

  

 

这是一个创建一个表的过程的例子。该过程有两个参数:表名和字段及其类型的列表。

 

CREATE OR REPLACE PROCEDURE ddlproc 
(tablename varchar2, cols 

varchar2) AS
cursor1 INTEGER;
BEGIN
cursor1 := dbms_sql.open_cursor;
dbms_sql.parse(cursor1, 'CREATE TABLE ' || tablename || '
( ' || cols || ' )', dbms_sql.v7);
dbms_sql.close_cursor(cursor1);
end;
/
SQL> execute ddlproc ('MYTABLE','COL1 NUMBER,
 COL2 VARCHAR2(10)');
PL/SQL procedure successfully completed.
SQL> desc mytable;
Name Null? Type
------------------------------- --------
COL1 NUMBER
COL2 VARCHAR2(10)

 

共2页: 上一页 [1] [2] 下一页
收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐