在oracle中
我在表中定义了 联合主健 upcode+ditem+xialiao
其中:
upcode 不允许为空
ditem 不允许为空
xialiao 允许为空
三个能否成为联合主健
我现在遇到了这么一个问题
虽然xialiao有些时候 是空的
但是 当有借用现象的话
xialiao却不一定是一样的
比如 我借用了 TSK254-11-11-100这个upcode的话
他的情况有可能就是 xialiao=10
另外一条有可能就是 xialiao=20
这两个记录应该都保存在数据库表中
以便下次再次查询的时候 能够显示出来
我在表中定义了 联合主健 upcode+ditem+xialiao
其中:
upcode 不允许为空
ditem 不允许为空
xialiao 允许为空
三个能否成为联合主健
我现在遇到了这么一个问题
虽然xialiao有些时候 是空的
但是 当有借用现象的话
xialiao却不一定是一样的
比如 我借用了 TSK254-11-11-100这个upcode的话
他的情况有可能就是 xialiao=10
另外一条有可能就是 xialiao=20
这两个记录应该都保存在数据库表中
以便下次再次查询的时候 能够显示出来
解决方案 »
- 请帮助--ORA-12560谢谢
- 这个SQL语句怎么写啊
- pro*c的编译问题
- oracle数据库如何设置密码强度策略、数据库连接超时时间?
- win7 下安装oralce客户端的问题,大家帮帮我。
- 一个关于select的小问题
- sql按规则转换数字查询结果
- 我新安装了一个oracle9i,进入oracle enterprise manager console中要求我输入用户名和口令,在ORACLE中。。
- oracle 9i是否必须购买服务,如果同一个oracle 数据库是否可以在两个或两个以上的服务器上安装?
- TOAD命令行方式导出文件
- 参数os_authent_prefix是用来做什么的?如何使用?
- 一個正則
SQL> create table t_20(upcode varchar2(20),ditem varchar2(20),xialiao varchar2(10),name varchar2(20)
);表已创建。SQL> desc t_20;
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
UPCODE VARCHAR2(20)
DITEM VARCHAR2(20)
XIALIAO VARCHAR2(10)
NAME VARCHAR2(20)SQL> alter table t_20 add primary key(upcode,ditem,xialiao);表已更改。SQL> desc t_20;
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
UPCODE NOT NULL VARCHAR2(20)
DITEM NOT NULL VARCHAR2(20)
XIALIAO NOT NULL VARCHAR2(10)
NAME VARCHAR2(20)建成主键后都不为空了第二个借用的没理解啥意思
建为主键的字段是不能为null的,但是 建为unque的字段是可以有null值的。
如果你的联合主键中的xialiao 如果有为空的情况
你必须重新考虑这个联合主键的组合;或者想办法让xialiao不为空。
比如upcode是父节点 dcode是孩子节点 ditem 是这个dcode在upcode中排在第几位
[code=BatchFile]
序号 upcode dcode dname ditem 材料
xialiao
7 TSK254-11-11-000 TSK254-11-11-001 门侧板(左) 2
9 TSK254-11-11-001 垫板 4X80X100 2 热轧耐侯钢板 4-09CuPCrNi-B 4*80*100
10 TSK254-11-11-001 垫板 4X80X220 3 热轧耐侯钢板 4-09CuPCrNi-B 4*80*220
11 TSK254-11-11-000 TSK254-11-11-001 门侧板(右) 3
13 TSK254-11-11-001 垫板 4X80X100 2 热轧耐侯钢板 4-09CuPCrNi-B 4*80*110
14 TSK254-11-11-001 垫板 4X80X220 3 热轧耐侯钢板 4-09CuPCrNi-B 4*80*200
[/code]
当为上面这种情况的时候 我能不能唯一确定他们之间对应关系?
dcode=TSK254-11-11-001 dname=门侧板(左)的xialiao为4*80*100 4*80*220
dcode=TSK254-11-11-001 dname=门侧板(右)的xialiao为4*80*110 4*80*200
相当于一个dcode对应两种xialiao
请问这种情况 我该如何在表中去实现?
这种情况,你查询的时候,根据dname字段不就可以查询出不同的数据吗?一个是 门侧板(左) 一个 门侧板(右)啊,数据不重复了吧!
基于他的孩子节点的话
他们的dname还是一样的!例如:6楼的9/10/13/14这四条记录而言