将varchar值转换为SQL Server 2008中的数据类型int时,转换失败

用户名

我不知道如何解决此错误:

将varchar值
'SELECT LastName,FirstName FROM ## Results WHERE ## RowNum BETWEEN(')转换为数据类型int时,转换失败

查询是:

SET @s_query = 'SELECT ' + @ColNames1 + ' FROM ##Results
WHERE ##RowNum BETWEEN('+@PageIndex1+'-1) * '+@PageSize1+' + 1 
AND((('+@PageIndex1+' -1) * '+@PageSize1+' + 1) + '+@PageSize1+') - 1';
乔·塔拉斯

您正在构建一个字符串,并将其结果放入@s_query变量中。

因此,您必须以这种方式将int变量转换为@ PageIndex1和@ PageSize1:

SET @s_query =  'SELECT ' + @ColNames1 + ' FROM ##Results
WHERE ##RowNum BETWEEN('+CONVERT(varchar(20), @PageIndex1)+'-1) * '+CONVERT(varchar(20),@PageSize1)+' + 1 
AND((('+CONVERT(varchar(20),@PageIndex1)+' -1) * '+CONVERT(varchar(20),@PageSize1)+' + 1) + '+CONVERT(varchar(20),@PageSize1)+') - 1';

如果要保持代码的可读性,可以定义两个变量:

DECLARE @pistr varchar(20)
DECLARE @psstr varchar(20)

SET @pistr = CONVERT(varchar(20), @PageIndex1)
SET @psstr = CONVERT(varchar(20), @PageSize1)

因此,您的查询变为:

SET @s_query =  'SELECT ' + @ColNames1 + ' FROM ##Results
WHERE ##RowNum BETWEEN('+ @pistr +'-1) * '+@psstr+' + 1 
AND((('+@pistr+' -1) * '+@psstr+' + 1) + '+@psstr+') - 1';

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Case Statement,将varchar值转换为int数据类型时转换失败

来自分类Dev

将Varchar值“ NOTDEFINED”转换为数据类型Int时转换失败

来自分类Dev

SQL Server转换错误:将nvarchar值“ XXX”转换为数据类型int时转换失败

来自分类Dev

将varchar值'19500.00'转换为数据类型int时转换失败

来自分类Dev

SQL Server存储过程-将数据类型varchar转换为datetime时出错

来自分类Dev

将varchar值'none'转换为数据类型int时转换失败

来自分类Dev

将varchar值'6276.54'转换为数据类型int时转换失败

来自分类Dev

将varchar值'U'转换为数据类型int时转换失败

来自分类Dev

错误“将varchar值'ABC'转换为数据类型int时转换失败。”

来自分类Dev

SQL Server从查询“将数据类型varchar转换为bigint时出错”

来自分类Dev

将varchar值转换为数值数据类型时,SQL转换失败

来自分类Dev

将varchar值'@id'转换为数据类型int时转换失败

来自分类Dev

将varchar值'_1'转换为数据类型int时转换失败

来自分类Dev

将varchar值'where name_id in('转换为数据类型int时,转换失败

来自分类Dev

将varchar值'[]'转换为数据类型int时转换失败

来自分类Dev

将varchar值'FOT'转换为数据类型int时转换失败

来自分类Dev

为什么将varchar值“ This is full”转换为数据类型int时转换失败?

来自分类Dev

将varchar值'1,3'转换为SQL Server中的数据类型int时转换失败

来自分类Dev

SQL Server:将数据类型varchar转换为数值时出错

来自分类Dev

将varchar值'BUE'转换为数据类型int时转换失败

来自分类Dev

SQL Server将varchar列值'1218300.00'转换为int

来自分类Dev

在SQL Server中将varchar值转换为数据类型int时转换失败

来自分类Dev

将Varchar值“ NOTDEFINED”转换为数据类型Int时转换失败

来自分类Dev

无法将varchar值转换为SQL Server中存储过程中的int

来自分类Dev

SQL Server转换错误:将nvarchar值“ XXX”转换为数据类型int时转换失败

来自分类Dev

在存储过程SQL Server中将varchar值'Blue color'转换为数据类型int时转换失败

来自分类Dev

将varchar值'80 -4'转换为数据类型int时转换失败

来自分类Dev

将数据类型 varchar 转换为真正的 SQL Server 时出错

来自分类Dev

SQL Server:将数据类型 varchar 转换为数字时出错(奇怪的行为)

Related 相关文章

  1. 1

    Case Statement,将varchar值转换为int数据类型时转换失败

  2. 2

    将Varchar值“ NOTDEFINED”转换为数据类型Int时转换失败

  3. 3

    SQL Server转换错误:将nvarchar值“ XXX”转换为数据类型int时转换失败

  4. 4

    将varchar值'19500.00'转换为数据类型int时转换失败

  5. 5

    SQL Server存储过程-将数据类型varchar转换为datetime时出错

  6. 6

    将varchar值'none'转换为数据类型int时转换失败

  7. 7

    将varchar值'6276.54'转换为数据类型int时转换失败

  8. 8

    将varchar值'U'转换为数据类型int时转换失败

  9. 9

    错误“将varchar值'ABC'转换为数据类型int时转换失败。”

  10. 10

    SQL Server从查询“将数据类型varchar转换为bigint时出错”

  11. 11

    将varchar值转换为数值数据类型时,SQL转换失败

  12. 12

    将varchar值'@id'转换为数据类型int时转换失败

  13. 13

    将varchar值'_1'转换为数据类型int时转换失败

  14. 14

    将varchar值'where name_id in('转换为数据类型int时,转换失败

  15. 15

    将varchar值'[]'转换为数据类型int时转换失败

  16. 16

    将varchar值'FOT'转换为数据类型int时转换失败

  17. 17

    为什么将varchar值“ This is full”转换为数据类型int时转换失败?

  18. 18

    将varchar值'1,3'转换为SQL Server中的数据类型int时转换失败

  19. 19

    SQL Server:将数据类型varchar转换为数值时出错

  20. 20

    将varchar值'BUE'转换为数据类型int时转换失败

  21. 21

    SQL Server将varchar列值'1218300.00'转换为int

  22. 22

    在SQL Server中将varchar值转换为数据类型int时转换失败

  23. 23

    将Varchar值“ NOTDEFINED”转换为数据类型Int时转换失败

  24. 24

    无法将varchar值转换为SQL Server中存储过程中的int

  25. 25

    SQL Server转换错误:将nvarchar值“ XXX”转换为数据类型int时转换失败

  26. 26

    在存储过程SQL Server中将varchar值'Blue color'转换为数据类型int时转换失败

  27. 27

    将varchar值'80 -4'转换为数据类型int时转换失败

  28. 28

    将数据类型 varchar 转换为真正的 SQL Server 时出错

  29. 29

    SQL Server:将数据类型 varchar 转换为数字时出错(奇怪的行为)

热门标签

归档