使用自定义Spring JPA存储库时查询空表会发生什么

表的结构如下:

  

FILE_NAME

     

FILE_TYPE

     

FILE_SIZE

     

CREATED_DATA

查询为:

@Query("Select f.fileSize from FileEntity e where f.fileType =:fileType 
order by f.createdDate limit 1")
Long findFileSize(@Param("fileType") String fileType);

这是一个查询,它返回以dB为单位存储的最新文件的文件大小。

如果表为空,此查询将返回什么。它会返回默认值Long还是引发异常?

yishan1987 回答:使用自定义Spring JPA存储库时查询空表会发生什么

如果表没有行,则查询将不返回任何行。如果有行并且where子句将所有行过滤掉,则是相同的。

如果您尝试访问结果集中的值而不先检查是否存在行,则可能会收到错误消息。

,

它将返回NULL。因此,可以使用LONG包装器类来存储值。

,

它会返回 NULL 但你可以做的是使用方法 COALESCE 如下所述: 合并(f.filesize,0)

这将用 0 初始化大小,在空表的情况下,您将得到 0 而不是 NULL。

本文链接:https://www.f2er.com/3090085.html

大家都在问