我现在数据库有三个字段,类型为integer
学历评分+专业评分=总分,
通过DBRadioGroup控件与数据库连接,
想在点下DBRadioGroup时就自动把数据库学历评分的值与专业评分的值相加,然后把两者的和附给总分,总分用DBEdit显示,
这样的SQL语句怎么写呀!请指点

解决方案 »

  1.   

    update 表 set 总分 = 学历评分+专业评分 where ...
      

  2.   

    TO: txlicenhe(马可) 你的那句代码不行呀!出错提示如下:
    DBISAM Engine Error # 11949 SQL error - type mismatch between column '学历评分' and constant'专业评分'in update values.
      

  3.   

    这样写不行呀!,是错在哪里呀!请指点。
    with Query1 do
    begin
    SQL.Clear;
    SQL.Add('UPdate table1 set 总分=学历评分+专业评分');
    ExecSQL;
    Open;
    close;
    end;
      

  4.   

    这么简单的问题,靠!我来!
    with Query1 do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Update Table1 set 总分 = 学历评分+专业评分');
      ExecSQL;
      Close;
      SQL.Clear;
      SQL.Add('select * from table1');
      Open;
    end;
      

  5.   

    人家的sql语句正确。学历平分和专业平分 总分是不是字段名??
      

  6.   

    我最终目的是想在点下DBRadioGroup1学历评分,DBRadioGroup2专业评分时自动把
    学历评分和专业评分相加,结果显示在总分DBEdit1里。
    还DBRadioGroup的数据源连接是Query1吗?TO:rockswj(石头)学历平分和专业平分 总分是字段名。
      

  7.   

    其实是一个简单的问题,如果是我,则不会设计一个总分字段,因为DELPHI有计算字段,如果非要有这么一个总分字段,也可以在SQL中把它设为计算字段,再退一步来讲,还可以用Trigger!
    为什么非得要加入一个违反第3范式的东西!
      

  8.   

    TO: walterh() 不管什么办法只要能实现以下的就可以了,请指点。
    我最终目的是想在点下DBRadioGroup1学历评分,DBRadioGroup2专业评分时自动把
    学历评分和专业评分相加,结果显示在总分DBEdit1里。
    还DBRadioGroup的数据源连接是Query1吗?TO:rockswj(石头)学历平分和专业平分 总分是字段名。
      

  9.   

    我还是弄不好,谁能给个例子呀!
    [email protected]
      

  10.   

    先用select * From 表 where ......在数据库找出符合条件的记录,然后将DBRadioGroup1学历评分和DBRadioGroup2专业评分相加就行了啊
      

  11.   

    TO:lushaox(lushaox)
    不是即时相加我已经作出来了,但我现在要的是即时出现总分的值,就是说先点下DBRadioGroup1,再点下DBRadioGroup2时两者之和就要显示在DBEdit里了,
      

  12.   

    假定DBRadioGroup2.DataSource.DataSet为Table1
    procedure TForm1.DBRadioGroup2Change(Sender: TObject);
    begin
      Table1.FieldByName('总分').Value := Table1.FieldByName('专业平分').AsInteger +  
                                          Table1.FieldByName('学历平分').AsInteger;
    end;