Chinaunix

标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上 [打印本页]

作者: 嘉怡    时间: 2004-06-30 17:33
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
我执行命令如下:

db2  -tvf  createtable.sql
createtable.sql 的内容如下:
***********************
db2 connect to dbname;
create table "tablename"


表中的域

建立唯一索引语句;
commit work;
connect reset;
terminate;
*************************
执行完毕后提示我执行成功
于是我向表中import数据,执行如下命令
import from filename.del of del commitcount 50 replace into tablename;
此时系统提示我如下信息:
SQL3304  表不存在
我又用如下命令试验
db2 "select * from tablename"
此时系统提示我如下信息:
SQL0204N  "用户名.tablename" 是未定义的名称。  SQLSTATE=42704
作者: geniiking    时间: 2004-06-30 18:02
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
用户名肯定会加在表名前面的,oracle、db2、informix、sybase的数据库都是这样

你可以describe tablet tablename看一下你建的表是否建成功
作者: lizhuo    时间: 2004-07-01 15:34
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
如果你在建表的时候,不指定模式名,那么数据库就用你登陆的用户名作为模式名。
作者: snowfox    时间: 2004-08-02 16:01
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
可以用DB2 CONNECT TO dbname user xxx using xxxxx
这样就用xxx作为模式名了
作者: huyuhui001    时间: 2004-08-03 08:16
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
要确定当前是用哪个用户connect to的。
作者: ibmxp    时间: 2004-08-03 09:06
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
确定你的用户名与模式名是否相同,不同的话必须指定模式名!
作者: jourmen    时间: 2004-08-25 09:37
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
方便别的用户使用
可以为他们建同义词啊
作者: snowfox    时间: 2004-08-27 14:53
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
如何做才能让B用户访问A用户建立的模式名为A的表呢?不想每次B都在使用前敲db2 set current SCHEMA=A
作者: jourmen    时间: 2004-08-30 09:48
标题: 我在DB2下建立的表,为什么总是自动的把用户名加到表前缀上
5555555555
不看我的答复,都说了给表建同义词


  1. create synonym tbl_name  for db2inst1.tbl_name;
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2