在這種情況下,您在嘗試使用下列命令將XML 檔案匯入MySQL 資料庫表時遇到錯誤載入XML 指令。出現此問題的原因是表中的欄位數與 XML 檔案中的值不匹配,且表中多了一個自動遞增 id 欄位。
要解決此錯誤,您可以指定要使用 LOAD XML 語句明確匯入的欄位。以下 SQL 語句將完成此操作:
LOAD XML LOCAL INFILE '/pathtofile/file.xml'
INTO TABLE my_tablename(personal_number, firstname, lastname, email, start_time, end_time, employee_category);
透過指定欄位名稱,可以指示 MySQL 在匯入過程中跳過缺少的 id 欄位。 id 欄位將根據資料表的自動增量設定自動填入增量值。
列對映的替代方法
如果需要,您也可以使用XML_LOAD() 函數將 XML 資料匯入 MySQL。此函數提供了更大的靈活性,並允許明確列映射:
SET @xmlData = XML('... ');
SELECT XML_LOAD(@xmlData, '/resultset/row',
'(personal_number, firstname, lastname, email, start_time, end_time, employee_category)'
INTO TABLE my_tablename);
在這種情況下,XML_LOAD() 函數解析 XML 資料並根據 INTO TABLE 子句中指定的列映射填入 my_tablename 表。
透過利用這些方法,您可以成功地將 XML 資料匯入 MySQL 資料庫表中,跳過缺少的 id 欄位並依靠自動增量功能為每個資料產生唯一識別碼 排。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3