MySQL'de tablo oluşturma: Örnekler ve açıklamalar

Son Güncelleme: Temmuz 28 2025
  • MySQL, web uygulamaları geliştirmek için kullanılan popüler bir ilişkisel veritabanı yönetim sistemidir.
  • MySQL'deki tablolar sütunlar ve satırlar halinde düzenlenir ve her sütunun bir veri türü vardır.
  • Birincil ve yabancı anahtarlar gibi kısıtlamalar veri bütünlüğü için önemlidir.
  • Hızlı sorgu yanıtını sağlamak için tablo performansının optimize edilmesi çok önemlidir.
MySQL'de tablolar oluşturun

MySQL'de tablo oluşturmaya ilişkin eksiksiz kılavuz: kavramlar, örnekler ve en iyi uygulamalar

MySQL nedir ve neden önemlidir?

MySQL nedir
İlgili makale:
MySQL nedir ve nasıl çalışır?

MySQL'de tablo oluşturma: Temel kavramlar

mysql'de bir tablo oluştur
İlgili makale:
MySQL'de Tablo Oluşturmak İçin Basit Adımlar

MySQL'de bir veritabanı oluşturun

CREATE DATABASE nombre_base_de_datos;

MySQL'de bir tablo oluşturun

CREATE TABLE nombre_tabla (
  columna1 tipo_dato,
  columna2 tipo_dato,
  columna3 tipo_dato,
  ...
);
MySQL çok tablolu sorgu örnekleri
İlgili makale:
MySQL çok tablolu sorgu örnekleri

MySQL'deki veri türleri

  • INT o INTEGER: tam sayıları depolamak için.
  • VARCHAR: değişken uzunluktaki metin dizelerini depolamak için.
  • CHAR: sabit uzunluktaki metin dizelerini depolamak için.
  • DECIMAL: ondalık sayıları saklamak için.
  • DATE: tarihleri ​​saklamak için.
  • TIME: saatleri saklamak için.
  • DATETIME: birleşik tarih ve saatleri depolamak için.

MySQL'de tablo oluşturma: Örnekler ve açıklamalar

Örnek 1: Kullanıcılar tablosu oluşturun

CREATE TABLE usuarios (
  id INT PRIMARY KEY,
  nombre VARCHAR(50),
  email VARCHAR(100),
  fecha_registro DATE
);

Örnek 2: Bir ürün tablosu oluşturun

CREATE TABLE productos (
  id INT PRIMARY KEY,
  nombre VARCHAR(100),
  precio DECIMAL(10, 2),
  fecha_creacion TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

MySQL'de kısıtlamalı tablo nasıl oluşturulur?

  • Birincil anahtarBirincil anahtar, bir tablodaki her kaydı benzersiz şekilde tanımlayan bir sütundur (veya sütun kümesidir). MySQL'de birincil anahtar oluşturmak için aşağıdaki sözdizimini kullanabilirsiniz:
CREATE TABLE nombre_tabla (
  columna1 tipo_dato,
  columna2 tipo_dato,
  ...,
  PRIMARY KEY (columna1)
);
  • Bu örnekte “column1” sütunu birincil anahtar olarak tanımlanmıştır.
  • Yabancı anahtar: Yabancı anahtar, ortak bir sütuna dayalı olarak iki tablo arasında ilişki kurar. MySQL'de yabancı anahtar oluşturmak için şu adımları izlemeniz gerekir:
    1. Öncelikle birincil anahtarın bulunacağı ana tabloyu oluşturalım:
CREATE TABLE tabla_principal (
  id INT PRIMARY KEY,
  ...
);
CREATE TABLE tabla_secundaria (
  id INT,
  ...
  FOREIGN KEY (id) REFERENCES tabla_principal(id)
);
    1. Bu örnekte, “child_table” tablosundaki “id” sütunu yabancı anahtar olarak tanımlanmıştır ve “parent_table” tablosundaki “id” sütununa referans vermektedir.
  • Bütünlük KısıtlamalarıBütünlük kısıtlamaları, bir tabloda saklanan verilerin belirli kurallara uymasını sağlar. Örneğin, bir değerin boş olmamasını veya belirli bir biçime uymasını sağlamak için bir bütünlük kısıtlaması ayarlayabilirsiniz. Aşağıda bir bütünlük kısıtlamasının nasıl oluşturulacağına dair bir örnek verilmiştir:
CREATE TABLE nombre_tabla (
  columna1 tipo_dato CONSTRAINT nombre_restriccion NOT NULL,
  ...
);
  • Bu örnekte, “constraint_name” kısıtlaması, “column1” sütununun boş değerler içeremeyeceğini garanti eder.
  Veri Soyağacı: Nedir, faydaları ve nasıl uygulanır?

MySQL'de tablo oluşturma: Gelişmiş hususlar

MySQL'de birincil ve yabancı anahtarlarla tablo nasıl oluşturulur?

CREATE TABLE tabla_principal (
  id INT PRIMARY KEY,
  ...
);

CREATE TABLE tabla_secundaria (
  id INT,
  ...
  FOREIGN KEY (id) REFERENCES tabla_principal(id)
);

MySQL'de indeksli tablo nasıl oluşturulur?

CREATE TABLE nombre_tabla (
  columna1 tipo_dato,
  columna2 tipo_dato,
  ...
  INDEX nombre_indice (columna1, columna2)
);

MySQL'de bir tablo nasıl değiştirilir?

ALTER TABLE nombre_tabla ADD columna tipo_dato;

ALTER TABLE nombre_tabla DROP COLUMN columna;

ALTER TABLE nombre_tabla MODIFY columna nuevo_tipo_dato;

MySQL'de bir tablo nasıl düşürülür?

DROP TABLE nombre_tabla;

MySQL'de bir tabloya nasıl sorgu gönderilir?

SELECT * FROM nombre_tabla;

MySQL'de veri nasıl içe ve dışa aktarılır?

MySQL'de bir tablonun yedeklenmesi ve geri yüklenmesi nasıl yapılır?

MySQL'de tablo performansı nasıl optimize edilir?

MySQL'de tablo oluştururken karşılaşılan genel sorunlar nasıl düzeltilir?

Sonuçlar