C:\Documents and Setting\ty>imp 
用户名:system 
口令:**** 
连接到:Oracle Database 10g... 导入文件:EXPORT.DMP>G:\data\a.dmp 输入插入缓冲区大小 <最小为8192>30720> 经由常规路径由 EXPORT:V10.02.01 创建的导出文件 警告:这些对象由SDE导出,而不是当前用户 已经完成:ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入 
只列出导入文件的内容 <yes/no>: no> 由于对象已经存在,忽略创建错误 <yes/no>: no>yes 导入权限 <yes/no>:yes > 导入表数据 <yes/no>:yes > 导入整个导出文件 <yes/no>:no > 
用户名:sde 输入表 <T> 或分区 <T:P> 名称。空列表表示拥护的所有表 
输入表 <T> 或分区 <T:P> 的名称域。如果完成: .正在将SDE 的对象导入到SYSTEM 

解决方案 »

  1.   

    正确~~~,不过如果需要对库中多个用户导入的话,建议整个文件导出选择yes
      

  2.   

    这个是以system用户登录的,往sde用户里面导入数据。数据导完之后arcsde服务就起不来了。而利用下面的方式导入就没事
    imp sde/***@数据库名 file=f:\data\a.dmp full=y log=log.txt是不是和登录的用户有关啊?
      

  3.   

    其实上面有提示的哟警告:这些对象由SDE导出,而不是当前用户 这里是system用户导入,所以这里将导入到system的schema里。而没有导入到sde。也就导致一些问题了。所以
    imp sde/***@数据库名 是用sde作为当前用户导入。
      

  4.   


    要往sde用户导入,最好用命令行imp system/*** file=f:\data\a.dmp log=log.txt fromuser=sde touser=sde
      

  5.   


    fromuser=sde touser=sde 分别表示什么意思?
    这种方式导入还是以system登陆的。
      

  6.   

    因为用exp导出时导出文件中可以包含多个用户的数据,如
    exp system/*** file=alldata.dmp log=alldata.log owner=sde,sde1
    上面的命令就在alldata中包含了sde和sde1两个用户的数据在导出时加上fromuser指明了要导出文件中来自哪个用户的数据
    touser很明确,导出到数据库的哪个用户中