yhdata_5nC7mZcv 发表于 2024-4-16 15:05:30

无法构造数据类型 date,某些参数的值无效

执行SampleQuery失败,请检查计算列
Related Dashboard: '销售分项成本明细20240416150237-323'   Related Query: '销售发票分项成本'   Related Element: '图表1'   Run user: 'zhuyr'
Caused by: java.sql.SQLException   执行SQL失败:“无法构造数据类型 date,某些参数的值无效。”

yhdata_lyaa 发表于 2024-4-16 15:05:31

参数是用什么赋值的,写脚本吗,赋值2024-04-08 00:00:00.000的格式给参数看看

yhdata_5nC7mZcv 发表于 2024-4-16 15:06:41

执行存储过程实现

yhdata_5nC7mZcv 发表于 2024-4-16 15:06:58

整个报告也没有计算列

yhdata_lyaa 发表于 2024-4-16 17:46:17

报错解释:

这个错误通常发生在尝试向数据库中插入或更新日期数据时,提供的日期格式不符合数据库期望的格式,或者是提供的日期数据超出了有效范围。

解决方法:

检查你提供的日期值是否符合数据库期望的格式(如YYYY-MM-DD)。

确保日期值在数据库支持的有效日期范围内(通常是从公元100年1月1日到9999年12月31日)。

如果你正在使用程序来构造SQL语句,请确保程序中对日期的处理是正确的,包括格式化和范围检查。

如果是在编写SQL语句时手动输入的,请仔细检查日期值,并确保输入正确。

示例:如果你使用的是MySQL,并且遇到这个错误,确保你的插入语句类似于以下格式:

INSERT INTO your_table (date_column) VALUES ('2023-01-01');

确保'2023-01-01'是有效的日期字符串,并且与数据库列的数据类型date兼容。

yhdata_5nC7mZcv 发表于 2024-4-17 08:18:40

yhdata_lyaa 发表于 2024-4-16 17:46
报错解释:

这个错误通常发生在尝试向数据库中插入或更新日期数据时,提供的日期格式不符合数据库期望的格 ...

我使用的sql server数据库,存储过程中添加了这一段语句,想实现的效果是根据传入的年月,生成当年当月最后一天的日期。 field0044日期字段格式为datetime,但是我把@time参数定义为datetime也还是会报错
--declare @year int,@month int
--set @year=2024
--set @month=2
declare @time as date
set @time = EOMONTH(DATEFROMPARTS(@year, @month, 1))

select * into #ZXBJCB from
   (select field0013 物料号,
   row_number() over(partition by field0013 order by field0044 desc ) rn from ...formmain_13820181128 a
   left join ...ORG_PRINCIPAL b
   on a.field0043 = b.MEMBER_ID
   left join ...CTP_ENUM_ITEM c
   on a.field0046 = c.ID
   where field0044 <= @time
   ) T
   where T.rn = 1

yhdata_5nC7mZcv 发表于 2024-4-17 08:25:44

按照date格式,执行输出的结果:2024-02-29
按照datetime格式,执行输出的结果:02 29 2024 12:00AM

yhdata_5nC7mZcv 发表于 2024-4-17 08:25:59

是不是格式问题

yhdata_lyaa 发表于 2024-4-17 09:53:03

yhdata_5nC7mZcv 发表于 2024-4-17 08:25
按照date格式,执行输出的结果:2024-02-29
按照datetime格式,执行输出的结果:02 29 2024 12:00AM ...

参数和字段格式要设置一样的

yhdata_5nC7mZcv 发表于 2024-4-17 10:13:26

yhdata_lyaa 发表于 2024-4-17 09:53
参数和字段格式要设置一样的

field0044字段的格式是这样的,2024-04-08 00:00:00.000
那我是否也要转换成这种格式
02 29 2024 12:00AM这样的也会报错
有没有什么其他办法
主要是制作报告打开会报错
查看报告的时候不会报错,并且我看了查询的结果也是正常的
页: [1]
查看完整版本: 无法构造数据类型 date,某些参数的值无效