`
hehaibo
  • 浏览: 416799 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

苹果IOS手机上传数据到mysql数据库编码问题

 
阅读更多

1 异常

2013-06-06 16:15:58,448 [] ERROR impl.AbstractCommonServiceImpl - terminal client [com.terminal.param.data.EpibolyDataParam,updateByTaskId] sys error 
org.springframework.jdbc.UncategorizedSQLException: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [HY000]; error code [1366];   
--- The error occurred while applying a parameter map.  
--- Check the apEpibolyDataSqlMap.updateByTaskId-InlineParameterMap.  
--- Check the statement (update failed).  
--- Cause: java.sql.SQLException: Incorrect string value: '\xF0\xA0\x82\x87\xE9\x83...' for column 'no_shoot_Reason' at row 1; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:   
--- The error occurred while applying a parameter map.  
--- Check the apEpibolyDataSqlMap.updateApEpibolyDataByTaskId-InlineParameterMap.  
--- Check the statement (update failed).  
--- Cause: java.sql.SQLException: Incorrect string value: '\xF0\xA0\x82\x87\xE9\x83...' for column 'no_shoot_Reason' at row 1
	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:83)
	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
	at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
	at org.springframework.orm.ibatis.SqlMapClientTemplate.execute(SqlMapClientTemplate.java:212)
	at org.springframework.orm.ibatis.SqlMapClientTemplate.update(SqlMapClientTemplate.java:411)

 2 查询了数据库的版本

      5.1.48-log

 3 查询表的编码

    utf-8

4 最后找到了一篇帖子

http://www.2cto.com/database/201305/211707.html

 

Incorrect string value: '\xF0\xA1\xBF\xA8\xE9\x82...' for column 'last_name'

 

 

这个问题出在mysql上,mysql如果设置编码集为utf8那么它最多默认只能支持到3个字节的UTF-8编码,

 

而4个字节的UTF-8字符还是存在的,这样一来如果你建表的时候用的utf8字符集出异常就理所当然了。

 

 

之前遇到过两次

 

短信备份的时候,用户短信内容里面的一些特殊字符编码会是四位,从ios导入的联系人,lastname里面也可能会有此类字符。

 

解决方法很简单,修改字段或者表的字符集为utf8mb4。

 

 

alter table fnbl_pim_contact_1 modifycolumn `last_name` varchar(64)  CHARACTER SET  utf8mb4 COLLATE utf8mb4_unicode_ci NULL;

 

 

但需要注意的是,字符集utf8mb4在mysql 5.5.3之后才能支持。。。。。。

 

如下短信中的特殊字符,编码就会达到4。

 

分享到:
评论

相关推荐

    iphone 连接远程mysql

    在iOS开发中,有时我们需要让iPhone应用程序连接到远程MySQL数据库以获取或存储数据。这个场景在标题"iPhone连接远程MySQL"中被提及。为了实现这一功能,开发者通常会使用Objective-C编程语言,因为它是Apple官方...

    完整app苹果安卓 java后台 项目框架使用的springboot 数据库用的mysql 适合刚入手新人学习

    本项目是一个全方位的移动应用开发框架,旨在帮助初学者快速入门并掌握iOS(苹果)和Android平台的应用开发,以及后台服务的构建。整个框架基于Java的Spring Boot技术,后端数据库选用的是MySQL,具备了直播功能,并...

    APNS 苹果消息推送项目源码,运行即用,代码+数据库+文档全打包

    苹果推送服务(Apple Push Notification service,简称APNs)是苹果公司提供的一项服务,允许开发者将实时的通知信息推送到iOS、macOS以及watchOS等设备上。这个“APNS 苹果消息推送项目源码,运行即用”包含了实现...

    苹果cms白菜app版本一.zip

    2. **MySQL数据库**:苹果CMS依赖MySQL来存储和管理网站内容,包括用户数据、视频信息等。熟悉SQL查询和数据库设计对于优化性能和维护数据结构至关重要。 3. **前端技术**:移动应用的界面设计和交互体验由HTML、...

    仿小龟影视APP源码V2.1 苹果cms后台

    【标题】"仿小龟影视APP源码V2.1 苹果cms后台"涉及到的主要知识点包括移动应用开发、影视APP开发以及苹果CMS系统。这是一个关于构建类似小龟影视的应用程序的源代码版本,适用于iOS平台,并且后端管理基于苹果CMS。 ...

    一对一直播JAVA项目含安卓苹果.zip

    7. **苹果APP开发**:对于iOS端,通常是Objective-C或Swift语言,使用Xcode进行开发,遵循Apple的MVC设计模式,处理类似安卓端的网络请求、界面设计和性能优化问题。 8. **跨平台兼容**:为了同时支持安卓和苹果...

    java大型商城系统三端APP源码全套源码+Android+Ios+商城小程序源码

    这套源码还包含了数据库,可能是MySQL或PostgreSQL,用于存储各类商城数据。数据库设计需要遵循 normalization 规则,以减少数据冗余和提高数据一致性。此外,可能还涉及到索引优化、事务处理、缓存策略等高级技术。...

    仿小鹿直播 全套完整源码 包含网站+安卓+苹果.rar

    - 数据库系统可能采用MySQL、PostgreSQL等,存储用户信息、直播间信息、评论、礼物等数据。源码中应包含数据库设计和相关的SQL查询语句。 5. **流媒体技术**: - 直播平台需要处理音视频流的编码、传输和解码,...

    基于PHP的苹果MacCMS视频电影程序UTF8源码.zip

    苹果MacCMS是一款专门为苹果设备和iOS用户设计的视频电影程序,它基于PHP编程语言构建,支持UTF8编码,能够提供高效、稳定且用户友好的在线视频浏览体验。本程序源码的发布,对于想要深入了解PHP在开发视频网站方面...

    ios工程师评分卡

    - 对SQLite数据库的特性理解,对比其他数据库(如MySQL、SQL Server、Oracle)。 - 分析可能导致iOS应用崩溃的原因,如内存管理、异常处理等。 - 应用性能优化策略,如减少内存消耗、优化网络请求等。 - 编码...

    基于PHP的最新影视双端app对接苹果cms+详细安装教程源码.zip

    2. 数据库管理:可能涉及MySQL或其它关系型数据库,理解SQL语句和数据库设计原理。 3. RESTful API设计:了解如何创建和调用API接口,以便于app与服务器间的数据交换。 4. 移动端开发:对于双端app,需要熟悉iOS和...

    校园软件服务平台的开发与搭建.docx

    在本文中,我们讨论了校园软件服务平台的开发与搭建,涉及到多个技术领域,包括数据库管理系统、软件开发架构、混合应用开发、数据访问层和传输协议等方面。 首先,我们讨论了数据库管理系统的选择。在 escolar ...

    JAVA在线派单抢单平台系统 完整版本 原生安卓苹果APP

    - **MySQL数据库**: 存储用户信息、订单数据、抢单记录等关键业务数据。 - **Redis**: 可能用于缓存高频查询数据,提升系统性能。 - **RabbitMQ/MQTT**: 实时消息中间件,实现抢单通知的即时推送。 - **JWT...

    Grooo外卖,在校参与创业&比赛&毕业设计作品。一个完整的iOS app,有配套后端。.zip

    我们可以推断这个项目可能涉及到的技术包括Swift编程语言、iOS SDK、UIKit或SwiftUI用于构建用户界面,以及可能采用的服务器端技术如Node.js、Python或Ruby on Rails,搭配数据库系统如MySQL或MongoDB来处理订单和...

    哇呼星聊即时通讯系统源码Android+iOS+PC三端附教程.txt

    3. **数据库**:服务器端通常会采用MySQL、MongoDB等数据库来存储用户信息、聊天记录等数据。 4. **消息队列**:为了提高系统的响应速度和稳定性,可能还会引入RabbitMQ、Kafka等消息队列中间件。 #### 四、核心...

    qq类似聊天消息列表

    这种设计通常涉及到多个关键知识点,包括数据结构、UI设计、实时通信以及数据库管理。 首先,我们关注的是数据结构。在聊天应用中,消息列表通常采用倒序排列,最新消息显示在顶部。为了高效地存储和检索这些消息,...

    移动互联网开发技术培训.pdf

    3. 数据库:在移动互联网开发中,数据库用于存储和管理应用数据,常见的有SQLite(用于Android)、MySQL、SQL Server和Oracle等。 三、移动互联网开发流程及角色 开发流程通常包括需求分析、设计、编码、测试、部署...

    基于PHP的白菜cms双端影视直播APP源码 全开源 无授权 无后门.zip

    5. **API接口**:双端应用通常涉及到Android和iOS客户端,白菜CMS可能通过API接口与移动应用通信。了解RESTful API设计和JSON数据格式是必要的。 6. **视频流技术**:影视直播涉及视频编码、解码和流传输,可能使用...

    移动互联网开发技术培训.docx

    数据库是存储和管理信息的核心组件,移动互联网开发中常用的关系型数据库有MySQL、SQLite(适用于移动设备本地存储),非关系型数据库如MongoDB、Redis等也被广泛使用。 二、移动互联网开发流程及角色 移动应用的...

    二师兄分发平台php版v4.1

    5. **安全性考量**:由于涉及到IPA的解密和分发,这个平台必须确保安全措施得当,防止非法应用的传播,保护用户数据,并遵循苹果的开发者协议。这可能涉及到加密存储、访问控制、安全编码实践等。 6. **部署与运行*...

Global site tag (gtag.js) - Google Analytics