比如我有2个表 一个Login  一个Settings
Login中ID为主建Settings为外建
string Sqlselect = "select * from Login,Settings where Login.ID = Settings.ID";
但我想在Settings中插入条记录
string Sql = "insert Settings(ID) values('" + ID.Text + "')";
但是如果插入的ID Login中  不存在报错 存在就成功
 在.NET中这该如何用C#语言来写呢
请大大们帮忙拉嘿嘿  谢谢 偶一直在线的哦

解决方案 »

  1.   

    1 .try  -------catch2.  throw(Exception)3.  先select ,在insert !4    我也想知道!
      

  2.   

    .......1,2,3我知道可是不知道要怎么取到select的值  把他拿去判断
      

  3.   

    两种方法
    1,写个存储过程
    create procedure my_Sp
       @ID varchar(??),
       @return bit out
    as 
    begin
       set @return=0
       select * from Login where ID=@ID
       if(@@rowcount>0)
       begin
          insert into Settings(ID) values(@ID)
          @return=1
       end
       return
    end
    go
    根据返回值判断是否成功。
    2,先select 如果存在就插入,不存在就报错,不知道怎么获得select中的值是你基础没学好,看看ADO.NET吧。
      

  4.   

    有比较好的ADO.NET介绍吗  没学过    .NET也是正在学
    还没教过存储过程  汗~~有点不明白
      

  5.   

    string sql = "select count(1) from Settings where ID='"+ID.Text+"'";
    if(SQL返回的结果>0)
    {
     MessageBox.Show("ID不允许重复!");
    }
    else
    {
       sql = "insert Settings(ID) values('" + ID.Text + "')";
       执行
    }
    最好在这两句执行前使用事务.
      

  6.   

    ADO.NET在帮助文档上有很好的教程.