触发器错误--无法绑定由多个部分组成的标识符

moxiaojie8 2011-07-27 04:53:16
请高手指点怎么解决以下错误,谢谢!
CREATE TRIGGER PURTDMO ON PURTD
AFTER UPDATE,INSERT,DELETE AS
BEGIN
SET NOCOUNT ON
UPDATE PURTD
SET TD014=k.TB012
FROM INSERTED T,PURTD A,PURTB K,PURTR M
WHERE T.TD001=A.TD001
AND T.TD002=A.TD002
AND T.TD003=A.TD003
AND K.TB001=M.TR001
AND K.TB002=M.TR002
AND K.TB003=M.TR003
AND T.TD001=SUBSTRING(TR019,1,4)
AND T.TD002=SUBSTRING(TR019,6,11)
AND T.TD003=SUBSTRING(TR019,18,4)
AND T.TD004=K.TB004
SET NOCOUNT OFF
END

错误:消息 4104,级别 16,状态 1,过程 PURTDMO,第 6 行
无法绑定由多个部分组成的标识符 "k.TB012"。


SELECT A.TD001,A.TD002,A.TD003,K.TB012+'---'+K.TB030 TD014 FROM PURTD A,PURTB K,PURTR M
WHERE K.TB001=M.TR001
AND K.TB002=M.TR002
AND K.TB003=M.TR003
AND A.TD001=SUBSTRING(TR019,1,4)
AND A.TD002=SUBSTRING(TR019,6,11)
AND A.TD003=SUBSTRING(TR019,18,4)

显示结果:
TD001 TD002 TD003 TD014
3301 20110700086 0001 FO:0366---FO:0366/11
3301 20110700079 0001 FO:0366---FO:0366/11
3301 20110700079 0002 FO:0366---FO:0366/11
3301 20110700292 0002 ---
3301 20110700292 0003 ---
3301 20110700296 0002 ---
3301 20110700294 0003 ---
3301 20110700294 0006 ---
3301 20110700294 0008 ---
3301 20110700295 0003 ---
3301 20110700016 0001 FO:0457/0382/0286---
3301 20110700016 0002 FO:0457/0382/0286---
3301 20110700016 0003 FO:0435---FO:0435/11
3301 20110700015 0001 FO:0427/0440---
3301 20110700015 0003 FO:0427/0440---
3301 20110700015 0005 FO:0457/0382/0286---
3301 20110700015 0006 FO:0457/0382/0286---
3301 20110700015 0007 FO:0435---FO:0435/11
3301 20110700015 0008 FO:0435---FO:0435/11
3301 20110700015 0002 FO:0427/0440---
3301 20110700015 0004 FO:0427/0440---
3301 20110700147 0002 FO:0487/0431/0479---FO:0487/11
...全文
110 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
AcHerat 元老 2011-07-27
  • 打赏
  • 举报
回复
楼主把你的小写k换成大写K
cd731107 2011-07-27
  • 打赏
  • 举报
回复
--执行一下下面的语句,把结果贴上来
SELECT A.TD001,A.TD002,A.TD003,K.TB012+'---'+K.TB030 TD014 FROM PURTD A,PURTB K,PURTR M
WHERE K.TB001=M.TR001
AND K.TB002=M.TR002
AND K.TB003=M.TR003
AND A.TD001=SUBSTRING(TR019,1,4)
AND A.TD002=SUBSTRING(TR019,6,11)
AND A.TD003=SUBSTRING(TR019,18,4)
AND A.TD004=K.TB004
moxiaojie8 2011-07-27
  • 打赏
  • 举报
回复
CREATE TRIGGER PURTDMO ON PURTD
AFTER UPDATE,INSERT,DELETE AS
BEGIN
SET NOCOUNT ON
UPDATE A
SET A.TD014=k.TB012+'---'+K.TB030
FROM INSERTED T,PURTD A,PURTB K,PURTR M
WHERE T.TD001=A.TD001
AND T.TD002=A.TD002
AND T.TD003=A.TD003
AND K.TB001=M.TR001
AND K.TB002=M.TR002
AND K.TB003=M.TR003
AND T.TD001=SUBSTRING(M.TR019,1,4)
AND T.TD002=SUBSTRING(M.TR019,6,11)
AND T.TD003=SUBSTRING(M.TR019,18,4)
AND T.TD004=K.TB004
SET NOCOUNT OFF
END

