我试了以下,好像不可以。
我的语句是:
update t_indemnityinfo,t_feelogset t_indemnityinfo.checkflag = '0'
t_feelog.opttype = "20"where t_indemnityinfo.payableno = t_feelog.payableno
and t_feelog.payableno = "CDAA200211022800/02073"提示语法错误,在两个表名之间
我的语句是:
update t_indemnityinfo,t_feelogset t_indemnityinfo.checkflag = '0'
t_feelog.opttype = "20"where t_indemnityinfo.payableno = t_feelog.payableno
and t_feelog.payableno = "CDAA200211022800/02073"提示语法错误,在两个表名之间
解决方案 »
- 菜鸟提问个问题
- T-SQL怎样在查询结果中不显示空值
- sql server 2005的二个疑问
- 求大神帮忙啊
- IBM服务器Xeon2.8cpu,1G内存,SQLserver2000。在SQL中有个数据表有144万记录,在SQL的查询分析器中用条件为“where year(日期数据列)=20
- ===============存储过程中 set @Num = @Num + 1 的问题========================
- 求一存储过程
- MS SERVER 事务回滚
- 在这一子查询或聚合表达式中,text、ntext 和 image 数据类型无效。 怎么办?
- 问几个典型数据库问题!
- 甚为苦恼,请高手指点
- 请问SQLServer7.0最多可注册多少user?
However, there would be some concurrency trouble need to considered in your application.
如楼上各位所述的触发器(Trigger). 或是透过存储过程(Stored
Procedures)专做有关的更新
you test following :update a set a.field1= values from table1 a,table2 b
where a.XXX=b.XXX
下例禁用用于限制可接受的薪水数据的约束。WITH NOCHECK CONSTRAINT 与 ALTER TABLE 一起使用,以禁用该约束并使正常情况下会引起约束违规的插入操作得以执行。WITH CHECK CONSTRAINT 重新启用该约束。CREATE TABLE cnst_example
(id INT NOT NULL,
name VARCHAR(10) NOT NULL,
salary MONEY NOT NULL
CONSTRAINT salary_cap CHECK (salary < 100000)
)-- Valid inserts
INSERT INTO cnst_example VALUES (1,'Joe Brown',65000)
INSERT INTO cnst_example VALUES (2,'Mary Smith',75000)-- This insert violates the constraint.
INSERT INTO cnst_example VALUES (3,'Pat Jones',105000)-- Disable the constraint and try again.
ALTER TABLE cnst_example NOCHECK CONSTRAINT salary_cap
INSERT INTO cnst_example VALUES (3,'Pat Jones',105000)-- Reenable the constraint and try another insert, will fail.
ALTER TABLE cnst_example CHECK CONSTRAINT salary_cap
INSERT INTO cnst_example VALUES (4,'Eric James',110000)
WITH CHECK | WITH NOCHECK
指定表中的数据是否用新添加的或重新启用的 FOREIGN KEY 或 CHECK 约束进行验证。如果没有指定,对于新约束,假定为 WITH CHECK,对于重新启用的约束,假定为 WITH NOCHECK。 WITH CHECK 和 WITH NOCHECK 子句不能用于 PRIMARY KEY 和 UNIQUE 约束。 如果不想用新 CHECK 或 FOREIGN KEY 约束对现有数据进行验证,请用 WITH NOCHECK,除了个别情况,不建议这样使用。新约束将在以后的所有更新中生效。任何在添加约束时由 WITH NOCHECK 抑制的约束违规都可能导致将来的更新失败,如果这些更新操作要更新的行中包含不符合约束条件的数据。 查询优化器不考虑用 WITH NOCHECK 定义的约束。将忽略这些约束,直到使用 ALTER TABLE table CHECK CONSTRAINT ALL语句重新启用这些约束为止。上例是用Transact-SQL语句的方法,下面是在企业管理器中的方法。对 INSERT 和 UPDATE 语句禁用外键约束
如果知道新数据将违反约束或约束仅应用于数据库中的现有数据,则选择该选项以在 INSERT 和 UPDATE 事务期间禁用外键约束。对 INSERT 和 UPDATE 语句禁用外键约束
1、在数据库关系图中,右击包含外键的表,然后从快捷菜单中选择"属性"命令。
-或-
为包含要修改的外键的表打开表设计器,在表设计器中右击,然后从快捷式菜单中选择"属性"命令。
2、选择"关系"选项卡。
3、从"选定的关系"列表中选择关系。
4、清除"对 INSERT 和 UPDATE 强制关系"复选框。
5、保存。
添加或修改数据后,若要确保约束能应用到后续的数据修改中,应该选择该选项。
注意 如果打算使用触发器执行数据库操作,则必须禁用外键约束才能使触发器运行。
级联更新相关的字段
无论何时更新主键值,都指示 DBMS 自动更新该关系的外键值。在企业管理器中
1、在数据库关系图中右击与要修改的外键对应的关系,然后从快捷菜单中选择"属性"命令。
-或-
为包含要修改的外键的表打开表设计器,在表设计器中右击,然后从快捷式菜单中选择"属性"命令。
2、选择"关系"选项卡。
3、从"选定的关系"列表中选择关系。
4、选中"级联更新相关的字段"复选框。
5、保存。如果要用语句改为级联更新的话,请参考 ALTER TABLE 语句。
http://www.csdn.net/Expert/TopicView1.asp?id=818989