5.00 / 1 oy

MySQL'de tek seferde birden çok tabloya veri girmek

MySQL ile bir tabloya satır eklerken aynı anda başka bir tabloya da satır eklememiz gerekebilir. MySQL'de birden fazla tabloya veri eklemek için iki farklı INSERT komutu kullanabiliriz. Ancak eğer bir tablodaki giriş tamamlandıktan sonra o tablodaki bir değeri (ID gibi) diğer tabloda kullanmamız gerekirse bunun da çözümü var.

Örneğin iki adet tablomuz olsun.

- Kişiler tablosu

- Kişi rolleri tablosu

Kişiler tablosuna kullanıcı ID'si ve adını yazdıralım. Kişi rolleri tablosuna ise kişiler tablosundaki ID değerini ve rol olarak da "uye" rolünü yazdıralım. Ancak kişiler tablosundaki ID değeri, kullanıcı kayıt olduktan sonra otomatik olarak MySQL tarafından üretileceği için şöyle bir çözüm yolu uygulayabiliriz:

BEGIN;
INSERT INTO kisiler (ad)
  VALUES('phpcoder');
INSERT INTO roller (kisiID, rol) 
  VALUES(LAST_INSERT_ID(),'uye');
COMMIT;

MySQL'de Auto incerement (otomatik artış) ile atanan ID değerlerini seçmek için LAST_INSERT_ID() fonksiyonunu kullanabilirsiniz.

 

Editör editi: sitedeki bazı diğer benzer başlıklar için;

bkz: MySQL ile tek seferde çok veri girmek

bkz: MySQL'de sonuç sayısını sınırlamak (Limit)

bkz: MySQL'de IS NULL ve IS NOT NULL Kullanımı ve Örnekleri

bkz: MySQL'de Tablodan Veri Seçmek (Select)

bkz: MySQL Veri Tipleri Nelerdir?

bkz: MySQL Anahtar Kelimeleri Nelerdir?

PhpCoder

12.05.2021 12:16

Bu soru henüz yanıtlanmamış.

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
MySQL'de tek seferde birden çok tabloya veri girmek

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.