相关疑难解决方法(0)

java.sql.SQLException:字符串值不正确:'\ xF0\x9F\x91\xBD\xF0\x9F ......'

我有以下字符串值:"walmart obama"

我正在使用MySQL和Java.

我收到以下异常:`java.sql.SQLException:字符串值不正确:'\ xF0\x9F\x91\xBD\xF0\x9F ...'

这是我要插入的变量:

var1 varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL`
Run Code Online (Sandbox Code Playgroud)

我试图插入"walmart obama"的Java代码是一个preparedStatement.所以我正在使用这种setString()方法.

看起来问题是值的编码.我怎样才能解决这个问题?以前我使用的是Derby SQL,而且最终只有两个sqaures(我认为这是null字符的表示)

非常感谢所有帮助!

java mysql encoding sqlexception character-encoding

99
推荐指数
5
解决办法
11万
查看次数

字符串值不正确:'\ xF0\x9F\x8E\xB6\xF0\x9F ...'MySQL

我想在我的MYSQL表中存储一条推文.的鸣叫是:

quiero que me es esches,no te burles no te rias,anoche tuveunueñoquete fuiste de mi vida??

最后两个字符都是'MULTIPLE MUSICAL NOTES'(U + 1F3B6),UTF-8编码是0xf09f8eb6.

tweet_text我表中的字段编码为utf8mb4.但是当我尝试将推文存储在该列中时,我收到以下错误消息:

字符串值不正确:'\ xF0\x9F\x8E\xB6\xF0\x9F ...'用于第1行的'tweet_text'列.

出了什么问题?我怎样才能解决这个问题?我还需要存储多种语言,这个字符集适用于所有语言,但不适用于表情符号和表情符号等特殊字符.

这是我的create table语句:

CREATE TABLE `twitter_status_data` (
  `unique_status_id` bigint(20) NOT NULL AUTO_INCREMENT,
  `metadata_result_type` text CHARACTER SET utf8,
  `created_at` text CHARACTER SET utf8 NOT NULL COMMENT 'UTC time when this Tweet was    created.',
  `id` bigint(20) unsigned NOT NULL COMMENT 'Unique tweet identifier',
  `id_str` text CHARACTER SET utf8 …
Run Code Online (Sandbox Code Playgroud)

mysql twitter utf-8 emoticons

51
推荐指数
5
解决办法
8万
查看次数

ERROR 1366(HY000):字符串值不正确:'\ xF0\x9F\x98\x9C'表示第1行的"注释"列

这是我的sql:

INSERT INTO comments (createdate,userid,profileid,comment,status) 
VALUES (1449503167,65704,65704,'@Mr_S66 Wish I was There For The Xmas Party I Miss My Studio 66 Family 😜',15)
Run Code Online (Sandbox Code Playgroud)

这是我的评论架构:

    +------------+---------------+------+-----+---------+----------------+
    | Field      | Type          | Null | Key | Default | Extra          |
    +------------+---------------+------+-----+---------+----------------+
    | commentid  | int(11)       | NO   | PRI | NULL    | auto_increment |
    | parentid   | int(11)       | YES  |     | 0       |                |
    | refno      | int(11)       | YES  |     | 0       |                |
    | createdate | int(11)       | YES  | …
Run Code Online (Sandbox Code Playgroud)

php mysql

13
推荐指数
2
解决办法
2万
查看次数

PyMySQL 警告:(1366,“不正确的字符串值:'\\xF0\\x9F\\x98\\x8D t...')

我正在尝试使用 Pandas 和 MySQL 将数据(推文和其他 Twitter 文本信息)导入到数据库中。我收到以下错误:

166:警告:(1366,“不正确的字符串值:'\xF0\x9F\x92\x9C\xF0\x9F...' 对于第 3 行的 'text' 列”)结果 = self._query(query)

166:警告:(1366,“不正确的字符串值:'\xF0\x9F\x98\x8D t...' 列 'text' 在第 5 行”)结果 = self._query(query)

经过彻底搜索后,我的数据库列的设置方式似乎有问题。我已经尝试将数据库字符集设置为 UTF8 并将其整理为 utf_unicode_ci,但我仍然收到相同的错误。

以下是将数据导入数据库的代码:

#To create connection and write table into MySQL

engine = create_engine("mysql+pymysql://{user}:{pw}@{lh}/{db}?charset=utf8"
                       .format(user="user",
                               pw="pass",
                               db="blahDB",
                               lh="bla.com/aald/"))

df.to_sql(con=engine, name='US_tweets', if_exists='replace')
Run Code Online (Sandbox Code Playgroud)

我正在导入的数据由以下数据类型组成:“int64”、“object”和“datetime64[ns]”。我通过将数据打印到控制台来发现这些数据类型

print(df['tweett']) >>> returns dtype 'object'
Run Code Online (Sandbox Code Playgroud)

我很感激任何帮助,谢谢!

python mysql utf-8 pandas pymysql

6
推荐指数
1
解决办法
8735
查看次数