在SQL 2005 两个表中建立一个视图,其中视图中的一个字段为两个表字段的合并(taba.field1+' -- '+tabb.field1 as v.field1),在DELPHI下的Clientdataset中的v.filed1无法修改或插入,出现错误为:Field 'Field1' cannot edit;

解决方案 »

  1.   

    i am waiting the answer
      

  2.   

    楼主是这样用数据库的?强
    按一般规则,View的数据是仅供查询及显示的,最好不要直接进行修改;可以通过SQL的Update语句进行增、删、改等操作。
      

  3.   

    你对视图的用法错了视图修改限制
    1、通过视图修改数据时,视图不能影响一个以上的基础对象。假设视图A是基于表table1和表table2创建的。那么,你可以通过视图A修改table1的数据,或者修改table2的数据。但不允许同时修改table1和table2的数据。
    2、 对某些列不能进行修改。这些列是:计算值、内置函数和行集合函数。
    3、 影响具有NOT NULL列的修改时会出错。在通过视图修改或插入数据时,必须保证未显
    示的列有值。假设:我们在table1上创建了一个视图,table1有三列: c1、c2和c3。视图是创建在c 1和c 2上。那么,通过视图对table1插入数据时,必须保证c3有值(可以是缺省、NULL、I D E N T I T Y或T I M E S TA M P),否则不能向视图中插入行。
    4、删除基础对象不删除视图。建议采用与表明显不同的名字命名视图。