草庐IT

utf8_encoded_str

全部标签

mysql utf8mb4_unicode_ci 导致唯一键冲突

我有一张这样的tableCREATETABLE`mb1`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(30)CHARACTERSETutf8mb4COLLATEutf8mb4_unicode_ciNOTNULL,PRIMARYKEY(`id`),UNIQUEKEY`u_name`(`name`))ENGINE=InnoDBDEFAULTCHARSET=utf8;然后我插入两行insertintomb1(name)values('K'),('K');注意,第二个K是unicode字符+------+-----------+|name|he

由 sql 行组成的 PHP 数组进行 json_encode

我无法使用json_encode将由sql查询生成的php数组转换为JSONObject。我正在使用googlevolley来实现连接。当涉及到单行结果时,我没有遇到任何问题,但是当有超过1行时,我在我的应用程序中遇到错误,这意味着我没有真正接收到JSONObject。这是我的php代码if(mysql_num_rows($result)>0){$rutina=array();while($row=mysql_fetch_assoc($result)){$rutina[]=$row;}}然后我就这样还了echojson_encode($rutina);我知道mysql已被弃用,我很快就

Php json_encode 数组输出\错误

你好,我有带有输出json编码的phpmysqlpdo数组,并在输出中给我\\\个字符,我想删除它们。我的php代码$stmt2=$this->conn->prepare("SELECTID,clientNameFROMClientsWHEREuserID='$userID'ORmainAccountID='$mainAccountID'ORDERBYIDDESC");$stmt2->execute();$result=$stmt2->fetchAll();foreach($resultas$userRow2){$private_list[]='{"name":"'.$userRow2

MySQL UTF/Unicode 迁移技巧

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

mysql - 使用带有 UTF8 的 VARCHAR 的 SQL 表(关于多字节字符长度)

就像在OracleVARCHAR(60CHAR)中一样,我想指定一个可变长度的varchar字段,具体取决于插入的字符。例如:createtableX(textvarchar(3))insertintoX(text)VALUES('äöü')应该可以(使用UTF8作为数据库的默认字符集)。在DB2上我得到这个错误:DB2SQLError:SQLCODE=-302,SQLSTATE=22001(字符数据,发生右截断;例如,更新或插入值是一个对于列来说太长的字符串,或者日期时间值不能分配给主变量,因为它太小。)我正在寻找DB2、MsSql、MySql、Hypersonic的解决方案。

PHP 与 UTF8 输出到 PHPExcel?

我在使用PHPExcel将数据从utf8mysql数据库导出到Excel工作表并保留中文字符时遇到问题。我的mysql数据库是utf8并且里面有很多汉字,我正在将该数据导出到一个多表xls文件(excel5)并且每次导出汉字都会变成“?”。我试过utf8_encode()但它对我不起作用。我还尝试将输出更改为excel2007,认为这将是excel5编写器问题。有没有办法让汉字正确导出?我是否必须将整个php文件制作为utf8?如果是这样,我会怎么做?这是我遇到问题的部分:$res2=mysql_query("SHOWCOLUMNSFROM".$sheetnametemp);while

mysql - 当 str 包含 'é' 或 'ë' 且 substr 仅包含 'e' 时,INSTR(str,substr) 不起作用

在另一篇关于stackoverflow的帖子中,我读到INSTR可用于按相关性对结果进行排序。我对colLIKE'%str%'和INSTR(col,'str')`的理解是它们的行为相同。排序规则的处理方式似乎有所不同。CREATETABLE`users`(`id`int(11)NOTNULLAUTO_INCREMENT,`name`varchar(64)COLLATEutf8_unicode_ciDEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8COLLATE=utf8_unicode_ci;INSERTINTOu

php - 散列密码并将其和盐保存到 mysql pdo utf8 编码

我有这个问题,如果不合适,请在评论中告诉我,我会放弃。事情是这样的:我用这段代码生成盐:$salt=mcrypt_create_iv(32);密码是这样的:$password=hash('sha256',$_POST['password'].$salt);并将$salt和$password保存到MYSQL数据库中,目前没有问题,如果我这样连接:$pdo=newPDO('mysql:host=hostname;dbname=defaultDbName','username','password');但如果我以其他方式连接:$pdo=newPDO('mysql:host=hostname;

php - 我数据库中的 "UTF8"数据真的编码正确吗?

我有一个带有MYSQL数据库的PHP应用程序,它“应该”包含UTF8编码的数据。关于unicode字符,我的应用程序似乎从头到尾都能正常工作。如果有人将“Strömgren”提交到我的数据库(通过HTML表单),当我取回数据时我会看到“Strömgren”,等等。我的数据库表都是UTF8,我的html页面和表单都是charset=utf-8。我最近注意到,在我的应用程序的一部分中,我的unicode字符似乎是双重编码的。当我显示应该是Strömgren时,我看到了Strömgren--Str\xc3\xb6mgrenvsStr\xc3\x83\xc2\xb6mgren。如果我对错误的字

php - SQLSTATE[42000] : Syntax error or access violation: 1064 default character set utf8 collate utf8_unicode_ci' at line 1

这个问题在这里已经有了答案:Syntaxerrororaccessviolationerrorwhilerunning"phpartisanmigrate"formigrationfilecontainingprimary&foreignkeys(2个答案)关闭去年。我正在尝试将此代码迁移到mysql数据库中,但不断收到此错误消息。SQLSTATE[42000]:Syntaxerrororaccessviolation:1064YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserververs