Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用web2py(mySQL)插入4字节unicode字符?_Mysql_Unicode_Web2py - Fatal编程技术网

如何使用web2py(mySQL)插入4字节unicode字符?

如何使用web2py(mySQL)插入4字节unicode字符?,mysql,unicode,web2py,Mysql,Unicode,Web2py,我有一个设置为字符集utf8mb4的mySQL表和一个具有字符集utf8mb4 COLLATE utf8mb4_unicode_ci的列x,我可以直接在数据库上运行SQL命令,插入一个4字节的unicode字符,如 插入mytable(x)值(“请参阅中的“问号”) 请参阅中的Python注释。特别是,您的连接参数是什么(在Python和MySQL之间) u“无效的utf8字符串:'F09F92'”意味着Python(可能来自解释MySQLutf8错误)被4字节的poo所困扰。Update-我在

我有一个设置为字符集utf8mb4的mySQL表和一个具有字符集utf8mb4 COLLATE utf8mb4_unicode_ci的列x,我可以直接在数据库上运行SQL命令,插入一个4字节的unicode字符,如

插入mytable(x)值(“请参阅中的“问号”)

请参阅中的Python注释。特别是,您的连接参数是什么(在Python和MySQL之间)


u“无效的utf8字符串:'F09F92'”
意味着Python(可能来自解释MySQL
utf8
错误)被4字节的poo所困扰。

Update-我在日志
/usr/local/lib/python2.7/site packages/pymysql/cursors.py:165:警告:(1300,u“无效的utf8字符串:'F09F92')result=self.\u query(query)/usr/local/lib/python2.7/site packages/pymysql/cursors.py:165:警告:(1366,u“不正确的字符串值:'\\xF0\\x9F\\x92\\xA9'用于第1行的'search\u string')
。我的pymysql是最新版本,0.8.0。此外,如果我单独使用pymysql(即不是通过Web2Py),它也可以工作我在-我希望这是正确的做法。非常有用的指针,谢谢。奇怪的是,它在命令行中使用python和pymysql工作,但在web2py中不工作,这就是为什么我在web2py github站点上报告它为错误。我将检查连接参数。因此在web2py DAL中,它不工作“如果我设置DAL(db_codec=“utf8mb4”…)没有任何区别,但是如果我在定义db的字符串中指定连接参数,它确实会起作用,如中所述。现在可以了,谢谢!@user2667066-Oops,我在第二个链接中将DAL设置得更远;我找不到“web2py”。