Örnek sorular
Mysql Types ConstraintsZorluk 1
MySQL 8.0'ın standart default_storage_engine ayarında, ENGINE belirtilmezse CREATE TABLE hangi storage engine'i kullanır?
- aInnoDB✓
- bMyISAM
- cMEMORY
- dARCHIVE
Açıklama:MySQL 8.0'ın standart default_storage_engine ayarı InnoDB'dir. Ancak bu ayar sunucu veya oturum düzeyinde değiştirilebilir; dolayısıyla ENGINE belirtilmezse o anda bu değişkende adı bulunan engine kullanılır. ENGINE=... ifadesini açıkça vermek de ilgili tablo için varsayılanı geçersiz kılar.
Mysql Types ConstraintsZorluk 1
Aşağıdakilerden hangisi InnoDB storage engine'inin MyISAM'a göre temel bir avantajıdır?
- aAynı veri için her zaman daha az disk alanı kullanması
- bForeign key ve transaction (COMMIT/ROLLBACK) desteği✓
- cYalnızca InnoDB'nin fulltext index desteklemesi
- dHiçbir kilitleme mekanizmasına ihtiyaç duymaması
Açıklama:InnoDB'yi MyISAM'dan ayıran temel özellikler transaction desteği (COMMIT/ROLLBACK, redo/undo log tabanlı crash recovery) ve foreign key zorlamasıdır. Fulltext indexleme yalnızca InnoDB'ye özgü değildir — MyISAM bunu daha önce destekliyordu, InnoDB ise 5.6'da kazandı. Her engine doğruluğu garanti etmek için bir tür kilitlemeye ihtiyaç duyar.
Mysql Types ConstraintsZorluk 1
MySQL'de en az disk alanı kullanan tamsayı tipi hangisidir?
- aINT
- bSMALLINT
- cTINYINT✓
- dMEDIUMINT
Açıklama:TINYINT 1 byte kullanır (aralık -128..127, ya da unsigned'da 0..255), SMALLINT 2 byte, MEDIUMINT 3 byte, INT ise 4 byte kullanır. TINYINT, standart MySQL tamsayı tipleri arasında en küçüğüdür.
Mysql Types ConstraintsZorluk 1
Para tutarları gibi tam ondalık hassasiyet gerektiren değerler için hangi veri tipi tercih edilmelidir?
- aFLOAT
- bDOUBLE
- cINT
- dDECIMAL✓
Açıklama:DECIMAL, basamakların paketlenmiş binary temsili olarak tam sabit-noktalı değerler saklar, bu yüzden üzerindeki aritmetik işlemler binary floating point'e özgü yuvarlama hatasından etkilenmez. FLOAT/DOUBLE IEEE 754 binary yaklaşık değerlerdir ve para için güvenli değildir; INT ise ondalık kesirli tutarları hiç temsil edemez.
Mysql Types ConstraintsZorluk 1
VARCHAR(n) tanımında n neyi ifade eder?
- aSaklanabilecek maksimum karakter sayısını✓
- bDeğer için her zaman ayrılan sabit byte sayısını
- cSütunun charset'inin kullandığı byte sayısını
- dSütun üzerindeki index'in izin verilen maksimum uzunluğunu
Açıklama:VARCHAR(n)'deki n bir byte sayısı değil karakter-sayısı sınırıdır — gerçekte kullanılan byte sayısı sütunun charset'ine (örn. utf8mb4'te karakter başına 4 byte'a kadar) ve saklanan değerin gerçek uzunluğuna bağlıdır, çünkü VARCHAR uzunluk-önekli değişken-uzunluklu bir tiptir.
Mysql Types ConstraintsZorluk 1
Emoji gibi 4-byte UTF-8 karakterleri doğru şekilde saklamak için hangi MySQL charset kullanılmalıdır?
- autf8
- butf8mb4✓
- clatin1
- dascii
Açıklama:MySQL'in utf8'i (utf8mb3 takma adı) karakter başına en fazla 3 byte saklar ve çoğu emoji gibi tam 4-byte UTF-8 kod noktalarını temsil edemez. utf8mb4 karakter başına 4 byte'a kadar tam Unicode aralığını destekler ve emoji/tam Unicode desteği için doğru seçimdir.