草庐IT

Internationalization

全部标签

mysql - 运算符喜欢,字段类型时间戳和西里尔字母? MySQL错误?

似乎是MySQL的Bug;要求:SELECT*FROMtableWHERE(idLIKE'%тест199%'OR`user`LIKE'%тест199%'OR`user_datetime`LIKE'%тест199%'OR`user_comments`LIKE'%тест199%')ORDERBYiddescLIMIT0,10[Err]1271-操作“like”的排序规则混合非法当我们使用拉丁语时。要求:SELECT*FROMtableWHERE(idLIKE'%test199%'OR`user`LIKE'%test199%'OR`user_datetime`LIKE'%test19

php - MySQL 数据库 I18N,一种 JSON 方法?

更新:几年后我遇到了这个问题:现在我知道这是一个非常糟糕的方法。请不要使用这个。您始终可以为i18n使用额外的表(例如products和products_lang),每个区域设置都有单独的条目:更好地用于索引,更好地用于搜索等。我正在尝试在MySQL/PHP站点中实现i18n。我读过一些回答说“i18n通常不是数据库的一部分”,我认为这是一种有点狭隘的方法。命名的产品,或者像我的例子一样,存储在数据库中的菜单结构和内容怎么样?我想知道您如何看待我的方法,考虑到语言应该是可扩展的,所以我试图避免“每种语言解决方案一栏”。一种解决方案是对要翻译的字符串使用引用(id),并且每个可翻译列都有

mysql - Symfony i18n 表 : Ways to get fallback default value?

我正在MySQL中构建一个包含大约10K行的城市名称表作为Symfonyi18n表。基本上,默认文化是en_US,表中的每个城市最初都是这种文化。随着时间的推移,我只想将那些可能具有不同语言的替代名称的城市添加到表中,例如“London(en_US)/Londres(es_ES)”,而不必为每个城市复制所有城市数据单独表格中的语言。现在,据我所知,如果翻译不存在,Symfony不会自动选择后备默认城市名称。所以我需要制定一个解决方案来执行以下操作:如果存在翻译,请选择它....如果不存在,请选择默认的en_US城市名称。到目前为止,我似乎应该使用COALESCE。但是,由于我对它不是很

php - 代码点火器 : Problem inserting accents in Mysql

我正在试用codeigniter,我在尝试向我的Mysql数据库中插入新行时遇到了一条错误消息。我要插入的文本是法语,并且包含一些重音符号。这是我的代码:$data=array('title'=>$this->input->post('title'),'date'=>$this->input->post('date'),'mytext'=>$this->input->post('mytext'));$this->db->insert('blog',$data);这段代码似乎工作正常(我插入了一些“测试测试”条目),但是当我尝试输入带有重音的内容时,例如“Ilétaitlà”,我得到错误

mysql - 英镑符号未显示在网页上

我有一个mysql数据库表来存储国家名称和货币符号-CHARSET已正确设置为UTF8。这是插入表中的示例数据insertintocountry(country_name,currency_name,currency_code,currency_symbol)values('UK','Pounds','GBP','£');当我查看数据库时-井号显示正常-但当我从数据库中检索它并将其显示在网站上时-出现一个奇怪的方形符号,里面有一个问号而不是井号。编辑在my.cnf中-字符集设置为latin1-我将其更改为utf8-然后我以root身份登录并运行\s-它返回了Servercharacte

mysql - 如何在 MySql 中将 unix 时间戳转换为 UTC 日期?

我有一堆数据存储在mysql数据库中,作为一堆unix风格的时间戳(UTC)。以前,这些已通过Perl的gmtime()格式化。看来MySQL的FROM_UNIXTIME()函数试图提供帮助,并纠正夏令时,但我真的不希望它这样做。是否有一种方便的方法可以将结果从系统时区(GMT/BST)转换为UTC,或者交替确定DST是否在特定时间生效? 最佳答案 你试过吗:mysql>SELECTNOW();+---------------------+|NOW()|+---------------------+|2011-04-0422:54:

mysql - 构建具有复杂内部化支持的站点

当用户浏览某个页面然后切换语言时,应该发生以下操作:如果他正在浏览的页面有翻译,则重定向到该页面。如果该页面没有翻译版本,则重定向到主页。因此,例如,用户浏览/about-us页面,然后他切换到德语,那么他应该被重定向到/uber-uns如果翻译存在德语的/about-us。目前我有这样的结构,CREATETABLE`pages`(`id`INTNOTNULLPRIMARYKEYAUTO_INCREMENT`language`varchar(3),`urlSegment`varchar(250),`content`TEXT)DEFAULTCHARSET=UTF8;应该添加哪些关系/列来

MySQL UTF/Unicode 迁移技巧

在尝试将MySQL表从默认的不区分大小写的瑞典语或ascii字符集迁移到utf-8时,是否有人有任何提示或需要注意的问题?我参与的一些项目正在努力实现更好的国际化,而数据库将成为这一变化的重要组成部分。在我们着手改变数据库之前,我们将把每个站点转换为使用UTF-8字符编码(从最不重要到最重要),以帮助确保所有输入/输出都使用相同的字符集。感谢您的帮助 最佳答案 一些提示:您的CHAR和VARCHAR列将使用最多3倍的磁盘空间。(您可能不会为瑞典语单词增加太多磁盘空间。)在读取或写入数据库之前使用SETNAMESutf8。如果您不这样

java - 数据库表中的多语言字段

我有一个应用程序需要支持多语言界面,确切地说是五种语言。对于接口(interface)的主要部分,可以使用标准ResourceBundle方法来处理。但是,数据库包含大量表格,其元素包含人类可读的名称、描述、摘要等。需要能够以所有五种语言输入每一项。虽然我想我可以简单地在每个表上设置字段,例如NameLang1NameLang2...我觉得在编写代表每个表的bean时,这会导致大量基本相同的代码。从纯面向对象的角度来看,解决方案非常简单。每个类都有一个Text对象,其中包含每种语言的相关文本。这更有用,因为只有一种语言是强制性的,其他语言有回退规则(例如,如果语言4缺少返回语言2,返回

java - 如何在阿拉伯(hijri)日历中执行 'between' 并在 MySQL 中将其保存为 'date'?

我的问题实际上是我的最终目标。到目前为止,我有2个问题。如何在mysql中将阿拉伯语日期保存为“日期”?因为,我一直在将Gregorian转换为Hijri,然后使用preg_replace(php,目前,final在Java中)将数字更改为arabicasciihex...然后,将其作为varchar保存在MySQL中。我知道排序规则cp1256_general_ci允许我们以阿拉伯语存储,但目前,为了简单起见,我将其放在一边。utf-8_general也很好。因此,存储为varchar不是问题,存储为“日期”才是问题。对其执行查询。我认为要求到此为止,但现在的任务是执行诸如“介于”x