还是一样的报错:
消息 4104,级别 16,状态 1,过程 PURTDMO,第 6 行
无法绑定由多个部分组成的标识符 "k.TB012"。
geniuswjt 2011-07-27
  • 打赏
  • 举报
回复
我试了下,代码没问题,本机运行通过。
快溜 2011-07-27
  • 打赏
  • 举报
回复
CREATE TRIGGER PURTDMO ON PURTD
AFTER UPDATE,INSERT,DELETE AS
BEGIN
SET NOCOUNT ON
UPDATE A
SET TD014=k.TB012
FROM PURTD A,INSERTED T,PURTB K,PURTR M
WHERE T.TD001=A.TD001
AND T.TD002=A.TD002
AND T.TD003=A.TD003
AND K.TB001=M.TR001
AND K.TB002=M.TR002
AND K.TB003=M.TR003
AND T.TD001=SUBSTRING(TR019,1,4)
AND T.TD002=SUBSTRING(TR019,6,11)
AND T.TD003=SUBSTRING(TR019,18,4)
AND T.TD004=K.TB004
SET NOCOUNT OFF
END
geniuswjt 2011-07-27
  • 打赏
  • 举报
回复
AFTER UPDATE,INSERT,DELETE AS
--这个有点叼诶?
AcHerat 元老 2011-07-27
  • 打赏
  • 举报
回复
UPDATE PURTD
SET ?.TD014=k.TB012
FROM INSERTED T,PURTD A,PURTB K,PURTR M
WHERE T.TD001=A.TD001
AND T.TD002=A.TD002
AND T.TD003=A.TD003
AND K.TB001=M.TR001
AND K.TB002=M.TR002
AND K.TB003=M.TR003
AND T.TD001=SUBSTRING(?.TR019,1,4)
AND T.TD002=SUBSTRING(?.TR019,6,11)
AND T.TD003=SUBSTRING(?.TR019,18,4)
AND T.TD004=K.TB004



如果楼主的排序方式是指定大小写,那么就写成 K.TB012 试试!



