所以我试图使用 sql 驱动程序将此字符串输入到 mysql 数据库中。我收到此错误 -
Do?a Merced Elementary
panic: Error 1366: Incorrect string value: '\x96a Mer...' for column 'name' at row 1
我想排除这个条目,但一直没能做到。我试过了 -
if !strings.ContainsAny(splitStr[2], "U+0303") {
if !strings.ContainsAny(splitStr[2], '\x96') {
但这并没有奏效。
让 mysql 处理这个会更好,但我不确定如何处理。
有什么建议?
编辑
这就是我连接到我的数据库的方式
db, err := sql.Open("mysql", "psanker:123@/education_data")
err = db.Ping()
db.SetMaxOpenConns(0)
check(err)
if err != nil {
fmt.Println("Failed to prepare connection to database")
log.Fatal("Error:", err.Error())
}
这是我的问题出现的地方
districtResult, err := db.Exec("INSERT INTO districts(name) VALUES(?)", strings.TrimSpace(splitStr[2]))
check(err)
SHOW CREATE TABLE 的输出
---------------------------------+
| Table | Create Table |
+-----------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| districts | CREATE TABLE `districts` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=35 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
慕容森
慕桂英3389331
相关分类