我用my sql+delphi,为什么在我查询返回为0时,出现错误如下“invalid field size”呢,如:select * from base_table where bc_name=''djh''如果没有找到侧出错,如果找到了又没事。而我直接用 select * from base_table  如果里面没有记录也就是为0时它没出错。总之如果用了where 后如果查询为0,就出错。请问高手谁能帮我解决这个问题。50马上给 
急急急急急急3急急急急急急急急3急急

解决方案 »

  1.   

    你的query或是adoquery中的字段是不是与sql语句中的查询字段尺寸不对应
      

  2.   

    先说说通过什么方式连接数据库的?MySql是什么版本!!
      

  3.   

    我用的时mysql3.5.2 版本,用ado通过odbc连接。哈哈我自己搞定了。是这样的原因:char类型不行只能用varchar类型,奇怪为什么不知道。你们都没有答对,我等等再问一个问题。解决马上给分。
      

  4.   

    兄弟们,谁能告诉我access怎么备份和恢复数据,最好写一段代码。谁能告诉我。吗上给分50 分。请快快。
      

  5.   

    procedure TForm1.Button1Click(Sender: TObject);
        begin
          if OpenDialog1.Execute then
          begin
            try
              adoconnection1.Connected:=True;
              with adoQuery1 do
              begin
                Close;
                SQL.Clear;
                SQL.Add('Backup DataBase sfa to disk ='''+opendialog1.FileName+'''');
                ExecSQL;
              end;
            except
              
            Exit;
            end;
          end;
          end;
        procedure TForm1.Button2Click(Sender: TObject);
        begin
          if OpenDialog1.Execute then
          begin
            try
             adoconnection1.Connected:=true;
              with adoQuery1 do
              begin
                Close;
                SQL.Clear;
                SQL.Add('Restore DataBase sfa from disk ='''+opendialog1.FileName+'''');
                ExecSQL;
             end;
           except
          
             Exit;
           end;
         end;
         end;