sql server 2005 多条件更新数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql server 2005 多条件更新数据库相关的知识,希望对你有一定的参考价值。

SELECT dbo.TB_READER.sName, dbo.TB_TA_DEVICE_EVENT_KEY.sEventName, dbo.TB_USER.sUserID, dbo.TB_EVENT_LOG.nDateTime, DATEADD(ss,
dbo.TB_EVENT_LOG.nDateTime, '1970-01-01') AS kqdatetime, dbo.TB_EVENT_LOG.IsRead
FROM dbo.TB_EVENT_LOG INNER JOIN
dbo.TB_READER ON dbo.TB_EVENT_LOG.nReaderIdn = dbo.TB_READER.nReaderIdn INNER JOIN
dbo.TB_TA_DEVICE_EVENT_KEY ON dbo.TB_EVENT_LOG.nReaderIdn = dbo.TB_TA_DEVICE_EVENT_KEY.nReaderIdn INNER JOIN
dbo.TB_USER ON dbo.TB_EVENT_LOG.nUserID = dbo.TB_USER.sUserID
WHERE (dbo.TB_TA_DEVICE_EVENT_KEY.nKeyIdn <> 3) AND (dbo.TB_USER.sUserID <> 1) AND (dbo.TB_USER.sUserID <> 2) AND (dbo.TB_USER.sUserID <> 3) AND
(dbo.TB_EVENT_LOG.IsRead IS NULL)

这是一个视图,关联着多张表,现在我要根据这个视图上的所有条件来更新TB_EVENT_LOG表的 IsRead 字段为 'yes' (isread字段是char型)
select id from vwX where isRead ='Yes' 查询视图 这样的语句是错误的啊
消息 208,级别 16,状态 1,第 1 行
对象名 'CSV_View' 无效。

参考技术A 看着总是晕晕的,不太想看

update TB_EVENT_LOG
set ??=??
where id in (select id from vwX where isRead ='Yes')
如果你的TB_EVENT_LOG里一个键为id,查询句就如上了, vwX 表示你现在的视图

以上是关于sql server 2005 多条件更新数据库的主要内容,如果未能解决你的问题,请参考以下文章

将 Excel 数据上传到 SQL Server 2005 时出错

sql server 2005 2709 出错 是啥意思

SQL SERVER 2005删除重复数据

在 SQL Server 2005 express 中使用连接

SQL Server 2005:哪个更快?条件超过 2 列或超过 2 行?

将现有 SQL Server 2005 数据库中的数据类型 varchar 更改为 nvarchar。有啥问题吗?