Mysql AUTO_INCREMENT

Salam php də qarşıma belə bir problem çıxıb

$sssoo = mysql_fetch_array(@mysql_query("select MAX(id) as num from MYSQL_NAME ORDER BY `id`  DESC LIMIT 1 "));
$new = $sssoo[0] + 1;

@mysql_query("INSERT INTO `MYSQL_NAME` SET `diger` = '".$new."',ve s.

Əvvəlcə onu deyim ki bu kod nəçə ildir ki işləyir.Yeni ki sciripte sehv yoxdur.
Göründüyü kimi insert yaranarkən `id` linasının üstüne +1 gelir və `digər` adlı linaya göndərilir. `id` linası hər dəfəsində AUTO_INCREMENT ile özü artır. Nəticədə `id` linası ile `digər` linası eyni dəyəre sahib olur. Son vaxtlar bu kod eyni anda 50-60 user üçün açılır problemde bunda olur . San ki melumatların oxunması gecikir eyni reqem ile 2 insert yaranan vaxtlar olur. eslinde her insert yaranarkən rəqəm +1 artmaalıdır. AUTO_INCREMENT ile yaranan `id` linasında rəqəm artır lakin `diger` adlı linada köhne rəqem qalir. Cox proses tələb eden sciriptdir .Server zeif deyil..
Php-de bələ bir kod varmı ki select emri olmadan AUTO_INCREMENT ile yaranan id-i diger bir linadada yaransin.


Yadda saxlama
Kateqoriya: Sual . , , . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (2 cavab var)

(16:37, 23/11/2014 ) #49571

Bu problem retki hallarda olur.Gün ərzinde təxmini 500 -1000 insert yaranırsa bunun 2-3 denesi bele olur ve mecburen mysql-dan editleyib deyisirem .

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(11:58, 24/11/2014 ) #49625

İki query bir birindən müstəqil ayrı query olduğundan paralel user çox olanda araya başqa query-lər girir zaman anlamında. Ona görə də belə problemlər yaranması təbiidir. Daha effektiv, bir sətirlik həll əminəm ki düşünmək olar, amma gəlin indi tez düşünməklə ağlıma gələn yolu deyim.
1. Bazadan heç bir id zad götürmədən birbaşa insert edirsiz. Bu zaman diger xanasına unikal bir qiymət mənimsədirsiz. Məsələn query-dən yuxarıda bir php dəyişəninə rand() funksiyası ilə filan unikal bir qiymət mənimsədirsiz, insert zamanı da məhz o qiyməti ötürürsüz diger xanasına. ( diger=’$unikal_qiymet’
2. İnsert-dən sonra update ilə məsələni qapayırsız. update table set diger=id where diger=’unikal_qiymet’;
Bu halda bütün userlərin mysql-ə datasının daxil olması prosesləri asinxronlaşır və konflikt aradan qalxır

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

Khagrov cavab verdi - Axtardığım mahnını tapa bilmirəm kömək edin (13 gün əvvəl)

E. Hacı cavab verdi - Dünəndən Kompüterlə Twitter/X və Pinterest -ə girə bilmirəm. (21 gün əvvəl)

orkhanrza cavab verdi - AZ9095də bağlama qalıb (26 gün əvvəl)

Ismayil1997 cavab verdi - İndiki dövrdə İngilis dili müəllimliyi ixtisasını seçməyə dəyər? (34 gün əvvəl)

revan orucov cavab verdi - Bakıda evə 100mbps+ internet verən provayder var? (38 gün əvvəl)

E. Hacı cavab verdi - WordPress sistemli saytda Facebook və İnstagram platformalarına özəl target_blank tənzimlənməsi haqqında... (40 gün əvvəl)

Jurnalist cavab verdi - WordPress sistemli saytda Facebook və İnstagram platformalarına özəl target_blank tənzimlənməsi haqqında... (40 gün əvvəl)

asssa1 cavab verdi - Riyazi proqramlar üçün proqram (42 gün əvvəl)

Aleks cavab verdi - İndiki dövrdə İngilis dili müəllimliyi ixtisasını seçməyə dəyər? (48 gün əvvəl)

E. Hacı cavab verdi - İndiki dövrdə İngilis dili müəllimliyi ixtisasını seçməyə dəyər? (48 gün əvvəl)

Software Developer cavab verdi - Patreon , Ko-fi , Buy Me A Coffee , Kickstarter kimi saytlardan gələn pula görə vergi tutulur? (48 gün əvvəl)

E. Hacı cavab verdi - Riyazi proqramlar üçün proqram (49 gün əvvəl)

Software Developer cavab verdi - Kursda xaricdə təhsil imkanı nece yaranır? (49 gün əvvəl)

darkpixel cavab verdi - Patreon , Ko-fi , Buy Me A Coffee , Kickstarter kimi saytlardan gələn pula görə vergi tutulur? (50 gün əvvəl)

darkpixel cavab verdi - Patreon , Ko-fi , Buy Me A Coffee , Kickstarter kimi saytlardan gələn pula görə vergi tutulur? (50 gün əvvəl)

Software Developer - 615 xal

E. Hacı - 608 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23284 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2024