Giriş yapmadınız.

Duyuru

TÜRKÇE KİTAP DUYURUSU:
Laravel 5 : Laravel 5.1 Güzelliği (Türkçe)
Vue.js 2 : Vue.js 2 Majesteleri (Türkçe)

#1 31.12.2018 20:33:15

elementaryos
Üye
Kayıtlı: 20.04.2017
Mesajlar: 168

Auto increment tercihi

subscription_id | user_id
ya da
friend_id | user_id
benzeri pivot tablolarda auto increment mantıklı mı ? Çünkü bunlar mutationlar aracılığı ile işlemleri gerçekleşiyor.
Dolaylı bazı fonksiyonlar gerektiriyor bu kullanım aynı zamanda çünkü gidip sorgulanacak bir id yok ortada.
Bu tarz kullanımlarda bir de sizin bakış açınızı öğrenmek istiyorum.
Nitekim sürekli farklı şeyler deniyorum avantaj ve dezavantajları detaylı tespit edebilmek için. İlerlemezse önem arzetmeseler de bu tarz deneyimlerin optimizasyona katkısı büyük.

Çevrimdışı

#2 31.12.2018 21:29:25

sineld
Yönetici
Yer: Bursa
Kayıtlı: 26.12.2012
Mesajlar: 1,400
Website

Yanıt: Auto increment tercihi

Bu benim izin_rol ilişki tablomun yapısı:

CREATE TABLE `permission_role` (
  `permission_id` bigint(20) unsigned NOT NULL,
  `role_id` bigint(20) unsigned NOT NULL,
  PRIMARY KEY (`permission_id`,`role_id`),
  KEY `permission_role_role_id_foreign` (`role_id`),
  KEY `permission_role_permission_id_role_id_index` (`permission_id`,`role_id`),
  CONSTRAINT `permission_role_permission_id_foreign` FOREIGN KEY (`permission_id`) REFERENCES `permissions` (`id`) ON DELETE CASCADE,
  CONSTRAINT `permission_role_role_id_foreign` FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

Gördüğünüz üzere burada hiçbir autoincrement alan yok, zaten çok gereksiz olur, zira hiçbir zaman bu tabloya doğrudan sorgu yapmıyorsunuz, hep pivot sorgularda kullanılıyor.

Çevrimdışı

#3 01.01.2019 21:42:38

elementaryos
Üye
Kayıtlı: 20.04.2017
Mesajlar: 168

Yanıt: Auto increment tercihi

Kullanmıyordum fakat gereksiz olacağı kanaatine iyice vardım.
Sineld hocama teşekkür edeyim bir cümlede güzel özetlemiş.
Orta seviyeli projede sıkıntı oluşturmasada burada neden bu kullanımdan kaçınılması gerektiği hakkında açıklayıcı bir yazı paylaşayım
http://www.sqlitetutorial.net/sqlite-autoincrement/
Dileyen olursa yazıyı türkçeleştirebilirim.

Son düzenleyen elementaryos (01.01.2019 21:43:12)

Çevrimdışı

#4 02.01.2019 07:19:21

coder2
Üye
Yer: Antalya
Kayıtlı: 09.12.2018
Mesajlar: 9

Yanıt: Auto increment tercihi

elementaryos yazdı:

Kullanmıyordum fakat gereksiz olacağı kanaatine iyice vardım.
Sineld hocama teşekkür edeyim bir cümlede güzel özetlemiş.
Orta seviyeli projede sıkıntı oluşturmasada burada neden bu kullanımdan kaçınılması gerektiği hakkında açıklayıcı bir yazı paylaşayım
http://www.sqlitetutorial.net/sqlite-autoincrement/
Dileyen olursa yazıyı türkçeleştirebilirim.


Öncelikle Pivot table de bende auto incrememt kullanımını gereksiz görüyorum. Kullanmadığım birşeyi yazmak veya db de tutmak maliyetli olur.

Hocam sqlite hatırladığım kadarıyla zaten otomatik olarak row id tutuyor. Python ile çalışırken sqlite kullanıyorduk ve hiç autoincrement kullanmadım. _rowid_ gibi bir isimle tutuyordu kendi.

Çevrimdışı

Forum alt kısmı