2017-02-01 9 views
2

こんにちは私は 'invoice_code'の2番目の列に自動インクリメントされた 'invoice_id'を挿入し、 'z'それ。それは別のクエリでそれを更新せずにそれを行う方法はありますか?ここで同じテーブル内の別の列に自動インクリメントIDを挿入し、別のクエリで更新せずに文字を前に追加してください

は私の列に見ることを期待するものです。

--------------------------------------------- 
| invoice_id | invoice_code | invoice_value | 
--------------------------------------------- 
|   1|   z1| sample value1 | 
|   2|   z2| sample value2 | 
|   3|   z3| sample value3 | 
--------------------------------------------- 

ここでは私のクエリはこれまでのところです:

$query = "INSERT INTO invoices() VALUES(null, 
             'z'.invoice_id, 
             'sample value'.invoice_id 
             )"; 
+0

を行います。 LAST_INSERT_ID()によって最後に挿入されたIDを取得できます。詳細についてはhttps://dev.mysql.com/doc/connector-odbc/en/connector-odbc-usagenotes-functionality-last-insert-idで入手できます。 htmlは最初にレコードを挿入し、2番目に挿入されたIDを取得し、3番目に挿入されたレコードを更新します。 – Abbas

答えて

0

「を編集し、wasn

$count = 1; 
while ($count <= 3) { 
    $query .= "INSERT INTO invoices ("invoice_code", "invoice_value") VALUES('z'.$count, 'sample value'.$count);"; 
    $count++; 
} 

は申し訳ありませんが、のようなものを試してみてください思考。

0

あなたはmysqli_insert_id($conn)

$connection = new mysqli('localhost', 'root', 'root', 'database'); 
$query  = "INSERT INTO invoices (invoice_value) VALUES('sample')"; 

// Creates new record 
mysqli_query($connection, $query); 

mysqliのの機能を使用して、最後のid

// Fetches newly inserted id 
$id = mysqli_insert_id($connection); 

は、あなたが何であるかを知っておく必要があり、既存の行

$update = "UPDATE invoices SET invoice_code='z".$id."' WHERE invoice_id = ". $id; 

// Updates the existing record with autoincrement id 
mysqli_query($connection, $update); 
0

を更新挿入フェッチすることを行うことができますこのテーブルの次の自動増分ID。

私は多分あなたは複数のクエリを使用するために持っていると思う。この

$query = "SELECT AUTO_INCREMENT FROM information_schema.tables WHERE table_name = 'table_name' AND table_schema = DATABASE()"; 
関連する問題