Column Type --------------------------------- id int(11) chainid int(11) commission decimal(10,2) order_count int(11) total_order_value decimal(10,2) fromdt date todt date
我從我的php文件
$query = "DELETE FROM `tb` WHERE chainid=$row[0];";
error_log("1st : ".$query);
$storeit = mysql_query($query);
error_log("result of query : ".$storeit);
$query = "INSERT INTO `tb` VALUES(null,$row[0],$com,$oc,$ov,'$startdate','$enddate');";
error_log("2nd : ".$query);
$storeit = mysql_query($query);
error_log("result of query : ".$storeit);
運行這段代碼,但沒有什麼發生在DB和error_log中的打印是:
1st:DELETE FROM
tb
WHERE chainid = 4 AND fromdt ='2017-05-01'AND todt ='2017-05-31';查詢的結果:
INSERT INTO
tb
VALUES(NULL,4,4755.69,94,6793.84, '2017年5月1日', '2017年5月31日');查詢結果:
而當我用這兩句:在phpmyadmin
DELETE FROM `tb` WHERE chainid=4 AND fromdt='2017-05-01' AND todt='2017-05-31';
INSERT INTO `tb` VALUES(null,4,4755.69,94,6793.84,'2017-05-01','2017-05-31');
在SQL標籤,他們的工作完美!
- 所以,我不知道我的代碼有什麼問題?有什麼我可以做的嗎?使用後
UPDATE [標籤:mysql_error()]從http://php.net/manual/en/function.mysql-error.php
function q($query){
$result = mysql_query($query);
if (mysql_errno()) {
$error = "MySQL error ".mysql_errno().": ".mysql_error()."\n<br>When executing:<br>\n$query\n<br>";
error_log($error);
}
}
,並調用此函數,而不是使用:
$query = "DELETE FROM `tb` WHERE chainid=$row[0] AND fromdt='$startdate' AND todt='$enddate';";
$result = q($query);
$query = "INSERT INTO `tb` VALUES(null,$row[0],$com,$oc,$ov,'$startdate','$enddate');";
$result = q($query);
我這些:
2014年MySQL錯誤:命令不同步;
執行時:
DELETE FROMtb
WHERE chainid = 4 AND fromdt ='2017-05-01'AND todt ='2017-05-31';MySQL錯誤2014:命令不同步;您現在無法運行此命令
執行時:
INSERT INTOtb
VALUES(null,4,4755.69,94,6793。84, '2017年5月1日', '2017年5月31日');
UPDATE 2
約一點搜索之後:
命令不同步;你不能在Commands out of sync; you can't run this command now SQL
我想通了,我不得不關閉連接並重新啓動它現在 運行此命令。但問題是我使用的功能在我function.php的,其中包括在我的的header.php文件開始連接數據庫:
function db_connect()
{
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "dbname";
@mysql_connect($servername,$username,$password) or die ("error in host connection");
header('Content-Type: text/html; charset=utf-8');
mysql_set_charset('utf8_unicode_ci');
@mysql_select_db($dbname) or die("error in db connection");
mysql_query("SET NAMES 'utf8'");
}
db_connect();
- 那麼,如何關閉連接使用mysql_close();?
'Delete'和'insert'不會返回任何東西。行是否已被刪除/插入?你也不應該再使用'mysql_'函數,使用'mysqli'或'pdo'來進行未來的開發。 – chris85
沒有東西被刪除,也沒有插入任何東西 – Hossam
尋找錯誤,http://php.net/manual/en/function.mysql-error.php。 – chris85