做完的系统当把表全部倒到sql server后,修改BDE指向sql server后,
运行就报错:Q_lb: Field "typename" not found .打开源程序发现
TTable控件连接sql server表没问题,不知道是什么问题,需要修改什么,
望大虾指点!!

解决方案 »

  1.   

    如何创建触发器请各位大虾帮忙!!!!!!!
    adoquery.Close;
          adoquery.SQL.Clear;
          adoquery.SQL.Add('select name from '+DatabaseName+'.dbo.sysobjects where xtype=''TR'' and name=''sp_Archive''');
          adoquery.Open;
          ShowHint('初始化系统数据....',240);
          if adoquery.RecordCount>0 then
          begin
            adoQuery.Close ;
            adoQuery.SQL.Text:='drop trigger sp_Archive';
            adoQuery.ExecSQL;
          end;
      

  2.   

    原来是access,我发现报错的字段typename是系统里面的一个窗体所用到的,
    在access中是test类型,在sql server中转成了nvarchar,在调用.fieldbyname("TypeName").asString方法时出错,我觉得好像没什么问题,不知道是为什么?
      

  3.   

    TYPENAME字段名没有找到还在你的类型有问题
      

  4.   

    双击table,打开字段编辑器,全部删除后重新增加就可以了
      

  5.   

    在Delhpi中'TypeName' 和"TypeName"好像不一样,是不是fieldbyname('TypeName').asstring
      

  6.   

    在access中TypeName 是text型字段,在sql 中是nvarchar(16),
    类型转换有什么问题吗?
      

  7.   

    我也有这样的问题,在SQL中字段是nchar类型,导到ACCESS中是text类型,在SQL中编译没问题,在ACCESS中提示错误的类型转换,不知道到底是什么问题。