草庐IT

unicode_minus

全部标签

python - 在 Python 中为 MySQL 转义 unicode 字符串(避免异常。UnicodeEncodeError)

我正在使用Twisted在Python中异步访问我们的数据库。我的代码如下所示:fromtwisted.enterpriseimportadbapifromMySQLdbimport_mysqlasmysql...txn.execute("""INSERTINTOusers_accounts_data_snapshots(accountid,programid,fieldid,value,timestamp,jobid)VALUES('%s','%s','%s','%s','%s','%s')"""%(accountid,programid,record,mysql.escape_st

mysql - 如何在 MySQL : if field value > 0 then minus one, 中执行此操作,否则就这样吧

UPDATEtblSETcounts=counts-1... 最佳答案 如果count是您要更新的唯一列(或者,您没有在where子句中指定其他条件),那么您可以在where子句中执行此操作UPDATE[Table]SETcounts=counts-1WHEREcounts>0;但是,如果您要更新同一查询中的其他列,这将不起作用。但是你有选择UPDATE[Table]SETcounts=MAX(counts-1,0);或UPDATE[Table]SETcounts=CASEWHENcounts>0THENcounts-1ELSE0E

php - mysql 列的最大长度并确保我不会使用 utf8_unicode_ci - PHP 超过该限制?

我在mysql中使用一个TEXT列,它是ut8_unicode_ci来存储一些从互联网上抓取的数据。收集的文本来自不同语言的不同网站。我对TEXT列的最大65535字节长度感到困惑。如何检查我插入到列中的字符串是否超过该限制?此时我正在使用strlen($str)检查字符串的长度,但是通过使用它可以确保数据不会被截断以适合列据我了解utf8_unicode_ci每个字符可以超过1个字节? 最佳答案 编辑:OP可以简单地使用strlen(),因为它返回字节,而不是字符。证人:$cattest.php#!/usr/bin/php-q$.

python - 为什么带有 charset=utf8 的 SQLAlchemy create_engine 返回 python 类型 <str> 而不是类型 <unicode>?

使用Python2.7和SQLAlchemy0.7,我使用以下命令连接到MySQL数据库:engine=create_engine('mysql://username:password@host/dbname?charset=utf8',echo=False)根据SQLAlchemy文档,设置charset=utf8自动意味着use_unicode=1,因此所有字符串都应返回为unicode。http://docs.sqlalchemy.org/en/rel_0_7/dialects/mysql.html具体举例#setclientencodingtoutf8;allstringsco

php - 整理问题,是否可以从 utf8mb4_unicode_ci 降级/转换为 utf8_general_ci?

我一直在本地工作,在部署到我客户的服务器时遇到错误MySQLsaid:Documentation'#1273-Unknowncollation:'utf8mb4_unicode_ci'经过大量挖掘,我知道这是MySQL版本相关的,我本地的MySQL是5.5,而服务器是5.1,不支持utf8mb4_unicode_ci。不幸的是,我无法升级服务器的MySQL版本。所以我的问题是,是否可以将我当前的数据库转换为MySQL5.1支持的数据库? 最佳答案 “同时”,5.1有CHARACTERSETutf8COLLATEutf8_unicod

mysql - 无法在 mysql 中插入 unicode 字形

使用此查询:UPDATE`arg`.`arg_currency`SET`symbol`='?'WHERE`arg_currency`.`id`=2LIMIT1;我收到这个错误:Warning:#1366Incorrectstringvalue:'\xF0\x90\x80\xA4'forcolumn'symbol'atrow1symbol列是CHAR(1)utf8_roman_ci,但我都尝试将排序规则更改为_general和_unicode,和字符到4,但我仍然遇到同样的错误。我做错了什么?(我都尝试通过自定义php代码和phpmyadmin插入它) 最佳答

php - Unicode字符插入数据库后变成问号

当我将一些用Unicode编写的文本插入数据库时​​,它们变成了问号。数据库编码设置为UTF-8。还有什么可能不正确?当我checkinphpMyAdmin时,只插入了问号!这是我用来连接数据库的代码:define("DB_HOST","localhost");//Setdatabasehostdefine("DB_USER","root");//Setdatabaseuserdefine("DB_PASS","password");//Setdatabasepassworddefine("DB_NAME","name");//Setdatabasename$link=mysql_co

mysql - 操作 '=' 的排序规则 (utf8_unicode_ci,COERCIBLE) 和 (utf8_general_ci,COERCIBLE) 的非法混合

当我运行以下查询时:CREATEALGORITHM=UNDEFINEDVIEWd_view_galeriasAS(SELECTid,titulo,'foto'AStipo,''ASembedFROMd_galeria_fotos)UNION(SELECTid,titulo,'video'AStipo,embedFROMd_galeria_videos)我得到错误:Illegalmixofcollations(utf8_unicode_ci,COERCIBLE)and(utf8_general_ci,COERCIBLE)foroperation'='“tipo”正在获取为utf8_uni

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

python - Django 是否对 Unicode (utf-8?) 字符串进行双重编码?

我在Django中将ndash字符存储和输出为UTF-8时遇到问题。我正在从API获取数据。在文本编辑器中检索和查看的原始形式中,给定的数据单元可能类似于:"Ilovethisdetergent\u2013itissoinspiring."(\u2013是–作为html实体)。如果我直接从API获取它并在Django中显示它,没问题。它在我的浏览器中显示为长破折号。我注意到我必须执行decode('utf-8')以避免“'ascii'codeccan'tencodecharacter”错误,如果我尝试在我的View中对该文本进行一些操作,尽管。根据Django调试工具栏,文本将作为“我