利用bde-odbc连接一sqlserver数据库。
table 的tablename指定t_*** .注意不是dbo.t_***;
在table.efresh时会报错(table does not support the operation because it is not uniquel indexed);指定到dbo.t_***时是ok的。
是不是我登录用户的权限不够啊?
是不是非要制定到dbo.t_***?注:(我的tablename是程序赋值的,不是直接从数据库中选择)

解决方案 »

  1.   


    我的tablename是程序赋值的,不是直接从数据库中选择//?
    这里这表是存在的么?还是动态创建的?问题就应该在这里了,你是对以前的表重命名还是新建?
      

  2.   

    回 whbo(王红波(年轻人,要有所作为)) :表是存在的。
      

  3.   

    reflash改为
    试试var
      tmp: string;
    begin
      tmp:=Table1.BookMark;
      Table1.close;
      Table1.open;
      try
        Table1.BookMark:=tmp;
      except  
      end;
    end;
    或改为Ado连接
      

  4.   

    because it is not uniquel indexed);不是提示你没有合法的索引吗。呵呵。
      

  5.   

    table does not support the operation because it is not uniquel indexed
    你先理解了这句话
      

  6.   

    没这样用过
    我一直这样Ttable.active:=false;
    Ttable.active:=true;