首頁 > 資料庫 > mysql教程 > 使用 Bash 將資料插入 MySQL 時如何修復「列計數與值計數不符」錯誤?

使用 Bash 將資料插入 MySQL 時如何修復「列計數與值計數不符」錯誤?

Linda Hamilton
發布: 2024-12-18 08:23:10
原創
972 人瀏覽過

How to Fix

用於將值插入MySQL 的Bash 腳本解決方案

嘗試使用bash 腳本將值插入MySQL 時,使用者可能會遇到錯誤,指示列計數和值計數之間不符。當輸入資料格式與資料庫表中的預期列不一致時,通常會出現此錯誤。考慮以下範例:

下面的腳本旨在將文字檔案中的值插入名為「test」的MySQL 表中:

#!/bin/bash
echo "INSERT INTO test (IP,MAC,SERVER) VALUES ('cat test.txt');" | mysql -uroot -ptest test;
登入後複製

但是,在執行時,腳本會傳回錯誤:

ERROR 1136 (21S01) at line 1: Column count doesn't match value count
at row 1
登入後複製

要解決此問題,請驗證文字檔案「test.txt」中的資料格式。如果資料格式不正確,將導致 MySQL 表中的預期列數與插入的值之間存在差異。

這是採用不同方法的修訂腳本:

#!/bin/bash
inputfile="test.txt"
cat $inputfile | while read ip mac server; do
    echo "INSERT INTO test (IP,MAC,SERVER) VALUES ('$ip', '$mac', '$server');"
done | mysql -uroot -ptest test;
登入後複製

此腳本迭代文字檔案中的每一行並提取每一列的值(IP、MAC、伺服器)。然後,它為每一行建構一條 SQL 語句,並將其傳送到 MySQL 命令,確保列計數和值計數相符。

透過修改腳本並正確格式化文字檔案中的輸入數據,您可以使用 bash 腳本成功將值插入 MySQL 表。

以上是使用 Bash 將資料插入 MySQL 時如何修復「列計數與值計數不符」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板