Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

帮忙看看这个sql语句错在那里,为什么运行不了,谢谢

阿布哈三  发表于:2010-06-02 09:54:53  
复制

我用的是 access 2003

alter table 合同管理  add [员工状态]
go
update 合同管理
set [员工状态]  = 花名册.[员工状态]
from 花名册, 合同管理
where  花名册.身份证 = 合同管理.身份证


我的目的是把 表 花名册 里面的员工状态 ,更新到 表合同管理里面
谢谢

 

Top
陈福祥 发表于:2010-06-03 12:38:14

你的这个语句是 T-SQL语句,在SQL Server里可能可以运行(我没有去测试)。但Access的SQL语句与T-SQL语句还是有点区别的,我在Access里测试时,修改表结构与更新表操作是不能在同一个查询里实现的(这是我的理解,不知是否正确)。

最好还是将你的两个操作分开进行:

第一个操作修改表结构(我给你加了个数据类型,即是否型):

 

alter table 合同管理  add 员工状态 bit;

 

第二个操作,更新基础表数据:

 

UPDATE 合同管理, 花名册 SET 合同管理.员工状态 = [花名册].[员工状态] WHERE ((合同管理.身份证)=[花名册].[身份证]);


 



总记录:1篇  页次:1/1 9 1 :