sql-server - 修复将数据类型 varchar 转换为数字时出错。(8114) (SQLExecDirectW)')
问题描述
我正在尝试使用 pyodbc 运行以下存储过程。
USE [CompanyMC]
GO
/****** Object: StoredProcedure [dbo].[marketprice] Script Date: 15/10/2019 23:02:22 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROC [dbo].[marketprice](@marketvalue AS VARCHAR(30))
AS
BEGIN
SELECT TRY_CAST (CompanyMarketCap AS numeric) from CompanyMC.dbo.Companies
where CompanyName= @marketvalue
END
这是我的python代码
# Call the procedure and pass rhe arguments as a list
sql=f"""\
EXEC {proc_name} @marketvalue=?;
"""
parameters = (company_name)
cursor.execute(sql, parameters)
# get the result set and iterate over it to get the returned value
result = cursor.fetchval()
我一直遇到错误。
('42000', '[42000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]将数据类型 varchar 转换为数字时出错。(8114) (SQLExecDirectW)')
似乎无法弄清楚做错了什么,任何提示将不胜感激。
解决方案
推荐阅读
- javascript - 使用 io hook 移动 puppteer 的鼠标
- c++ - 在 C++ 中初始化变量的 = 和 {} 语法之间的区别
- listview - How to make the inner stateful widget received the scroll event in Flutter?
- regex - Hive regexp_replace failed to replace backslash
- java - Deserialization Json to Java Object without Jackson library
- excel - 函数 DATE() 类型不匹配
- scala - 用于计算 val 的 Scala 测试相关方法仅执行一次
- microservices - 当一个或多个微服务发生故障时,如何确保应用程序的可用性?
- amazon-web-services - 5 分钟后移除模板
- python - django: 出现错误 AttributeError: 'NoneType' 对象没有属性 'split' 即使我能够访问该页面