Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

aynı tabloda trigger ile random sayı oluşturma

kullanicilar tablosu
kullanici_Id (int 11) Autoinc
kullanici_adi (varchar 20)
anahtar (bigint 15)


benim istediğim mysql de kullanicilar tablosuna kayıt eklendikten sonra anahtar alanına random 15 haneli sayı oluşturmak.

Bunu trigger ile yapabilirmiyim yada mysql de bunun farklı bir yöntemi var mı?
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • 1
    Utku adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    1 cevap - 0 soru
    Başka çözüm ya da daha iyi olan bir çözüm veritabanında rasgele sayı veya parola üreten bir prosedür saklayıp bunun çıktısını kullanabiliriz.

    Basit bir çözümü:
    RAND() ile 0,1 arasında bir float sayı oluşturuyoruz
    10^15 ile çarpıp 15 alta yuvarlayarak 15 haneli bir sayı elde ediyoruz.
    basit bir insert triggeriyla kullanici eklenirken bunu da ekliyoruz

    delimiter |
    CREATE TRIGGER randomkey BEFORE INSERT ON kullanicilar
      FOR EACH ROW BEGIN
        UPDATE kullanicilar SET anahtar = FLOOR(RAND()*1000000000000000) WHERE kullanici_id = NEW.kullanici_id;
      END;
    |
    • kerimderin adlı üyenin fotoğrafı kerimderin
      peki bu uretilen anahtarın db de olup olmadığını kontrol etmimiz lazım değil mi ?
      10 yıl önce yazılmış

Cevaplar

Hiç cevap bulunamadı.