`

特殊字符无法入库

 
阅读更多

 报错现象:

org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [INSERT INTO B_ITEM_ORDER66            (ORDER_SERIAL_NUMBER,ORDER_CODE,ITEM_CODE,ITEM_NAME,B_CUST_NO,S_CUST_NO,          UNIT_PRICE,NUMBER,FREIGHT_PRICE,TOTAL_PAY_PRICE,PAYMENT_METHOD,     ORDER_STATUS,CUST_NAME,MEMBER_PHONE,S_ADDRESS,CREATE_TIME,     LASTUP_TIME,B_MESSAGE,EVALUATION_STATUS,TRANSPORDCODE,ORDER_SOURCE)          VALUES (?,?,?,?,?,?,          ?,?,?,?,?,     ?,?,?,?,?,     ?,?,?,?,?)]; SQL state [HY000]; error code [1366]; Incorrect string value: '\xF0\x9F\x99\x8F\xF0\x9F...' for column 'B_MESSAGE' at row 1; nested exception is java.sql.SQLException: Incorrect string value: '\xF0\x9F\x99\x8F\xF0\x9F...' for column 'B_MESSAGE' at row 1

 

原因:

\xF0\x9F\x99\x8F\xF0\x9F是十六进制,数据库默认的字符集编码是utf8,无法识别十六进制的数据。

 

解决方法:

将数据库的字符集由utf8升级到utf8mb4。

 

升级方案:

  1. 修改数据库字符集character-set-server=utf8mb4 重启数据库生效。

  2. 修改database 的字符集为 utf8mb4 alter database dbname character set utf8mb4

  3. 修改表的字符集 为utf8mb4 , alter table character set = utf8mb4

 

ALTER TABLE bargain_msg_receive CONVERT TO CHARACTER SET utf8mb4;

 

http://vivisidea.iteye.com/blog/1395571

 http://www.jianshu.com/p/20740071d854

分享到:
评论

相关推荐

    MySQL数据入库时特殊字符处理详解

    在一个字符串中,如果某个序列具有特殊的含义,每个序列以反斜线符号 (“”)开头,称为转义字符。 MySQL 识别下列转义字符: 0 一个 ASCII 0 (NUL) 字符。 ‘ 一个 ASCII 39 单引号 (“’”) 字符。 ” 一个 ASCII ...

    解决Python 爬虫URL中存在中文或特殊符号无法请求的问题

    但是,中文字符和一些特殊符号在URL中有特殊的编码含义,直接使用会导致请求失败或服务器无法正确解析。为了解决这个问题,Python的urllib.parse模块提供了解决方案。具体来说,我们可以使用quote函数来对URL进行...

    Oracle 数据库多语言入库问题的解决方案

    在处理泰文、韩文、阿拉伯文等非中文语言入库时,如果数据库的默认字符集(如ZHS16GBK)和国家字符集(如AL16UTF16)不适应这些语言的编码,就需采取特殊策略。文章作者通过研究和实践,提出使用Oracle的sqlloader...

    java读取TXT文件入库

    - 如果字段包含特殊字符或分隔符,可能需要考虑转义或使用正则表达式进行分割。 ```java String[] fields = line.split(","); ``` 3. **连接数据库** - Java使用JDBC(Java Database Connectivity)来连接和操作...

    StampGIS管线二维数据入库流程

    - **创建要素数据集**:在数据库连接成功后,右键选择“新建-要素数据集”,并输入数据集名字(注意不能包含中文或特殊字符)。接着设置坐标系和X,Y容差值,最后点击“完成”。 ##### 2. 导入管线数据 - **导入要素...

    微信小程序中转义字符的处理方法

    在开发微信小程序的过程中,不可避免地会遇到一些特殊字符的显示问题,这些特殊字符通常被称为转义字符。转义字符在文本中具有特殊的含义,如果直接使用可能会导致程序解析错误或者显示异常。以下就是在微信小程序中...

    php插入含有特殊符号数据的处理方法

    当我们在向mysql写入数据时,如果数据中有特殊字符就会出现数据无法正常入库的情况,比如: mysql_query(”update table set `name`='make's'”); 而这个时候一般就是使用addslashes()这个函数来转义数据中的特殊...

    雷石智能入库工具

    这可能包括但不限于去除特殊字符、保持统一的命名规则(如歌手-歌曲名)以及确保文件名与实际音频文件的名称一致。通过这种方式,软件可以更准确地将歌曲信息与对应的音频文件关联起来,从而避免导入过程中的错误。 ...

    java 案例2-1  商品入库

    Java 案例2-1 商品入库程序设计 ...在 Java 中,变量命名需要遵守一定的规范,如变量名不能以数字开头、变量名不能包含特殊字符等。在本案例中,我们使用了符合规范的变量名,使代码更加易读和维护。

    解析php入库和出库

    对于文章内容这类较长的文本,入库时同样需要转义特殊字符,并且在出库显示时也要进行过滤和格式化: ```php function trans_string($str){ $str=eregi_replace("'","''",$str); $str=stripslashes($str); ...

    A毕业设计:MATLAB出入库车牌识别计费

    通过图像处理和字符识别算法,提取车牌号码信息。 2. **入库记录**:将识别到的车牌号码与时间记录关联,并将车辆的入库时间存储到数据库中。 3. **车辆计费规则**:设置停车场的计费规则,包括收费标准(按时计费...

    DWG整理入库方案说明Idata

    - 此外,CASS中的线符号在线前进方向的左侧,但入库要求有向线符号在线前进方向的右侧。 - 使用方案中的“面状地物反向”、“有向线反向”元规则自动纠正面和有向线的状态。 2. **弧段折线化**: - 转换完成后,...

    php替换超长文本中的特殊字符的函数代码

    复制代码 代码如下: function unhtml($content){ $content=htmlspecialchars($content); $content=str_replace(chr(13),” ”,$content); $content=str_replace(chr(32),” ”,$content);...

    空间数据库技术应用电子教材-数据入库.docx

    - **空间索引技术**:采用特殊的空间索引技术来提高查询效率,如R树、四叉树等。 - **空间分析功能**:具备强大的空间分析功能,如缓冲区分析、叠加分析等,能够进行复杂的地理空间操作。 #### 三、数据的完整性和...

    对ASP.NET实现复杂文本上载入库方法的研究.kdh

    复杂文本通常是指包含特殊字符、格式标记、甚至是图片或视频链接等多种元素的文本信息。这类文本的特点在于结构复杂、数据量大,并且可能涉及多方面的信息处理技术。例如,在线编辑器中的富文本、论坛中的帖子等都...

    asp中将有双引号标题入库的方法

    总结来说,处理包含双引号的标题入库时,关键步骤是使用`Replace()`函数正确地转义双引号,确保SQL语句不会因为这些特殊字符而引发错误。同时,需要注意的是,对于用户输入的数据,应始终使用参数化查询或预编译语句...

Global site tag (gtag.js) - Google Analytics