在 sqlite-jdbc 驱动(3.23 或 3.30)中,字符串过长更新失败,无一例外。但是在命令行和navicat下就可以了

Posted

技术标签:

【中文标题】在 sqlite-jdbc 驱动(3.23 或 3.30)中,字符串过长更新失败,无一例外。但是在命令行和navicat下就可以了【英文标题】:In sqlite-jdbc driver(3.23 or 3.30),fail update when string is too long, without any exception. But in command line and navicat, it's OK 【发布时间】:2021-02-25 14:13:50 【问题描述】:

SQL

replace into articles(id,grade,no,title,content,newchars,update_time)
values(1394823098212,'1','8','title','**LongUtf8String**',1614001996557)

如果LongUtf8String的长度超过2689字节,操作将失败,无一例外。 在sqlite命令行和navicat下都可以工作。

表定义: 如果不存在文章,则创建表( id long not null 主键, 等级 tinyint 不为空, 没有 smallint 不为空, 标题 varchar(255) 不为空, 内容文本不为空, newchars 文本不为空 );

我在 SQLiteConfig 中找不到任何配置项。

有什么办法可以克服这个限制吗? 谢谢!!!

【问题讨论】:

【参考方案1】:

这是我的错:((( 我在检查参数时限制了长度,没有提示就丢弃了。

【讨论】:

以上是关于在 sqlite-jdbc 驱动(3.23 或 3.30)中,字符串过长更新失败,无一例外。但是在命令行和navicat下就可以了的主要内容,如果未能解决你的问题,请参考以下文章

导出时 SQLite 和 sqlite-jdbc 不起作用

将 sqlite-jdbc-3.7.2.jar 放在 Eclipse 中的哪个位置以使其工作?

3.23 上午

thinkphp 3.23 第三方登录sdk集成包

3.23练习题

3.23linux内核编译学习