繁体   English   中英

MySQL“加载本地数据文件”

[英]MySQL “LOAD LOCAL DATA INFILE”

我遇到了一个问题,我似乎无法克服。 我正在使用LOAD LOCAL DATA INFILE从文本文件(两列29.12 23.42,例如,用一个空格分隔)中获取信息。 最初,这只在MySQL中只处理一列,但是我不得不添加一个ID AUTO INCREMENT以便可以使用最新的条目,此外,我现在想将另一列存储在数据库中。 这是我的代码,它可能很明显,但是我似乎找不到:

<?PHP
$username = "root";
$password = "";
$hostname = "localhost";
$table = "Received_Data";

// Connect to Database and Table

$dbhandle = mysql_connect($hostname, $username, $password)
    or die("Unable to connect to MySQL");
echo "Connected to MySQL<br>";

$selectdatabase = mysql_select_db("IWEMSData",$dbhandle)
    or die("Could not select IWEMSData");
echo "Connected to IWEMSData<br>";

// Clear Current Table and ReCreate

$dt = /*"UPDATE Received_Data SET PotVal = ''";*/ "DROP TABLE Received_Data";
mysql_query($dt);

$ctb = "CREATE TABLE Received_Data
(
Current DECIMAL(30,2) NOT NULL,
PotVal DECIMAL(30,2) NOT NULL, 

ID BIGINT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(ID,PotVal,Current)
)";

mysql_query($ctb, $dbhandle);

echo "Received_Data Table has been created";

// Text File to read in

$Textfile = 'IWEMSData.txt';

mysql_query('

LOAD DATA LOCAL INFILE "IWEMSData.txt" 
REPLACE INTO TABLE Received_Data 
FIELDS TERMINATED BY "" 
LINES TERMINATED BY "\\r\\n
(PotVal, Current)
";')

or die('Error Loading Data File.<br>' . mysql_error());

// Close Database connection when complete

mysql_close($dbhandle);
?>

所以我想要的是列1是ID,该ID在每次输入时都会自动增加。 第二行是PotVal,第三行是Current。 然后,我只想存储在第二列和第三列中。

我得到的问题是ID和Current显示的值不正确,我似乎只能得到一行。

提前致谢!

mysql_query('
LOAD DATA LOCAL INFILE "IWEMSData.txt" 
REPLACE INTO TABLE Received_Data 
FIELDS TERMINATED BY "" /*<- terminated by nothing? Shouldn't there be a space in it?*/
LINES TERMINATED BY "\\r\\n /*<- the closing " is missing*/
(PotVal, Current)
";') /*<- ah, here's the missing " What does it do here?*/

像这样写:

mysql_query('
LOAD DATA LOCAL INFILE "IWEMSData.txt" 
REPLACE INTO TABLE Received_Data 
FIELDS TERMINATED BY " " 
LINES TERMINATED BY "\\r\\n"
(PotVal, Current)
;')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM