Php PDO Mysql更新没有结果
我有一个mysql数据库表currency_exchange列货币,xrate和时间。Php PDO Mysql更新没有结果
我有一个JSON货币饲料这是提供货币的汇率为:
“AED”:3.67266,“AFN”:57.1294等。
我需要在我的数据库更新值。我的php代码如下:
$phpArray = json_decode($jsonData, true);
$extime = $phpArray['timestamp'];
$rates = $phpArray['rates'];
include_once 'connstring.inc.php';
$uptime = date("m-d-Y H:i:s");
if (isset($rates) && !empty($rates))//if data set and not empty
{
$conn->beginTransaction();
$stmt = $conn->prepare("UPDATE `currency_exchange` set `currency` = :currency, `xrate` = :exchangerate,`time` = :time");
try
{
foreach($rates as $key => $value)
{
$stmt->execute(array(':currency' => $key, ':exchangerate' => $value, ':time' => $uptime));
}
$conn->commit();
}//end try
catch(PDOException $e)
{
$conn->rollBack();
}
}//end if
目前我的表是空的。我需要有一个空插入其他更新代码。这怎么可能。
请求帮助。提前致谢。
更新:
检查currency_exchange表中的$ rowcount。如果($ rowcount> 0)更新它,否则插入。解决它..
正如你所说的你的表是空的,你第一次必须执行一个“INSERT”查询。 “更新”查询仅用于更新现有数据。 你有
$stmt = $conn->prepare("INSERT INTO `currency_exchange` (`currency` ,`xrate`,`time`) VALUES (currency, exchangerate,time");
我需要检查是否有值插入的条件其他更新 – user3790186 2014-10-06 10:26:38
$ stmt = $ conn-> prepare(“INSERT INTO currency_exchange(currency,xrate,time) VALUES(:currency,:exchangerate,:time“);也导致没有插入???? – user3790186 2014-10-06 10:41:43
更新没有插入,也没有错误??混淆 – user3790186 2014-10-06 11:04:52
SQL UPDATE更换
的方式来改变行已经存在于DB /表。使用INSERT添加行..(reg:“目前我的表是空的。”) – fast 2014-10-06 10:01:29
您不能确定没有错误:您已经编写了代码来吞服错误消息! – 2014-10-06 10:01:45
对不起,我的意思是如何添加如果空插入或更新。我已经删除错误检查代码 – user3790186 2014-10-06 10:07:32