今天在CSDN看到了一个帖子,内容如下:
在SQL
2005
两个表中建立一个视图,其中视图中的一个字段为两个表字段的合并(taba.field1
+
'
--
'
+
tabb.field1
as
v.field1),在DELPHI下的Clientdataset中的v.filed1无法修改或插入,出现错误为:Field
'
Field1
'
cannot edit;
关于视图修改限制的解释如下:
1、通过视图修改数据时,视图不能影响一个以上的基础对象。假设视图A是基于表table1和表table2创建的。那么,你可以通过视图A修改table1的数据,或者修改table2的数据。但不允许同时修改table1和table2的数据。
2、 对某些列不能进行修改。这些列是:计算值、内置函数和行集合函数。
3、 影响具有NOT NULL列的修改时会出错。在通过视图修改或插入数据时,必须保证未显
示的列有值。假设:我们在table1上创建了一个视图,table1有三列: c1、c2和c3。视图是创建在c1和c2上。那么,通过视图对table1插入数据时,必须保证c3有值(可以是缺省、NULL、IDENTITY或TIMESTAMP),否则不能向视图中插入行。
4、删除基础对象不删除视图。建议采用与表明显不同的名字命名视图。