德文服务器,默认按装PGSQL16,就会有问题 返回

SqlSugar 沟通中
31 511

1:服务器 是德文服务器

2:数据库 PGSQL 16

3:Sqlsugar最新版

4:普通的实体插入就会报错

     hat Typ timestamp without time zone, aber der Ausdruck hat Typ text


5:调试发现好像是

      

SqlSugar\Utilities\UtilMethods.cs

这个类 IsErrorDecimalString 方法识别出来的有点问题


热忱回答31

  • fate sta fate sta VIP0
    2025/7/21

    https://www.donet5.com/Home/Doc?typeId=2366

    按模版提供可以重现的DEMO

    0 回复
  • @fate sta:和程序没关系,要用德文的服务器即可,德文服务器上装PGSQL,即可复现

    一个普通含有日期的实体,插入操作即可

    0 回复
  • @fate sta:我在多试试

    0 回复
  • ConsoleApp2.zip


    1: Sqlsugar 不支持德文服务器

    2:Demo直接在德文服务器上运行,执行普通的插入的时候,如果实体中含有可空的日期类型就会报错

    3:PGSQL 数据库不需要是德文环境,任务服务器即可。主要是.NET 程序在德文服务器运行,就不行。

    4:报错信息如下

         image.png

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    StaticConfig.AppContext_ConvertInfinityDateTime=true;

    启动时加上这个试试

    0 回复
  • @fate sta:此前,就加过了。试过了,一样的报错


    调试貌似和 

    SqlSugar\Utilities\UtilMethods.cs

    这个类 IsErrorDecimalString 方法识别出来的有点问题


    0 回复
  • @fate staimage.png

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    你给的DEMO只有3个参数,并没有你说的六个参数

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    image.png

    0 回复
  • @fate sta:在德文服务器里执行的时候,会show出来 6个参数

    你应该是在不报错的时候,显示出来的SQL肯定是对的啊。我说的是在德文服务器上执行的时候,报错的时候,SHOW的SQL不对

    0 回复
  • @fate sta:可能我没说清楚,我说的是在德文服务器的执行的时候,SHOW出来的语句不对

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    @star_bing: 


    db.Aop.OnLogExecuting = (x, y) =>

    {

        Console.WriteLine(UtilMethods.GetNativeSql(x,y));

    };


    以报错前的sql为准 ,和服务器没什么关系。

    0 回复
  • @fate sta:Demo在英文服务器上执行的时候,执行DEMO是可以执行的,

    在德文服务器上,执行就会报错。报错的信息如上。

    0 回复
  • @fate sta:我用的这个Show出来的image.png

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    用这个db.Aop.OnLogExecuting

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    报错前打印出来

    0 回复
  • @fate staimage.png

    image.png

    0 回复
  • @fate sta:用你给的打印的语句,Show出来的,如上。

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    那就看不出问题,我这边不能重现

    0 回复
  • @fate sta:我在德文服务器上,100%重现哦

    0 回复
  • 或者我给你一个德文服务器,让你试一下?

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

     SqlSugarCore 5.1.4.199-preview14

     更新到预览版本试一下。

    0 回复
  • @fate sta:我来试一下。

    0 回复
  • @fate staimage.png

    非德文服务器,show出来的是这样的,在德文服务器上,show的就不是这个了

    0 回复
  • @fate sta:更新最新的 199的还是 报错哦

    image.png

    0 回复
  • @fate sta:安装一个 德文服务器的服务器,应该100%重现的。 我 这边装了一个 德文的虚拟机

    然后,把DEMO的在这个服务器上执行,就会报如上的错误,用另外一台非德文的服务器上执行同样的DEMO程序就是OK的

    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    5.1.4.199-preview14


    0 回复
  • fate sta fate sta VIP0
    2025/7/28

    版本号要对

    0 回复
  • @fate sta:好的,我再试一下

    0 回复
  • @fate sta

    5.1.4.199-preview14

    这个版本,可以了。

    0 回复
  • @fate sta:5.1.4.199-preview14版 试了,可以了。在德文服务器上执行没有再报错了。

    0 回复