ホームページ > データベース > mysql チュートリアル > 列数が一致しない場合に XML ファイルを MySQL テーブルにインポートする方法

列数が一致しない場合に XML ファイルを MySQL テーブルにインポートする方法

Linda Hamilton
リリース: 2024-10-30 01:54:28
オリジナル
784 人が閲覧しました

How to Import an XML File into a MySQL Table When Column Counts Don't Match?

XML_LOAD() 関数を使用した XML ファイルの MySQL テーブルへのインポート

問題:

MySQL への XML ファイルのインポートテーブルの列数が一致しないため、エラーが発生します:「列数が値数と一致しません。」

原因:

XML ファイルに列値がありません。これは、自動インクリメント プロパティを持つデータベース テーブルの id 列に対応します。

解決策:

インポート中に id 列を除外することで、信頼できるようになります。 MySQL の自動インクリメント関数を使用してデータを設定します。これを行うには、LOAD XML ステートメントでインポートする列を指定し、id 列を省略します。

構文:

LOAD XML LOCAL INFILE '/pathtofile/file.xml' INTO TABLE my_tablename(personal_number, firstname, ...);
ログイン後にコピー

例:

あなたの場合、次のステートメントは、id 列を除いて XML ファイルを my_tablename テーブルにインポートします。

LOAD XML LOCAL INFILE '/pathtofile/file.xml' INTO TABLE my_tablename(personal_number, firstname, lastname, email, start_time, end_time, employee_category);
ログイン後にコピー

よりスマートな XML インポート処理:

LOAD XML 関数の代わりに、MariaDB が提供する XML to MySQL ユーティリティの使用を検討できます。これには、次のようないくつかの利点があります。

  • 列マッピングのカスタマイズ
  • エラー処理と検証
  • XSD スキーマのサポート

インストールと使用法:

  1. MariaDB の xml2mysql パッケージをインストールします:
sudo apt-get install mariadb-server-xml2mysql
ログイン後にコピー
  1. 次のコマンドを使用して XML ファイルをインポートします:
mysql -u username -p password database_name < /pathtofile/file.xml
ログイン後にコピー

以上が列数が一致しない場合に XML ファイルを MySQL テーブルにインポートする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート