fannifan 2012-07-09 16:57
浏览 257
已采纳

为什么不能我的sqlite不能创建主外键关联。。。

一下是我写的代码。。。创建主外键的关联  或者谁有个可以运行的例子给我介绍下也行。。。。。

db.execSQL("create table "+OnlineTable+
    "("+videoId +" integer primary key autoincrement,"
    +name+" text,"+type+" text,"+region+" text,"+year+
    " text,"+actor+" text,"
    +television+" text,"+introduction +" text,"+
    collection+" text ,"
    +number+" integer not null,"

    +"foreign key ("+number+") references "+JujiTable+"("+number+"))");

  db.execSQL("create table "+JujiTable+
    "("+number+" integer primary key,"
    +webside+" text,"+link+" text)");

  //创建添加的触发器
  db.execSQL("create trigger fk_Movie_deptid " +
    "before insert on "+OnlineTable+" for each row begin " +
    "select case when ((select "+number+" from "+JujiTable+
    " where "+number+"=new."+number+")is null) then raise " +
  "(abort,'foreign key violation') end;end");

  //创建触发器
  db.execSQL("create trigger fk_Movie_deptid " +
    "after insert on "+OnlineTable+" for each row begin " +
    "select case when ((select "+number+" from "+JujiTable+
    " where "+number+"=new."+number+")is null) then raise " +
  "(ABORT,'Foreign Key Violation') end;end");


  //创建视图
  db.execSQL("create view "+ viewEmps+" as select "+OnlineTable+"."+videoId+" as _id,"
    +
    ""+OnlineTable+"."+type+","+
    OnlineTable+"."+actor+","
    +OnlineTable+"."+name+","
    +OnlineTable+"."+number+","
    +OnlineTable+"."+television+","
    +OnlineTable+"."+year+","
    +OnlineTable+"."+introduction+","
    +OnlineTable+"."+collection+","
    +OnlineTable+"."+region+","+
    ""+JujiTable+"."+webside+","
    +JujiTable+"."+number+","
    +JujiTable+"."+link+""
    +" from "+OnlineTable+
    " join "+JujiTable+" on "+OnlineTable+"."+number+"="+JujiTable+"."+number+"");

 

  • 写回答

1条回答 默认 最新

  • guazixing 2012-07-10 10:09
    关注

    你是想创建主外键关系吗?应该是现有主键表,再有外建表,你这样不是成了现有外键,再有主键了,应该不行。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥60 pb数据库修改或者求完整pb库存系统,需为pb自带数据库
  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路