簡體   English   中英

將JSON數據插入MySQL表

[英]Inserting JSON data into MySQL table

我一直在關注如何將JSON數據插入MySQL表的解決方案( 如何將json數組插入mysql數據庫 )。 該代碼似乎可以正常運行,但仍返回空數據集。

我目前正在測試一個假設,我的JSON文件中有100,000條記錄。 我創建了一個類似的JSON文件,其中只有3條記錄,以為文件的大小可能已經阻礙了它的運行,但這也不起作用。

我已經檢查了數據庫名稱,表名稱和行名稱,但與顯示的代碼正確。 有指針嗎?

<?php 
$json = file_get_contents('E:\xampp\htdocs\MOCK_DATA.json');
$obj = json_decode($json, true);

$connection = mysqli_connect("localhost", "root", "");
mysqli_select_db($connection, "et_test") or die('Couldnt connect database');

foreach($obj as $item)
{
    mysqli_query($connection, "INSERT INTO 'et_test'.'test' (first_name, last_name, colour, country, city)
VALUES ('".$item['first_name']."','".$item['last_name']."','".$item['colour']."','".$item['country']."','".$item['city']."')");
}
mysqli_close($connection);
?>

按照OP希望結束的問題並將其標記為已解決:

這是有問題的代碼段'et_test'.'test'

使用反引號,因為在表名周圍使用引號是錯誤的標識符:

SQL

mysqli_query($connection, "INSERT INTO `et_test`.`test` ...

使用or die(mysqli_error($connection))mysqli_query() ,以獲取“真實”錯誤。


考慮使用准備好的語句 ,或者考慮使用帶有准備好的語句的PDO

就目前而言,您當前的代碼可以進行SQL注入

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM