我想将表情符号保存到MySql数据库中,我意识到,三个字节的表情符号在数据库中正确保存,但是4个字节的表情符号已被保存为问号.似乎我完全将utf8转换为utf8mb4,但我不知道这里究竟缺少了什么.我的MySQL版本是5.5.29,当我SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';在MySql shell中执行时,它显示以下内容:
+--------------------------+--------------------+
| Variable_name | Value |
+--------------------------+--------------------+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| collation_connection | utf8mb4_unicode_ci |
| collation_database | utf8mb4_unicode_ci |
| collation_server | utf8mb4_unicode_ci |
+--------------------------+--------------------+
Run Code Online (Sandbox Code Playgroud)
现在,出于测试目的,我只有1个数据库,其中创建了1个表以测试表情符号保存.我通过phpMyAdmin创建了数据库,并通过MySql shell创建了表:
CREATE TABLE `test_emojis` (
`id` int(11) NOT …Run Code Online (Sandbox Code Playgroud) 我使用sqlalchemy在下面创建两个表:
class Classroom(Base):
__tablename__ = 'classroom'
building = Column(String(256), primary_key = True)
room_no = Column(String(256), primary_key = True)
capacity = Column(Integer)
class Section(Base):
__tablename__ = 'section'
course_id = Column(String(256), ForeignKey('course.course_id'), primary_key = True)
building = Column(String(256), ForeignKey('classroom.building'))
room_no = Column(String(256), ForeignKey('classroom.room_no'))
Run Code Online (Sandbox Code Playgroud)
但是,我得到了错误说:
sqlalchemy.exc.ProgrammingError: (ProgrammingError) there is no unique constraint matching given keys for referenced table "classroom"
Run Code Online (Sandbox Code Playgroud) 我正在开发一个iPhone应用程序,允许人们使用表情符号图标发送消息.我在MySQL与字符集utf8mb4和整理utf8mb4_unicode_ci保存图标,所有表情符号图标在我的数据库正确保存.然而,当我将json返回给客户端(php json_encode)时,表情符号被编码为:'\ ud83d\ude04',并且iPhone将其显示为正方形.但是,如果我以XML格式返回,表情符号图标将不会像这样变成unicode:'\ ud83d\ude04',它只是图标.
我想知道这是在我的服务器上还是在我的客户端上的问题.如果它是我的客户端,对象c如何正确解码它.
有人可以帮忙吗?
谢谢
我正在使用Jest和Enzyme进行 React 应用程序测试。
我的文件夹结构看起来像
/源
/__测试__
/关卡组件
/成分
/关卡组件
/小部件
OuterComp.js
import React, { Component } from 'react'
import ChenDropdown from '../Widgets/ChenDropdown'
class OuterComp extends Component {
render() {
return (
<div>
<ChenDropdown />
<ChenDropdown />
</div>
)
}
}
export default OuterComp
Run Code Online (Sandbox Code Playgroud)
ChenDropdown.js
import React, { Component } from 'react'
class ChenDropdown extends Component {
render() {
return <h1>test</h1>
}
}
export default ChenDropdown
Run Code Online (Sandbox Code Playgroud)
OuterComp.test.js
import Adapter from 'enzyme-adapter-react-16'
import Enzyme, { …Run Code Online (Sandbox Code Playgroud) 我已经安装并运行了 Jenkins,我尝试在本地 Jenkins 服务器本身上运行 Groovy 脚本:
java -jar jenkins-cli.jar -s http://localhost:8080/ -auth admin:password groovy test.groovy
Run Code Online (Sandbox Code Playgroud)
但我得到了:
ERROR: This command is requesting the -remoting mode which is no longer supported. See https://jenkins.io/redirect/cli-command-requires-channel
那么如果我想在Jenkins服务器本地执行Groovy脚本,而不是通过诸如 之类的接口JENKINS_URL/script,我该怎么办?
谁能帮我 ?谢谢
emoji ×2
utf8mb4 ×2
encode ×1
enzyme ×1
foreign-keys ×1
groovy ×1
indexing ×1
ios ×1
jenkins ×1
jenkins-cli ×1
jestjs ×1
json ×1
mysql ×1
phpmyadmin ×1
postgresql ×1
reactjs ×1
sqlalchemy ×1