ben

OMÜ , Bilgisayar Mühendisliği, 13'

31 Ekim 2018 Çarşamba

create table

    Burada yeni bir veritabanı nasıl tasarlanır sorusunun cevabından cok , yeni tablo nasıl oluşturulur, kısıtlayıcılar nasıl eklenir, tablolar birbirine nasıl bağlanır, bunun  teknik kod bilgisini paylaşmaya çalışacağım, diğer tasarım bilgilerine sql bolumunden ders notları bolumunden 3,4,5 ve 6 nolu derslerden ulaşabilirsiniz.



  1.  burada GENERATED ALWAYS as IDENTITY(START with 1 INCREMENT by 1)   bu ifade sql serverdaki identity alanına karşılık gelir, kendi id sini kendi üretebilsin diye,
  2. burda nvarchar yok onun yerine varchar2 kullanılabilir.
  3. primary key ve foreign key  alanları constaint olarak ayrı olarak yazılılr, sql de sutunun yanına yazardık, burda ayrı yazılacak
  4. kısıtlayıcılardan:  unique default, not null, check ifadelerinin yazımı  değişmez, sql de nasılsa burdada aynen gecerli
  5. primary key ve foreign key alanlarına verdiğiniz isimler  benzersiz olmalı başka bir tabloda geçmediğinden emin olun
  6. burda tasarlanan veritabanının sql serverdaki tasarım komutlarına burdan uaşabilirsiniz



örnek db_movie veritabnının  oracle daki karşılığı ...


create table tbl_yil(
    yilid integer GENERATED ALWAYS as IDENTITY(START with 1 INCREMENT by 1) ,
    yil char(4),
    constraint yil_pk primary key(yilid)
)

create table tbl_film(
    film_id integer GENERATED ALWAYS as IDENTITY(START with 1 INCREMENT by 1) ,
    isim varchar2(50) not null,
    yapimci varchar2(30),
    vizyon_tarih date,
    yilid integer,
    constraint film_pk primary key (film_id),
    constraint filmyil_pk foreign key (yilid) references tbl_yil(yilid)
)
create table tbl_imdb(
   imdb_id integer GENERATED ALWAYS as IDENTITY(START with 1 INCREMENT by 1),
   puan float default 0,
   iz_sayisi integer default 0,
   film_id integer,
   constraint imdb_pk primary key (imdb_id),
   constraint imdbfilm_pk foreign key (film_id) references tbl_film(film_id)
)
create table tbl_kategori(
 kategori_id integer GENERATED ALWAYS as IDENTITY(START with 1 INCREMENT by 1),
 kategori varchar2(50) not null,
  constraint kategori_pk primary key (kategori_id)
)
create table tbl_kategoriToFilm(
    id integer GENERATED ALWAYS as IDENTITY(START with 1 INCREMENT by 1),
    kategori_id integer ,
    film_id integer,
   constraint id_pk primary key (id),
    constraint kategori_fk foreign key references tbl_kategori(kategori_id),
    constraint film_fk foreign key references tbl_film(film_id)
)

Hiç yorum yok: