2016-10-20 13 views
0

は、私はこのように見えるのテーブルを持っている:
複数のユーザーがこのクエリを同時に使用すると問題はありませんか?

=================================  ========================== 
       USER        NOTE 
=================================  ========================== 
id_u int auto_increment (PK)   id_n int auto_increment (PK) 
name varchar(50)      id_u int (FK) 
             text varchar(100) 
=================================  ========================== 

このクエリは、ユーザーの大量のウェブサイト上の任意の問題を引き起こす可能性がある場合、私は好奇心旺盛です。

$query = "INSERT INTO USER VALUES('','john')"; //query 
$result = mysql_query($query); 
if($result){ 
    $query = "INSERT INTO NOTE VALUES (LAST_INSERT_ID(),'','abc')"; 
    $result = mysql_query($query); 
    if($result){ 
     echo "success"; 
    }else{ 
     echo "failed"; 
    } 
}else{ 
    echo "failed"; 
} 

複数のユーザーが同時にこのクエリを使用すると問題はありませんか?

答えて

0

同時にテーブルから選択して挿入すると、MySQLはSELECTから行を保持する一時テーブルを作成し、それらの行をターゲットテーブルに挿入します。 http://dev.mysql.com/doc/refman/5.7/en/insert-select.html

:TEMPORARY表は

参照同じ文の中での二回参照することができないので、しかし、それは、SELECT ... TからtはTEMPORARYテーブルであるとき...あなたはトンINTO INSERTを使用することはできませんというのは本当のまま

関連する問題