【问题标题】:can't use Unicode characters using mysql command line不能使用 mysql 命令行使用 Unicode 字符
【发布时间】:2014-09-09 21:50:49
【问题描述】:

我使用 mysql server 5.6 命令行发现了这种奇怪的行为。

如果我这样做:

source C:\Users\dyesdyes\Downloads\test.sql

这个文件中的代码是:

insert into `tWord`(`word`,`frequency`) values 
('à',16994.68);

创建tWord表的SQL是:

CREATE TABLE IF NOT EXISTS `tWord` (
  `idWord` INT(11) NOT NULL AUTO_INCREMENT,
  `word` VARCHAR(45) CHARACTER SET 'utf8' COLLATE 'utf8_bin' NOT NULL,
  `frequency` DOUBLE NULL DEFAULT NULL,
  PRIMARY KEY (`idWord`),
  UNIQUE INDEX `idWord_UNIQUE` (`idWord` ASC),
  INDEX `word` (`word` ASC),
  INDEX `idWord` (`idWord` ASC))
ENGINE = InnoDB
AUTO_INCREMENT = 0
DEFAULT CHARACTER SET = utf8;

错误是:

ERROR 1366 (HY000):不正确的字符串值:“word”列的“\xE0” 在第 1 行

如果我在工作台客户端中执行相同的插入语句,它工作正常。它只使用命令行给出错误...

有什么提示吗?

【问题讨论】:

  • 您确定您的 .sql 文件是使用 UTF8 编码的吗?
  • 这就是问题所在!让它成为一个答案。

标签: mysql command-line


【解决方案1】:

.sql 文件应该是 UTF8 编码的。文本编辑器应该有一个设置来保存它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-02
    • 2020-03-27
    • 1970-01-01
    • 2016-02-23
    • 1970-01-01
    相关资源
    最近更新 更多