请问大虾 如果我想动态的多行向数据库中写数据 该怎么写SQL语句呢
行数是不定的

解决方案 »

  1.   

    开启连接的事务功能写入看看:
    ...
    begin
      ADOConnection1.BeginTrans;
      try
        {同楼上,用个循环在这里写入}
        ADOConnection1.CommitTrans
      except
        ADOConnection1.RollbackTrans;
      end;
    end;
      

  2.   

    例如:表a   
    id    name 
    1     张三
    2     李四
    3     王五
    如想插入b表
       name  
    你可以用select出你想要的结果,如果我想插入id<3的
    insert  into  b 
    select  name  
    from  a 
    where  id<3  
      

  3.   

    用一个标志量来判断插入完了没啊
    flag:boolean;while flag do
    begin
    ……………………执行插入一行操作
    当满足你的条件时在里面改变flag的值,使循环停止
    end;
      

  4.   

    把你的帖子转移到"数据库开发\MS-SQL SERVER "下,有高手能给你个SQL例子的!或者去搜搜看。
      

  5.   

    关键是循环语句怎么写呢?
    ----------------------------
    while I > 0 do
    begin
      //循环体
    end;while not Eof(InputFile) do
    begin
      //循环体
    end;for J := 1 to 10 do
    begin
      //循环体
    end;repeat
      //循环体
    until J = 0;
      

  6.   

    用循环了。
    如果用ADO则可以设置TypeLock为ltOptionBatch(这样数据安全点),则Post后还必需用到UpdateBatch;
    再用Weizi2000的方法采用事务
      

  7.   

    我是在窗体中放一个StringGrid组件,要想添加多少房间就在StringGrid中写明,完后再由楼上的方法事务处理添加就行了。当然是for 循环了 呵呵  我的QQ 是 272733007 联系时注明 delphi 程序员字样
      

  8.   

    楼主用我说的Sql就能Ok啊。把你想要插入的语句先select出来,按你想插入的表中, 然后用
    insert  into  test(字段1,字段2)
    select  字段1,字段2 
    from  表1,表2 
    where  条件