我有两个表,一个是库存信息表,一个是借用信息表,我现在想做的是在借用时首先要判断库存里有没有这条信息,要是没有给用户提示不能操作。
EG:
CREATE  table T(name varchar(10),QTY FLOAT) 
CREATE  table TT(name varchar(10),QTY FLOAT) 
--库存 
insert T select '121', 20 
insert T select '122', 30 
insert T select '123',40 
insert T select '124',20 
--借用 insert TT select '122', 20 
insert TT select '123', 50 
在插入一条记录
insert TT select '127', 20 
这条记录在库存表中书找不到的,现在我就想提示用户不能借用‘127’,该怎么做呢
希望得到各位的帮忙,小女子 感激不尽

解决方案 »

  1.   

    在TT建触发器判断,不能借用就返回raise error
      

  2.   


    --自己判断或加外键约束
    CREATE  table T(name varchar(10) primary key,QTY FLOAT)
    CREATE  table TT(name varchar(10) references T(name) ,QTY FLOAT) 
      

  3.   

    ALTER TABLE 语句与 COLUMN FOREIGN KEY 约束 'FK_TT' 冲突。该冲突发生于数据库 'sbglxt',表 'T', column '名称'。
    这个怎么解决呢
      

  4.   

    这说明你这个表的某个字段已经被其他字段引用,所以先drop掉外键约束,然后在alter table
      

  5.   

    select TT.name
    from
        TT
    left join
        T
    on
        TT.name=T.name
    where
        T.OUTY is null从上面查询里就可以找到在TT表里有,而在在库表里没有的产品号,人后通过前台程序判断一下就可以了.