这样试试:
> sqlplus username/passwd@ora_cn @NewTextFile.SQLNewTextFile.SQL文件的内容就是你在命令行中输入的一些东东:
$imp
username
password
.
.
.

解决方案 »

  1.   

    第一,你才touser没有写
    第二,你的tables有两个,但第一个没有指定user
      

  2.   

    D:\>exp scott/tiger file=a.dmp 
    D:\>imp test/test fromuser=scott tables=emp file=a.dmp
    D:\>imp test/test tables=dept file=a.dmp说明:
    如果导出用户没有DBA权限,则导入用户可以不用指定fromuser、touser参数
    如果导出用户拥有DBA权限,则导入用户也必须拥有DBA权限
    D:\>exp scott/tiger file=a.dmp 
    D:\>imp test/test fromuser=scott tables=emp file=a.dmp
    D:\>imp test/test tables=dept file=a.dmp说明:
    如果导出用户没有DBA权限,则导入用户可以不用指定fromuser、touser参数
    如果导出用户拥有DBA权限,则导入用户也必须拥有DBA权限D:\>exp 用户/密码 tables=表
    D:\>exp 用户/密码 tables=(表1,…,表2)
    D:\>exp system/manager tables=(用户.表)
    D:\>exp system/manager tables=(用户1.表1,用户2.表2)
    :\>exp help=y通过输入 EXP 命令和用户名/口令,您可以
    在用户 / 口令之后的命令:实例: EXP SCOTT/TIGER或者,您也可以通过输入跟有各种参数的 EXP 命令来控制“导出”的运行方式。
    要指定参数,您可以使用关键字:格式: EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)
    实例: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)
    或 TABLES=(T1: P1,T1: P2),如果 T1 是分区表USERID 必须是命令行中的第一个参数。关键字 说明(默认)
    ---------------------------------------------------
    USERID 用户名/口令
    FULL 导出整个文件 (N)
    BUFFER 数据缓冲区的大小
    OWNER 所有者用户名列表
    FILE 输出文件 (EXPDAT.DMP)
    TABLES 表名列表
    COMPRESS 导入一个范围 (Y)
    RECORDLENGTH IO 记录的长度
    GRANTS 导出权限 (Y)
    INCTYPE 增量导出类型
    INDEXES 导出索引 (Y)
    RECORD 跟踪增量导出 (Y)
    ROWS 导出数据行 (Y)
    PARFILE 参数文件名
    CONSTRAINTS 导出限制 (Y)
    CONSISTENT 交叉表一致性
    LOG 屏幕输出的日志文件
    STATISTICS 分析对象 (ESTIMATE)
    DIRECT 直接路径 (N)
    TRIGGERS 导出触发器 (Y)
    FEEDBACK 显示每 x 行 (0) 的进度
    FILESIZE 各转储文件的最大尺寸
    QUERY 选定导出表子集的子句
      

  3.   

    问题解决了,关键在于应该是tables=key,而不是tables(key),nnd,看错了。谢谢 jinbingg(bing) 大哥。