另外楼主不要重复发帖!虽然马甲不同。。。
完整清晰 PDF 扫描文档 这个PDF文件是我花钱买来的,现在为了挣积分,拿出来与大家分享!! -------------------------------------------------------------------------------- SQL Server 2008高级程序设计 作者:(美)维埃拉 著,杨华,腾灵灵 译 出版社:清华大学 出版日期:2010-4-1 ISBN:9787302222729 字数:1250000 页码:730 -------------------------------------------------------------------------------- 内容提要 -------------------------------------------------------------------------------- Microsoft SQL Server 2008极大地完善了数据库引擎的核心组件,也改变了数据库应用程序的构建方式。《SQL Server 2008高级程序设计》由世界顶尖SQL Server权威专家Robert Vieira编写,旨在指导您熟练运用一系列日趋复杂的功能,助您更高效地管理数据。   本书首先介绍SQL Server 2008的新功能,然后在更详实的示例代码的引导下全面深入地展开论述,讨论了如何编写复杂查询、构建各种数据结构以及提高应用程序性能,还讲述了如何管理高级脚本和数据库以及如何确定和改正脚本错误。   本书提供了快速创建和部署数据驱动的解决方案来满足业务需求的信息,介绍了新数据类型、索引结构、管理功能和高级时区处理等重要内容,掌握这些知识后,您将使自己的数据库发挥㈩最大功效。   主要内容   ◆除规范化外的数据设计技巧   ◆尽量提高应用程序运行速度的方法   ◆有关存储过程和用户定义函数的全部内容   ◆存储过程的高级处理方法   ◆报表服务和集成服务的用法   ◆提高数据库安全性的提示信息   ◆如何利用XML和XQuery支持   ◆通过修改特定数据值进行推理分析的步骤   读者对象   本书面向想要学用所有SQL Server 2008功能的有经验的开发人员。 目录 -------------------------------------------------------------------------------- 第1章 回顾SQL Server中的对象  1.1 数据库的构成  1.2 数据库对象概述  1.3 SQL Server数据类型  1.4 SQL Server对象标识符  1.5 小结 第2章 工具  2.1 联机丛书  2.2 SQL Server配置管理器  2.3 SQL Server Management Studio  2.4 SQL Server Business Intelligence Development Studio  2.5 SQL Server集成服务(SSIS)  2.6 Reporting Services  2.7 BulkCopy Program(bcp)  2.8 SQL Server Profiler  2.9 sqlcmd  2.10 小结 第3章 提出更好的问题:高级查询  3.1 子查询概述  3.2 构建嵌套子查询  3.3 相关子查询  3.4 派生表  3.5 EXISTS运算符  3.6 INTERSECT和EXCEPT运算符  3.7 通用表表达式(CTE)  3.8 递归查询  3.9 合并  3.10 利用外部调用完成复杂操作  3.11 性能考虑  3.12 小结 第4章 XML集成  4.1 XML数据类型  4.2 提取XML格式的关系数据  4.3 有关XML索引的提示  4.4 层次数据概述  4.5 小结 第5章 细心推敲,大胆设计  5.1 进一步了解规范化  5.2 关系  5.3 图表  5.4 逻辑设计与物理设计  5.5 通过经典的BLOB处理基于文件的信息  5.6 子类别  5.7 数据库重用  5.8 反规范化  5.9 通过分区方法进行扩展  5.10 SQL Server关系图工具  5.11 关于日期列  5,12 小结 第6章 核心存储和索引结构  6.1 SQL Server存储  6.2 理解索引  6.3 创建、修改和删除索引  6.4 明智地决定何时何地使用何种索引  6.5 维护索引  6.6 小结 第7章 更高级的索引结构  7.1 XML索引  7.2 用户定义的
完整清晰 PDF 扫描文档 这个PDF文件是我花钱买来的,现在为了挣积分,拿出来与大家分享!! -------------------------------------------------------------------------------- SQL Server 2008高级程序设计 2/6 SQL Server 2008 2010 高级程序设计 作者:(美)维埃拉 著,杨华,腾灵灵 译 出版社:清华大学 出版日期:2010-4-1 ISBN:9787302222729 字数:1250000 页码:730 -------------------------------------------------------------------------------- 内容提要 -------------------------------------------------------------------------------- Microsoft SQL Server 2008极大地完善了数据库引擎的核心组件,也改变了数据库应用程序的构建方式。《SQL Server 2008高级程序设计》由世界顶尖SQL Server权威专家Robert Vieira编写,旨在指导您熟练运用一系列日趋复杂的功能,助您更高效地管理数据。   本书首先介绍SQL Server 2008的新功能,然后在更详实的示例代码的引导下全面深入地展开论述,讨论了如何编写复杂查询、构建各种数据结构以及提高应用程序性能,还讲述了如何管理高级脚本和数据库以及如何确定和改正脚本错误。   本书提供了快速创建和部署数据驱动的解决方案来满足业务需求的信息,介绍了新数据类型、索引结构、管理功能和高级时区处理等重要内容,掌握这些知识后,您将使自己的数据库发挥㈩最大功效。   主要内容   ◆除规范化外的数据设计技巧   ◆尽量提高应用程序运行速度的方法   ◆有关存储过程和用户定义函数的全部内容   ◆存储过程的高级处理方法   ◆报表服务和集成服务的用法   ◆提高数据库安全性的提示信息   ◆如何利用XML和XQuery支持   ◆通过修改特定数据值进行推理分析的步骤   读者对象   本书面向想要学用所有SQL Server 2008功能的有经验的开发人员。 目录 -------------------------------------------------------------------------------- 第1章 回顾SQL Server中的对象  1.1 数据库的构成  1.2 数据库对象概述  1.3 SQL Server数据类型  1.4 SQL Server对象标识符  1.5 小结 第2章 工具  2.1 联机丛书  2.2 SQL Server配置管理器  2.3 SQL Server Management Studio  2.4 SQL Server Business Intelligence Development Studio  2.5 SQL Server集成服务(SSIS)  2.6 Reporting Services  2.7 BulkCopy Program(bcp)  2.8 SQL Server Profiler  2.9 sqlcmd  2.10 小结 第3章 提出更好的问题:高级查询  3.1 子查询概述  3.2 构建嵌套子查询  3.3 相关子查询  3.4 派生表  3.5 EXISTS运算符  3.6 INTERSECT和EXCEPT运算符  3.7 通用表表达式(CTE)  3.8 递归查询  3.9 合并  3.10 利用外部调用完成复杂操作  3.11 性能考虑  3.12 小结 第4章 XML集成  4.1 XML数据类型  4.2 提取XML格式的关系数据  4.3 有关XML索引的提示  4.4 层次数据概述  4.5 小结 第5章 细心推敲,大胆设计  5.1 进一步了解规范化  5.2 关系  5.3 图表  5.4 逻辑设计与物理设计  5.5 通过经典的BLOB处理基于文件的信息  5.6 子类别  5.7 数据库重用  5.8 反规范化  5.9 通过分区方法进行扩展  5.10 SQL Server关系图工具  5.11 关于日期列  5,12 小结 第6章 核心存储和索引结构  6.1 SQL Server存储  6.2 理解索引  6.3 创建、修改和删除索引  6.4 明智地决定何时何地使用何种索引  6.5 维护索引  6.6 小结 第7章
SQL Server 2008高级程序设计 5/6 SQL Server 2008 2010 高级程序设计 作者:(美)维埃拉 著,杨华,腾灵灵 译 出版社:清华大学 出版日期:2010-4-1 ISBN:9787302222729 字数:1250000 页码:730 -------------------------------------------------------------------------------- 内容提要 -------------------------------------------------------------------------------- Microsoft SQL Server 2008极大地完善了数据库引擎的核心组件,也改变了数据库应用程序的构建方式。《SQL Server 2008高级程序设计》由世界顶尖SQL Server权威专家Robert Vieira编写,旨在指导您熟练运用一系列日趋复杂的功能,助您更高效地管理数据。   本书首先介绍SQL Server 2008的新功能,然后在更详实的示例代码的引导下全面深入地展开论述,讨论了如何编写复杂查询、构建各种数据结构以及提高应用程序性能,还讲述了如何管理高级脚本和数据库以及如何确定和改正脚本错误。   本书提供了快速创建和部署数据驱动的解决方案来满足业务需求的信息,介绍了新数据类型、索引结构、管理功能和高级时区处理等重要内容,掌握这些知识后,您将使自己的数据库发挥㈩最大功效。   主要内容   ◆除规范化外的数据设计技巧   ◆尽量提高应用程序运行速度的方法   ◆有关存储过程和用户定义函数的全部内容   ◆存储过程的高级处理方法   ◆报表服务和集成服务的用法   ◆提高数据库安全性的提示信息   ◆如何利用XML和XQuery支持   ◆通过修改特定数据值进行推理分析的步骤   读者对象   本书面向想要学用所有SQL Server 2008功能的有经验的开发人员。 目录 -------------------------------------------------------------------------------- 第1章 回顾SQL Server中的对象  1.1 数据库的构成  1.2 数据库对象概述  1.3 SQL Server数据类型  1.4 SQL Server对象标识符  1.5 小结 第2章 工具  2.1 联机丛书  2.2 SQL Server配置管理器  2.3 SQL Server Management Studio  2.4 SQL Server Business Intelligence Development Studio  2.5 SQL Server集成服务(SSIS)  2.6 Reporting Services  2.7 BulkCopy Program(bcp)  2.8 SQL Server Profiler  2.9 sqlcmd  2.10 小结 第3章 提出更好的问题:高级查询  3.1 子查询概述  3.2 构建嵌套子查询  3.3 相关子查询  3.4 派生表  3.5 EXISTS运算符  3.6 INTERSECT和EXCEPT运算符  3.7 通用表表达式(CTE)  3.8 递归查询  3.9 合并  3.10 利用外部调用完成复杂操作  3.11 性能考虑  3.12 小结 第4章 XML集成  4.1 XML数据类型  4.2 提取XML格式的关系数据  4.3 有关XML索引的提示  4.4 层次数据概述  4.5 小结 第5章 细心推敲,大胆设计  5.1 进一步了解规范化  5.2 关系  5.3 图表  5.4 逻辑设计与物理设计  5.5 通过经典的BLOB处理基于文件的信息  5.6 子类别  5.7 数据库重用  5.8 反规范化  5.9 通过分区方法进行扩展  5.10 SQL Server关系图工具  5.11 关于日期列  5,12 小结 第6章 核心存储和索引结构  6.1 SQL Server存储  6.2 理解索引  6.3 创建、修改和删除索引  6.4 明智地决定何时何地使用何种索引  6.5 维护索引  6.6 小结 第7章 更高级的索引结构  7.1 XML索引  7.2 用户定义的数据类型  7.3 层次数据  7.4 空间数据  7.5 文件流  7.6 启用文件流  7.7表压缩  7.8 小结 第8章 视图  8.1 回顾视图语法  8.2 更复杂
SQL Server 2008高级程序设计 4/6 SQL Server 2008 2010 高级程序设计 作者:(美)维埃拉 著,杨华,腾灵灵 译 出版社:清华大学 出版日期:2010-4-1 ISBN:9787302222729 字数:1250000 页码:730 -------------------------------------------------------------------------------- 内容提要 -------------------------------------------------------------------------------- Microsoft SQL Server 2008极大地完善了数据库引擎的核心组件,也改变了数据库应用程序的构建方式。《SQL Server 2008高级程序设计》由世界顶尖SQL Server权威专家Robert Vieira编写,旨在指导您熟练运用一系列日趋复杂的功能,助您更高效地管理数据。   本书首先介绍SQL Server 2008的新功能,然后在更详实的示例代码的引导下全面深入地展开论述,讨论了如何编写复杂查询、构建各种数据结构以及提高应用程序性能,还讲述了如何管理高级脚本和数据库以及如何确定和改正脚本错误。   本书提供了快速创建和部署数据驱动的解决方案来满足业务需求的信息,介绍了新数据类型、索引结构、管理功能和高级时区处理等重要内容,掌握这些知识后,您将使自己的数据库发挥㈩最大功效。   主要内容   ◆除规范化外的数据设计技巧   ◆尽量提高应用程序运行速度的方法   ◆有关存储过程和用户定义函数的全部内容   ◆存储过程的高级处理方法   ◆报表服务和集成服务的用法   ◆提高数据库安全性的提示信息   ◆如何利用XML和XQuery支持   ◆通过修改特定数据值进行推理分析的步骤   读者对象   本书面向想要学用所有SQL Server 2008功能的有经验的开发人员。 目录 -------------------------------------------------------------------------------- 第1章 回顾SQL Server中的对象  1.1 数据库的构成  1.2 数据库对象概述  1.3 SQL Server数据类型  1.4 SQL Server对象标识符  1.5 小结 第2章 工具  2.1 联机丛书  2.2 SQL Server配置管理器  2.3 SQL Server Management Studio  2.4 SQL Server Business Intelligence Development Studio  2.5 SQL Server集成服务(SSIS)  2.6 Reporting Services  2.7 BulkCopy Program(bcp)  2.8 SQL Server Profiler  2.9 sqlcmd  2.10 小结 第3章 提出更好的问题:高级查询  3.1 子查询概述  3.2 构建嵌套子查询  3.3 相关子查询  3.4 派生表  3.5 EXISTS运算符  3.6 INTERSECT和EXCEPT运算符  3.7 通用表表达式(CTE)  3.8 递归查询  3.9 合并  3.10 利用外部调用完成复杂操作  3.11 性能考虑  3.12 小结 第4章 XML集成  4.1 XML数据类型  4.2 提取XML格式的关系数据  4.3 有关XML索引的提示  4.4 层次数据概述  4.5 小结 第5章 细心推敲,大胆设计  5.1 进一步了解规范化  5.2 关系  5.3 图表  5.4 逻辑设计与物理设计  5.5 通过经典的BLOB处理基于文件的信息  5.6 子类别  5.7 数据库重用  5.8 反规范化  5.9 通过分区方法进行扩展  5.10 SQL Server关系图工具  5.11 关于日期列  5,12 小结 第6章 核心存储和索引结构  6.1 SQL Server存储  6.2 理解索引  6.3 创建、修改和删除索引  6.4 明智地决定何时何地使用何种索引  6.5 维护索引  6.6 小结 第7章 更高级的索引结构  7.1 XML索引  7.2 用户定义的数据类型  7.3 层次数据  7.4 空间数据  7.5 文件流  7.6 启用文件流  7.7表压缩  7.8 小结 第8章 视图  8.1 回顾视图语法  8.2 更复杂

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