最好有详细的格式例子,多谢各位。
用于C/S结构的客户端
目的是先由edit1中输入一个学号,然后将dbgrid1中对应学号的‘学号’和‘学生姓名’及dbgrid2中当前纪录的‘课程号’、‘课程名’、‘学分’插入到选课表中。dbgrid1中显示的是选课表SC中学号与edit1中学号相同的所有纪录,dbgrid2中显示Course表中的所有纪录。ClientDataSet1与服务器端的DataSetProvider1相连,DataSetProvider1与ADOQuery1相连。在客户端ClientDataSet1与DataSource1相连,DataSource1连接dbgrid1ClientDataSet2与服务器端的DataSetProvider2相连,DataSetProvider2与ADOQuery2相连。在客户端ClientDataSet2与DataSource2相连,DataSource2连接dbgrid2.有个选课按钮,想达到一按选课按钮就可以将dbgrid1中对应学号的‘学号’和‘学生姓名’及dbgrid2中当前纪录的‘课程号’、‘课程名’、‘学分’插入到选课表中。

解决方案 »

  1.   

    多谢解答,这个我也知道啊,以前在桌面程序中做过,但是现在是C/S啊,不知道该怎么弄了。看到网上有用
    ClientDataSet的,可是他的insert方法怎么用不了解啊。我用它的datarequest方法传递过参数,可是这个不用传递参数啊。想过在服务器的datasetprovider方法的ondatarequest事件上编写一个函数,然后直接在客户端通过按钮调用,可又不知道怎么弄,唉,愁死我了
      

  2.   

      with clientmodule.DataModule1.ClientAddDataSet  do
        begin
         close;
         CommandText:='insert into ConsumptionList(CL_TableName,CL_DishesName,CL_Price,CL_Discount,CL_Num,CL_Amount,CL_Time,CL_People,CL_Checkout) values(''T004'','''+trim(dishname)+''',:p,:d,'+'1'+',:a,getdate(),''***'',''N'') ';
         Params.ParamByName('p').Value:= price;
         Params.ParamByName('d').Value:= discount;
         Params.ParamByName('a').Value:= amount;
         Execute;
        end