所以我試圖使用 sql 驅動程序將此字符串輸入到 mysql 數據庫中。我收到此錯誤 -Do?a Merced Elementarypanic: 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 |
2 回答

慕容森
TA貢獻1853條經驗 獲得超18個贊
在蘋果上運行?我想應該說Do?a Merced Elementary
?然而,?
要從 x96 開始,您必須從“MacRoman”編碼的文本開始。
簡單的解決方案可能是SET NAMES macroman
在連接到 MySQL 后立即執行。
- 2 回答
- 0 關注
- 194 瀏覽
添加回答
舉報
0/150
提交
取消