ADOQUERY1连接的是sql server的视图,insert主表的一条记录后,视图表中的对应的其他字段无法刷新。如用close,open可以解决问题(或requery),但因为我在sql中用了“select * From view_zjc where 1<>1”,作用是只显示本次输入的记录(这在进销存中应该常用到吧),用close,open的话,刚输入的记录就显示不出来了。如果有信心,请在下列中up一次,两次的分数都给你
http://expert.csdn.net/Expert/topic/2279/2279071.xml?temp=.4471094
http://expert.csdn.net/Expert/topic/2279/2279071.xml?temp=.4471094
解决方案 »
- Delphi SQL 批量插入
- 关于INDY求助
- 请问程序运行时有时候出现这样的提示‘Access violation at address 77D3353D in module'user32.dll' read of address 00000000’,是什
- 菜单问题,超级郁闷。。大家来看看
- 数据集刷新问题,急!!
- 关于exe文件
- ★《Delphi5 开发人员指南》上的一段代码,没看懂,前来问问!
- 新手问题,请各位帮忙。在线等待,多谢!
- 用過dxDBGrid和dxComponentPrinter的朋友請進,如何用這二個控件進行打印時打印出總匯總和按頁匯總
- 关于tqrband的问题
- 急!在NT Application Service程序里如何取得当前程序的路径?(用GetDir得到的是Window Service控制台程序的路径?!)
- fastreport 打印出现空白页面,急,谢谢!
不使用 INSTEAD OF 触发器或可更新分区视图而通过视图修改数据之前,请考虑下列准则: 如果在视图定义中使用了 WITH CHECK OPTION 子句,则所有在视图上执行的数据修改语句都必须符合定义视图的 SELECT 语句中所设定的条件。如果使用了 WITH CHECK OPTION 子句,修改行时需注意不让它们在修改完成后从视图中消失。任何可能导致行消失的修改都会被取消,并显示错误信息。
SQL Server 必须能够明确地解析对视图所引用基表中的特定行所做的修改操作。不能在一个语句中对多个基础表使用数据修改语句。因此,列在 UPDATE 或 INSERT 语句中的列必须属于视图定义中的同一个基表。
对于基础表中需更新而又不允许空值的所有列,它们的值在 INSERT 语句或 DEFAULT 定义中指定。这将确保基础表中所有需要值的列都可以获取值。
在基础表的列中修改的数据必须符合对这些列的约束,如为空性、约束、DEFAULT 定义等。例如,如果要删除一行,则相关表中的所有基础 FOREIGN KEY 约束必须仍然得到满足,删除操作才能成功。
分布式分区视图(远程视图)不能使用键集驱动游标更新。此项限制可通过在基础表上而不在视图本身上声明游标得到解决。
此外,如果在视图中删除数据: 在视图定义的 FROM 子句中只能列出一个表