create table user_b.abcd
( a number constraint abc_pk primary key 
using  index
(create index abc_index  on  user_b.abcd(a) tablespace users),
b number
);------------------
SQL> @h:\code\6.sql
(create index abc_index  on  user_b.abcd(a) tablespace users),
                                        *
第 4 行出现错误:
ORA-00903: 表名无效语句有什么问题??????

解决方案 »

  1.   

    表还没有创建成功。你可以先建表,再建索引
    create table user_b.abcd
    ( a number );
    alter table TGL_user_b.abcd
    add 
    constraint abc_pk primary key (a) tablespace users);
      

  2.   

    这样可以了吧?
    顺便说下 主键默认就有index的 没必要新建index的
      

  3.   

    创建表时不需要在表名称前加上用户名(如user_b),一个表的主键被创建后,oracle会自动为其创建一个同名的唯一约束和索引。
      

  4.   

    SQL> conn scott/tiger
    已连接。
    SQL> create table my_tab(a varchar2(20));表已创建。SQL> alter table my_tab add constraint my_tab_pk primary key(a);表已更改。
      1* select constraint_name,index_name,table_name from user_constraints where ta
    ble_name=upper('my_tab')
    SQL> /CONSTRAINT_NAME                INDEX_NAME                     TABLE_NAME
    ------------------------------ ------------------------------ ------------------
    MY_TAB_PK                      MY_TAB_PK                      MY_TAB
      

  5.   

    CREATE TABLE T_ORDER ( 
      ORDER_ID NUMBER(10) NOT NULL,
      CLIENT VARCHAR2(60), 
      ADDRESS VARCHAR2(100),
      ORDER_DATE CHAR(8)) 
      TABLESPACE phoenix1;
      
    create unique index IDX_ORDER_ID on T_ORDER ( ORDER_ID ASC) reverse TABLESPACE phoenix2;alter table T_ORDER add constraint PK_ORDER primary key (ORDER_ID) using index IDX_ORDER_ID;
      

  6.   

    我用system/moon123@moon 用户登陆 想其他用户模式下创建表 想联系一下 using index字句的使用 所以才 写了这样的 create table 语句.