写错了,sales_id应该改为other_id!

解决方案 »

  1.   

    Constraint ---------- 当...唉呀,让别人说吧,我说不清:-)
      

  2.   

    1.你用ON DELETE CASCADE 的前提应该是已经定义了主外键关系。而用SQL语句定义外键及其参照主键的方法就是用CONSTRAINT,不过这个关键字可以省略而已。
    CREATE TABLE TB
    (COL1 DATATYPE,
      COL2 DATATYPE [CONSTRAINT 约束名]
        foreign key references OtherTable(COL)

    甚至FORGEIGN KEY也可以省略。
    你以前可能是用企业管理器创建了主外键关系或省略了CONSTRAINT关键字,所以感觉不到它的存在。  2.在定义了主外键约束之后,对表的删除操作可能有:
    ·删除主键值时级联删除外键所在行,即ON DELETE CASCADE
    ·当有外键引用主键值时不允许删除该主键值,删除操作回滚用ON DELETE NO ACTION,这也是默认的选项3.定义了外键约束之后,除对主表的删除操作之外,其他的一些操作也会收到约束,如对主键值的修改、对外键表的插入和更新等,DELETE只是一个方面。4.在SQL中除外键约束外,还有四类约束:
    ·唯一约束 UNIQUE
    ·主键约束 PRIMARY KEY
    ·默认值约束 DEFAULT
    ·检查约束  CHECK
    同样,在语句中的‘CONSTRAINT 约束名’都可省略,所以你可能经常用到约束,
    但不知道那就是CONSTRAINT罢了。