Birincil anahtarım olarak bir VARCHAR kullanıyorum.MySQL - VARCHAR'ı AUTO INCREMENT olarak kullanmak için Birincil Anahtar
CREATE TABLE IF NOT EXISTS `campaign` (
`account_id` BIGINT(20) NOT NULL,
`type` SMALLINT(5) NOT NULL,
`id` VARCHAR(16) NOT NULL AUTO_INCREMENT PRIMARY KEY
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
ancak bu işler: Ben otomatik artış o (baz 62, üst/alt durumda, sayılar), Ancak, aşağıda kodu (bariz nedenlerle) başarısız istiyorum
CREATE TABLE IF NOT EXISTS `campaign` (
`account_id` BIGINT(20) NOT NULL,
`type` SMALLINT(5) NOT NULL,
`id` VARCHAR(16) NOT NULL PRIMARY KEY
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
neler 'id' kelimesinin artışını takip etmenin en iyi yolu benim mi? (Auto_increment çalışmadığı için). Mevcut kimlik yinelemesini içeren başka bir tablo yapmam gerekiyor mu? Yoksa bunu yapmanın daha iyi bir yolu var mı?
DÜZENLEME: INT kullanmanın bir auto_increment birincil anahtarının kullanmanın mantıksal yolu olduğunu bildiğimi açıklığa kavuşturmak istiyorum. Bu soru, gördüğüm önceki diyaloga cevap olarak.
birer numaralı bir dosya oluşturmak ve sonra: Teşekkürler
Offtopic: MyISAM'ı kullanmak istediğinizden emin misiniz? İlişkisel veritabanı için, yabancı anahtarları oluşturmak için MySQL'de innoDB'ye ihtiyacınız var. –
Hayır, hiç de emin değilim. Oldukça uzun bir süredir MySQL kullanıyorum, ancak çoğu zaman MyISAM'in kullanılması gerektiği söylendi ve ben de bununla birlikte gittim: P –