首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

ddelphi7,ORACLE数据库中ID值已经超过9位数字,如何避免。

2012-03-09 
ddelphi7,ORACLE数据库中ID值已经超过9位数字,如何处理。。。我用ADO控件,发现while not ADOQuery2.Eof dobeg

ddelphi7,ORACLE数据库中ID值已经超过9位数字,如何处理。。。
我用ADO控件,发现
  while not ADOQuery2.Eof do
  begin
  RawID := ADOQuery2.FieldByName('id').AsInteger;
  SqlStr := 'delete from d_blogger b where b.id = ' + IntToStr(RawID)
  + ' and b.c_sort = ' + '''' + '普通' + '''';
  with ADOQry_Del do
  begin
  Close;
  Sql.Clear;
  Sql.Add(SqlStr);
  try
  ExecSQL;
  except
  Memo2.Lines.Add('ID: ' + IntToStr(RawID));
  Memo2.Lines.Add('');
  ADOQuery1.Next;
  Continue;
  end;
  end;

  ADOQuery2.Next;
  end;
上面的RawID已经超过Float的类型大小范围,也就是说ID值已经过亿,如果解决这个问题?

[解决办法]
D7没法解决这个问题,请使用别的高级版本!
[解决办法]
如果id无须按大小排序,建议使用字符型
否则使用8位的bigint,一般数据库都支持,对应delphi中的Int64数据类型

热点排行