jjzjj

collation

全部标签

mysql - 为什么我看到 "COLLATION ' xxx' is not valid for CHARACTER SET 'yyy' "

我在AmazonRDS上使用MySQL5.6.22(InnoDB)。我试图将我所有的表、列、连接和数据库字符集以及排序规则设置设置为utf8mb4/utf8mb4_unicode_ci。我在任何地方都找不到任何证据表明任何东西都有字符集latin1,但是当我执行以下代码时(通过node-mysql,或直接在我的Mac上的“SequelPro”应用程序中):updateMyTablemsetm.Column8=1wherem.Column3=26andm.Column4=76collateutf8mb4_unicode_ci我收到此错误消息:COLLATION'utf8mb4_unico

php - 如何控制 MySQL 中的 UTF-8 排序?

例如,这是标准“按名称排序”查询返回的顺序:name------CebbbČebbcCebbd我想按名称排序并获取重音字符第一个,与其他重音字符分组,例如name------ČebbcCebbbCebbd默认情况下,MySql将Č视为C,以进行排序,并按显示的顺序排序。或者,在PHP中,有没有一种方法可以将Č“转换”为C,以便进行比较? 最佳答案 您可以addaCOLLATEexpressiontoyourORDERBYclause:SELECTkFROMt1ORDERBYkCOLLATEutf8_spanish_ci;然后,列将使

mysql - rake 数据库 :create - collation issues

kratos-iii:railsprojzachinglis$rakedb:create(in/Users/zachinglis/Sites/rails/railsproj)Couldn'tcreatedatabasefor{"adapter"=>"mysql","host"=>"localhost","username"=>"root","password"=>nil,"database"=>"railsproj_development"},charset:utf8,collation:utf8_general_ci(ifyousetthecharsetmanually,makesu

mysql - [MySQL] : What is collation method?

当我使用phpMyAdmin查看我的在线表格时,它使用整理方法“latin_swedish_ce”。为什么?默认值是多少?以及,使用什么整理方法? 最佳答案 MySQL中的一个字符串有一个charactersetandacollation.utf8是一个字符集,utf8_bin是它的一种排序规则。排序规则决定了MySQL如何比较字符串。例如,这里有两种比较UTF8字符串的方法:selectcasewhen'test'='TEST'collateutf8_binthen'true'else'false'end,casewhen'tes

php - 如何在 php 中将希伯来文值插入 mysql 数据库

我正在尝试将希伯来语值插入到我的mysql数据库中,而不是希伯来语值看起来像那样。שדגשדכעשד表的排序规则默认是latin1_swedish_ci,我也试过改成utf-8_general_ci、hebrew_bin、hebrew_general_ci,结果还是一样。在我的代码中,我当然使用元标记来配置字符集:在我的php查询之前,我添加了这一行:mysql_query("SETNAMESutf8");我正在phpmyadmin中查看结果。 最佳答案 我已经解决了我的希伯来语问题。这是一个数据库和表行/字段编码

mysql - utf8_general_ci和utf8_unicode_ci有什么区别?

在utf8_general_ci和utf8_unicode_ci之间,在性能方面有什么区别吗? 最佳答案 对于仍在2020年或更晚时间提出此问题的人们,有一些较新的选择可能比这两者都更好。例如,utf8mb4_0900_ai_ci。所有这些归类均适用于UTF-8字符编码。区别在于文本的排序和比较方式。_unicode_ci和_general_ci是用于根据我们期望的方式对文本进行排序和比较的两组不同规则。较新版本的MySQL也引入了新的规则集,例如用于基于Unicode9.0的等效规则的_0900_ai_ci-没有等效的_gener

mysql - 澄清重音字符与非二进制排序规则相等的潜在问题

对于具有国际支持的网站,我在大多数表和列中使用utf8mb4字符集和utf8mb4_unicode_ci排序规则。性能不是最重要的,在各种语言中准确排序很重要。我了解utf8mb4_general_ci和utf8mb4_unicode_ci排序规则如何与重音字符进行比较,即:SELECTcolumnFROMtableWHEREcolumn='abad';将同时返回'abad'和'abád'在研究MySQL中的utf8支持时,我遇到了非二进制utf8___排序规则的问题。页面在http://mzsanford.com/blog/mysql-and-unicode/描述了某些更新中未保存更

MySQL DB 选择带和不带变音符号的记录。例如 : '.. where something = FÖÖ'

我的表排序规则是“utf8_general_ci”。如果我运行如下查询:SELECT*FROMmytableWHEREmyfield="FÖÖ"我得到的结果是:...myfield="FÖÖ"...myfield="FOO"这是“utf8_general_ci”的默认值吗?我应该使用什么排序规则来只获取myfield="FÖÖ"的记录? 最佳答案 SELECT*FROMtableWHEREsome_fieldLIKE('%ö%'COLLATEutf8_bin) 关于MySQLDB选择带和

mysql - 如果MYSQL不区分大小写,那么Login中的Password字段是如何工作的呢?

我想知道在正常选择操作的情况下,搜索是不区分大小写的。所以SELECT*FROMtblWHEREname=aBc也会考虑具有值ABC、abc、abC等的名称但在登录功能的情况下,我们只是做SELECT*FROMtblWHEREpassword=aBc将区分大小写,并且只考虑具有aBc值的密码。这是怎么发生的?我在搜索中没有找到任何相关信息。请注意解释。谢谢大家。 最佳答案 我认为这取决于列的排序规则,MySQLutf8_general_ci中的默认数据库排序规则,其中最后的ci代表不区分大小写。仅当您使用MD5或PASSWORD函数

mysql - rake 数据库 :create generated "if you set the charset manually, make sure you have a matching collation" error

我在2.3.8版本中获得了一个Rails项目。当我尝试运行rakedb:create时,出现了以下错误。Couldn'tcreatedatabasefor{"encoding"=>"utf8","username"=>"root","adapter"=>"mysql","database"=>"claims_test","host"=>"localhost","password"=>"root","socket"=>"/var/run/mysqld/mysqld.sock"},charset:utf8,collation:utf8_unicode_ci(ifyousetthechars