VERİTABANI SİSTEMLERİ Dersi Veri İşleme soru cevapları:

Toplam 50 Soru & Cevap
PAYLAŞ:

#1

SORU:

Veritabanı Sistemlerini tanımlayınız.


CEVAP:

Veritabanı Sistemleri, Word, Excel ya da PowerPoint gibi ofis yazılımlarının dosya yapısından farklı olarak birlikte çalışması gereken nesnelerin (tablo, görünüm, indeks, saklı yordam vb.) oluşturduğu bir topluluktur. Bahsedilen tüm bu nesnelerin birbiri ile uyumlu ve düzgün çalışabilmesi için bir takım tasarım ilkelerine uyması gerekmektedir. Bu tasarım ilkelerinin kötü tasarlanması veya tasarım kurallarına uyulmaması hâlinde problemlerle karşılaşılması kaçınılmaz olur ve başarısız veya tümüyle işe yaramayan veritabanı uygulamaları ortaya çıkabilir. Veritabanı tasarımı yapılırken sadece tablolar ve tablolar arasındaki bağlantıların nasıl olacağına karar verilmez. Hangi tablonun hangi amaçla kullanılacağı önemlidir.


#2

SORU:

Örnek uygulamaların gerçekleştirildiği Northwind veritabanında yer alan [Müşteriler] tablosunu incelersek neyi görürüz?


CEVAP:

Örnek uygulamaların gerçekleştirildiği Northwind veritabanında yer alan [Müşteriler] tablosunu incelersek, tablonun ilgili şirketin satış işlemi gerçekleştirdiği birey ya da firmalara ait bilgilerinin tutulduğunu görürüz. Aynı tablo Müşterilere ait sipariş bilgilerinin de depolanması için tasarlanabilirdi. Ancak bu durumda her siparişte müşteri bilgilerinin tekrar edilmesi gerekirdi. Bu ve bunun gibi sebepler ilişkisel veritabanı sistemlerinin veri tekrarı ve kaybının engellenmesi, veri ekleme, güncelleme ve işlememe kolaylığının sağlanması için geliştirilmiş yapılardır.


#3

SORU:

Bir veritabanında yer alan tablolar, indeksler ve benzeri yapıların tasarlanması neden oldukça önemlidir?


CEVAP:

Bir veritabanında yer alan tablolar, indeksler ve benzeri yapıların tasarlanması sistemin hatasız ve yüksek performansla çalısması için oldukça önemlidir. Veritabanında yer alan tablo sayısı, tablolar arasındaki ilişkilerin karmaşıklığı; verilerin güncelleme, ekleme ve silme işlemlerini etkilemektedir.


#4

SORU:

Verilerin tablolara eklenmesi tabloların tasarımı ile nasıl ilişkilidir?


CEVAP:

Verilerin tablolara eklenmesi tabloların tasarımı ile yakından ilişkilidir. Her tablo bir kullanım amacıyla oluşturulurken tablodaki alanların her biri yalnızca bir tür veri kabul edecek şekilde tanımlanmalıdır. Örneğin, [Müşteriler] tablosundaki [No] alanına rakam, [Adres] alanına ise metin girilebilecek şekilde tasarlanması uygun olacaktır. Eğer rakam girilecek bir şekilde tasarlanmış bir alana metin girilmesi hâlinde veritabanı hata mesajı üretecektir. Bu sayede her alan için yanlış bilgilerin girilmesini engellemek mümkündür.


#5

SORU:

Genelde veritabanı tasarımı yapılırken bir tablodaki alanların kabul ettiği veri türü hakkında bilgi veriniz.


CEVAP:

Genelde veritabanı tasarımı yapılırken bir tablodaki alanların her biri yalnızca bir tür veri kabul eder. Ancak bu katı, değişmez bir kural degildir. [Müşteriler] tablosundaki [Posta Kodu] alanı metin veri türüne ayarlanmış olsa bile bu alanda sayılar depolanabilir ancak o veri üzerinde toplama, çıkartma vb. gibi aritmetik hesaplamalar doğrudan yapılamaz. Bazı istisnalar dışında, bir kayıttaki alanlar yalnızca bir değer kabul etmelidir. Aynı tablodaki [Adres] alanına birden fazla adres girilmemesi gerekir. Bu yaklaşım, sınırlı türde veri kabul edecek şekilde ayarlanmadıkça, varsayılan olarak hücrelere istediğiniz kadar ad, adres veya resim girmenize olanak tanıyan Excel programı ile tamamen farklı bir durumdur.


#6

SORU:

Bir veritabanına veri girmenin temel olarak kaç farklı yolu vardır? Açıklayınız.


CEVAP:

Bir veritabanına veri girmenin temel olarak iki farklı yolu vardır. Bunlardan ilki veritabanına klavyeden kullanıcı girişi ile istenilen değerlerin girilmesidir. Bu durum veritabanı yapısının bilgi girmesi gereken kişi tarafından görülmesine neden olabilir. Ayrıca tabloların her alanı için hangi tür verinin girilmesi gerektiği bilinmelidir. Bunun yerine veritabanına veri girerken bir uygulama tarafından hazırlanacak olan veri giriş formları kullanmak daha uygun olacaktır. Veri giriş formları, veritabanına verilerin daha kolay, daha hızlı ve daha doğru girilmesini sağlayabilir. Veri giriş formları kullanılarak aynı anda bir veya birden fazla tablonun farklı alanlarına bilgi girişini sağlamak mümkün olmaktadır. Örneğin, hazırlanacak bir form ile örnek veritabanındaki [Müşteriler] ve [Siparişler] tablolarının gerekli alanlarına aynı anda veri girişini sağlamak mümkündür. Ayrıca bir tablodaki alanlardan bazılarının alabileceği değerleri bilgi girişi yapacak kişiye seçenekli olarak sunulabilir veya bazı giriş alanları da otomatik olarak doldurarak kullanıcının daha kolay ve daha az hata yapabilmesi sağlanabilir. [Müşteriler] tablosundaki [Şehir] alanına bilgi girişi yapacak kişinin Şehir ismini yazması yerine açılır metin girici ile seçim yaparak girmesi hem bilgi girişini hızlandıracak hem de hatalı girişlerin azalmasını sağlayacaktır. Oluşturulacak bilgi girişi formu ile bazı alanlarda otomatik olarak veri tanımlanabilmektedir. Örnek veritabanındaki [Siparişler] tablosunun alanını varsayılan değer olarak sistem zamanını getiren bir fonksiyonu kullanmaktadır. Böylece [Sipariş Tarihi] verisinde hem hatalı giriş hem de format hataları engellenmiş olur. Formlarda listeler, metin kutuları, düğmeler ve veri sayfaları gibi denetimlerden veri giriş ve düzenleme işlemlerinde kullanılabilir. Buna karşılık, formdaki denetimlerin her biri esas alınan bir tablo alanından veri okur veya bu tablo alanına veri yazar. Belirli bir denetimin kullanım kısıtları; esas alınan tablo alanı için ayarlamış olan veri türüne, bu alan için ayarlanmış özelliklere ve veritabanı tasarımcısının her bir denetim için belirlediği bazı özelliklere bağlıdır. Örneğin, Müşterilerin çoğunluğu Eskişehir ilinden ise veri giriş formunda varsayılan olarak Eskişehir seçili olarak gelebilir. Bununla beraber, telefon alanı için seçilen ile göre Şehir alan kodunun da veri giriş formu tarafından otomatik olarak doldurulması sağlanabilir. Bu gibi yapılabilecek her türlü farklı uygulamalar sayesinde hem daha hızlı hem de daha doğru bilgilerin girişi sağlanabilir.


#7

SORU:

Bir veritabanı uygulamasının temel amacı nedir?


CEVAP:

Bir veritabanı uygulamasının temel amacı kayıtların veritabanında saklanması ve bu kayıtların istenildiği zaman sorgulanabilmesidir. Ancak bazı durumlarda veritabanına girilen kayıtların silinmesi de gerekebilmektedir. Hatalı kayıtlar, güncelliğini yitirmiş kullanılmayan kayıtların veritabanından silinmesi gerekebilmektedir. Örneğin, bir firmada çalışan personel herhangi bir sebeple firmadan ayrıldığı zaman o personele ait bilgilerin veritabanında saklanmasına ihtiyaç kalmayabilir. Veritabanında kayıt silme işlemi iki şekilde yapılmaktadır: Bir tablodaki herhangi bir kayıtın silinmesi ikincisi de o tablodaki tüm kayıtların silinmesidir.


#8

SORU:

Hangi durumlarda tablonun bir veya birden fazla alanındaki değerlerin değiştirilmesi gerekebilir? Örnek ile açıklayınız.


CEVAP:

Bazı durumlarda ise tablonun bir veya birden fazla alanındaki değerlerin değiştirilmesi gerekebilir. Örneğin, personellerimizden birinin soyadı evlilik dolayısıyla değişmiş olabilir. Böyle bir durumda [Çalışanlar] tablosundaki [Soyadı] alanında tutulan personelin soyadının yeni soy adı ile değiştirilmesi/güncellenmesi gerekmektedir. Bu değiştirilme işlemi iki şekilde yapılabilir. Bunlardan bir tanesi soy adı değiştirilmek istenen personel ile ilgili kaydın tablodan silinip, soy adı değiştirilmiş olarak tüm bilgileri ile yeni kayıtın veritabanına eklenmesidir. Bu işlemi yapabilmek için ilk önce silme işlemi daha sonra ise yeni kayıt işlemi olmak üzere iki farklı işlemin yapılması gerekmektedir. Bunun yerine sadece değiştirilmek istenen kayıttaki alanın değerinin değiştirilmesi daha kolay bir işlemdir.


#9

SORU:

Veri işleme komutları kullanarak bir tabloya yeni bir kayıt eklemek, mevcut kayıt üzerinde değişiklik yapmak veya kaydı silmek tek başlarına kullanılabileceği gibi bu işlemlerin tek bir adımda arka arkaya yapılması da gerekebilir. Bu durumu örnek ile açıklayınız.


CEVAP:

Veri işleme komutları kullanarak bir tabloya yeni bir kayıt eklemek, mevcut kayıt üzerinde değişiklik yapmak veya kaydı silmek tek baslarına kullanılabileceği gibi bu işlemlerin tek bir adımda arka arkaya yapılması da gerekebilir. Örneğin, bir firmaya bir ürün satın almak üzere bir istek geldiği zaman, ilk önce ürünün stoklarda olup olmadığı kontrolünün yapılması, ürün var ise bu konuda bir Siparişin oluşturulması, bu ürünün müşteriye gönderilmesi ve firmadaki stoktan düşülmesi arka arkaya yapılması gereken işlemlerdir. Veri işleme komutları kullanarak tüm bahsedilen işlemler ayrı ayrı yapılabilir. Ancak tüm bu işlemler aslında tek bir işlemin alt kollarıdır ve bütün işlemlerin beraber gerçekleştirilmesi gerekmektedir. İşlemlerden bir tanesinin yapılamaması durumunda diğer işlemlerin de iptal edilmesi gerekmektedir. SQL dili arka arkaya yapılması gereken bir veya birden fazla veri işleme komutlarının hepsini tek bir işlem altında toplama imkânı vermektedir. Ayrıca grup içinde bir işlemin başarısız olması hâlinde yapılan işlemlerin geri alınabilmesini, işlemler tamamlandığı durumda ise kalıcı değişikliklerin yapılmasını sağlar.


#10

SORU:

SQL Server Management Studio kullanılarak yapılması mümkün olan nedir?


CEVAP:

SQL Server Management Studio kullanılarak veritabanına klavyeden kullanıcı girişi ile istenilen değerlerin girilmesi, silinmesi veya değiştirilmesi mümkündür.


#11

SORU:

Veritabanı kendi bilgisayarımız üzerinde çalışıyor ise hangi modda bağlama düğmesine (Connect) basılarak SQL Server Management Studio’ya bağlanma işlemi gerçekleştirilir?


CEVAP:

Veritabanı kendi bilgisayarımız üzerinde çalışıyor ise Windows Authentication modunda bağlama düğmesine (Connect) basılarak SQL Server Management Studio’ya bağlanma işlemi gerçekleştirilir.


#12

SORU:

Veritabanına bağlanma işleminden sonra açılan pencerenin sol tarafında neler bulunmaktadır?


CEVAP:

Veritabanına bağlanma işleminden sonra açılan pencerenin sol tarafında Object Explorer alanında SQL Server Management Studio üzerinde yer alan veritabanları ve diğer nesneler bulunmaktadır. Burada görülen her öğenin yanında bulunan artı işaretine tıklanarak genişletme işlemi gerçeklenir. Genişletme işlemi gerçeklendiği zaman artı işareti eksi işareti hâlini alır. Eksi işaretine tıklanarak daraltma işlemi yapılabilir.


#13

SORU:

Object Explorer alanında hangi alanlar seçim yapılarak görülebilmektedir?


CEVAP:

Object Explorer alanında sistemde kurulu olan tüm veritabanları, veritabanları içinde yer alan tüm tablolar ve tablolara ait olan alanlar seçim yapılarak görülebilmektedir. Bununla beraber tablodaki her alanın özelliklerini görebilme ve yetki dahilinde değiştirebilme işlemlerini de buradan yapabilme imkanı mevcuttur.


#14

SORU:

Veritabanı yönetim sistemlerinde verilerin ilişkisel olarak depolandığı tablolara hangi yöntemlerle veri girilebilmektedir?


CEVAP:

Veritabanı yönetim sistemlerinde verilerin ilişkisel olarak depolandığı tablolara birçok farklı yöntemlerle veri girilebilmektedir. Klavyeden el ile veri girişi, diğer tablolardan elde edilecek veriler, dış kaynaklardan alınabilecek verilerin tablolara eklenmesi gerçekleştirilebilir. Veritabanı tablolarında her bir satır ilgili tablonun gerçek dünyada temsil varlığın bir örneğidir.


#15

SORU:

Neden bir tabloya veri ekleme yeni bir nesne, satır ya da kayıt ekleme işlemidir. Veritabanı tablolarında işlem tabloları gibi yeni sütun ekleme çok yaygın değildir?


CEVAP:

Bir tabloya veri ekleme yeni bir nesne, satır ya da kayıt ekleme işlemidir. Veritabanı tablolarında işlem tabloları gibi yeni sütun ekleme çok yaygın değildir. Bunun nedeni veritabanı tasarlanırken tabloda depolanacak varlığın özelliklerinin (tablonun sütunlarının) başlangıçta belirlenmesidir.


#16

SORU:

INSERT INTO komutu niçin kullanılır?


CEVAP:

Bir tabloya doğrudan veya başka tablolardan sorgulama sonucu elde edilen kayıtları eklemek için INSERT INTO komutu kullanılır. Bu komut bir tabloya istenilen değerlerin yazılarak girilmesi ya da başka bir sorgu ile elde edilen veri kümesinin girilmesi için kullanılabilir.


#17

SORU:

Sorgu sonucunun bir tabloya eklenmesi için ne yapılmalıdır?


CEVAP:

Sorgu sonucunun bir tabloya eklenmesi için kullanılan komut yapısında ise VALUES yerine SELECT ile baslayan sorgu ifadesi yer almaktadır. Sadece başka bir tablodan değil kullanıcının tanımlayacağı bir veri kümesinden elde edilen sorgu sonucu ilgili tabloya eklenir. MS SQL Server’ın son yıllardaki sürümlerinde aynı sunucudaki başka veritabanından elde edilen sorgu sonuçları da tablolara eklenebilmektedir.


#18

SORU:

INSERT INTO yazım kuralında da verildiği gibi öncelikle yapılması gereken nedir?


CEVAP:

INSERT INTO yazım kuralında da verildiği gibi öncelikle eklenmek istenilen tablo ve tablo alanları tanımlanmalıdır. Bu nedenle ilk kısımda tablonun alanları teker teker yazılır. Örnek veritabanındaki alan adlarında Türkçe harflerin ve boşlukların bulunması alan adlarının köşeli parantez ya da çift tırnak içine alınmasını gerektirmektedir. VALUES bölümünde ise alan adları ile aynı sırada ve istenilen veri türünde tabloya eklenecek değerler yazılmalıdır. Örneğin ilk alan Siparişi alan çalışana ait bir numaradır. Benzer şekilde tüm eklenecek bilgiler veri türlerine göre sırası ile yazılır. Metin ifadeler tek tırnak içerisinde belirtilmelidir. Rakamlarda ise ondalık ayraç her zaman İngilizce dil yazım kuralı nedeniyle nokta seklinde yazılır. Tarih bilgisi de “Yıl-Ay-Gün” biçiminde tanımlanmalıdır. Tarih ve saat gösterimleri dile bağlı olduğu için istenir ise dönüşüm sağlayan işlevler ile de kullanılabilir. Tablo adından sonra açılan parantez alan adlarından sonra kapatılmalı ve aynı şekilde Values ifadesinden sonra açılan parantez de son ifadeden sonra kapatılmalıdır.


#19

SORU:

INSERT INTO ekleme sorgusunun bir seçme sorgusu ile çalısmasında dikkat edilmesi gereken konu nedir?


CEVAP:

INSERT INTO ekleme sorgusunun bir seçme sorgusu ile çalısmasında dikkat edilmesi gereken konu alan sayılarının eşleşmesi ve alan içerisindeki veri türlerinin uyum göstermesidir. Bu uyum alan türünün aynı olmasında bile sağlanamayabilir. Örneğin metin türündeki iki alan, uzunlukları nedeniyle hataya sebep olabilmektedir.


#20

SORU:

Tabloya Satır Ekleme İşlemlerinde Karşılaşılan Hatalar nelerdir?


CEVAP:

Tabloya Satır Ekleme İşlemlerinde Karşılaşılan Hatalar, Yazım Hataları, Veri Tipi Uyum Hataları ve Tablo Alanları Kısıtlayıcılarıdır.


#21

SORU:

Tabloya Satır Ekleme İşlemlerinde Karşılaşılan Hatalarından Yazım Hataları hakkında bilgi veriniz.


CEVAP:

Tabloya Satır Ekleme İşlemlerinde Karşılaşılan Hatalarından Yazım Hataları: SQL sorgu ifadelerinin yazımında hatalar kullanıcıya sorgu ekranındaki konumla bildirilir. Örneğin Şekil 7.8’de çalıştırılan sorgudaki bir virgülün unutulması durumunda kullanıcıya “Msg 102, Level 15, State 1, Line 2 Incorrect syntax near 'Müşteri No'” hatası iletilir. Ayrıca eklenen verideki alan sayısı ile hedef tablodaki alan sayısında farklılık varsa bu hata da işlemin yapılmasını engelleyen bir hatadır ve kullanıcıya “There are more columns in the INSERT statement than values specified in the VALUES clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement.” mesajı ile hata hakkında nerede fazla sütun alan olduğu belirtilerek düzeltilmesine yönelik bilgi sağlanır.


#22

SORU:

Tabloya Satır Ekleme İşlemlerinde Karşılaşılan Hatalarından Veri Tipi Uyum Hataları hakkında bilgi veriniz.


CEVAP:

Tabloya Satır Ekleme İşlemlerinde Karşılaşılan Hatalarından Veri Tipi Uyum Hataları: Tablo eklemede yaygın olarak Karşılaşılan hatalardan biri de eklenen verinin türü ile eklenmek istenen tablodaki alanın türü arasındaki uyuşmazlıktır. Metin türündeki bir alana sayısal veri eklenmesi durumunda veritabanı yönetim sistemi yazılımları bu hatayı tolere edebilmektedir ancak sayısal veri türündeki bir alana metin girilmesi hata üretilmesine neden olur. Örneğin metin sayı türündeki bir alana metin verisi eklenmek istenildiğine “Msg 245, Level 16, State 1, Line 1 Conversion failed when converting the varchar value 'rtrt3' to data type int.” hatası üretilir. Bu hata mesajında SQL veritabanı motorunun metin değerini sayıya çevrilmeye çalışıldığı ancak hata ile sonuçlandığı bildirilmektedir. Veritabanı yönetim yazılımları bu tür hataları gidermek için çeşitli yöntemler kullanırlar. Metin türündeki verinin sayıya dönüştürülmesi ve ondalıklı sayıların tam sayıya dönüştürülmesi, hataları en aza indirmek için uygulanabilmektedir. Tarih türündeki verileri veritabanı tablolarına eklemede farklı dillerde tarih yazımlarının farklı olması sorun yaratabilmektedir. Bu sorunu çözmek için tarih verisini dönüştürme ile ilgili kurallar kullanılabilir. Ancak el ile tarih bilgisi girmede ‘Yıl/Ay/Gün’ biçiminde verinin yazılması hatayı engelleyebilmektedir. Tarih bilgisi hatalı girildiğinde aşağıdakine benzer bir hata mesajı alınabilir. “Msg 242, Level 16, State 3, Line 1 The conversion of a varchar data type to a datetime data type resulted in an out-of-range value. The statement has been termi-nated.”


#23

SORU:

Tabloya Satır Ekleme İşlemlerinde Karşılaşılan Hatalarından Tablo Alanları Kısıtlayıcıları hakkında bilgi veriniz.


CEVAP:

Tabloya Satır Ekleme İşlemlerinde Karşılaşılan Hatalarından Tablo Alanları Kısıtlayıcıları: Tablolara veri ekleme SQL komutu yazarken yazım hatası ya da veri tipi uyumsuzluğunun dışında tablo alanlarında tanımlanmış kısıtlayıcılar da hatalara neden olabilmektedir. Örneğin bir alanın boş bırakılamayacağına ilişkin bir tasarım yapıldıysa veri ekleme esnasında o alanın boş bırakılamayacağı konusunda kullanıcıya hata üretilir. “Cannot insert the value NULL into column 'a', table 'Northwind. dbo.Calisanlar'; column does not allow nulls. INSERT fails” Ayrıca CHECK ifadesi ile oluşturulmus alanların alması gereken değerlerin sınırları dışında bir işlem de hataya neden olabilir. Aşağıda [Calısanlar] adlı tablonun [Ucret] alanına eklenmek istenen bir değerin kurala uymadığı hatasını veren bir örnek yer almaktadır. “The INSERT statement conflicted with the CHECK constraint “CHKi Ucret”. The conflict occurred in database “Northwind2”, table “dbo. Calisanlar”, column 'Ucret'” Tablolar arasında tanımlanan yabancı anahtar ilişkileri de bir alana girilecek değerin farklı bir tabloda olmasına zorlayabilir. Bu durumda da kullanıcıya hata benzer bir iletiyle bildirilir. Bu ve benzer hatalar, VALUES komutu ile gerçekleştirilen veri ekleme işlemlerinde kolayca fark edilerek çözülebilir. Ancak binlerce satır verinin başka tablolardan elde edilerek ekleme işlemlerinde bu hatalar hayli can sıkıcı olabilmektedir. Veritabanı ve tabloların yapılarını bilmek, kaynak verilerin türü ve içeriği konusunda bilgi sahibi olmak bu tür hataların çözülmesinde oldukça önemli olmaktadır.


#24

SORU:

Hangi komutu kullanarak bir tabloda bulunan kayıt veya kayıtların istenildiği zaman silinmesi mümkündür?


CEVAP:

DELETE komutu kullanarak bir tabloda bulunan kayıt veya kayıtların istenildiği zaman silinmesi mümkündür.


#25

SORU:

Silme işlemi yapılırken dikkat edilmesi gereken nedir?


CEVAP:

Silme işlemi yapılırken tablolar arasında bulunan ilişkilerin bozulmamasına dikkat edilmesi gerekmektedir. [Müşteriler] tablosundaki müşteri silinme işlemi gerçekleşmiş olsaydı (bu müşteriye ait Siparişler hâlâ [Siparişler] tablosunda bulunmaktadır) iki tablo arasındaki kayıtlar arasında tutarsızlık ortaya çıkacaktı. Bundan dolayı veritabanı oluşturulurken bu iki tablo birbirine bağlanmış, tablolar arasında ortaya çıkabilecek tutarsızlıkların önüne geçilmiştir. Bu müşterinin [Müşteriler] tablosundaki kaydının silinebilmesi için öncelikle bağlı olduğu [Siparişler] tablosundaki kayıtların silinmesi gerekmektedir. [Siparişler] tablosundaki bu müşteriye ait kayıtlar aşağıdaki SQL komutu çalıştırılarak silinebilir.


#26

SORU:

Hangi komut ile bir veritabanı üzerinde bir tabloda istenilen bir kayıt ve kayıtların güncelleme işlemi yapılabilir?


CEVAP:

UPDATE komutu ile bir veritabanı üzerinde bir tabloda istenilen bir kayıt ve kayıtların güncelleme işlemi yapılabilir. Bununla beraber UPDATE komutu kullanarak bir tabloda bulunan kayıtların bir kısmı veya tamamının da herhangi bir alanındaki veya tüm alanlarındaki değerleri istenildiği zaman degiştirmek/güncellemek mümkündür. Genel yapısı aşağıdaki gibidir.

UPDATE TabloAdı

SET alan1 = değer1, alan2 = değer2, …

WHERE Koşul


#27

SORU:

Hangi durumda TRANSACTION yapısı kullanılır?


CEVAP:

Bir veya birden fazla SQL ifadesi arka arkaya tek bir işlem gibi çalıştırılmak istenildiği zaman TRANSACTION yapısı kullanılır. TRANSACTION özellikle ardı ardına gelen ve birbiriyle bağımlı birden fazla SQL komutu tek bir SQL komutu olarak kullanılmasını sağlar. Bu sayede bir TRANSACTION kullanılarak yazılan SQL komutlarının ya tamamını gerçeklestirir veya hiçbiri gerçekleştirilmez. TRANSACTION işlemleri tek bir işlem olarak ele alacağı için herhangi birisi gerçekleşmediği zaman diğer gerçekleşen işlemleri de yok sayacaktır. Yani gerçekleşen işlemi geri alacaktır(ROLLBACK kavramı). Eğer işlemlerin tamamı sorunsuz bir şekilde gerçekleşirse, tüm işlemleri kalıcı (COMMIT kavramı) hâle gelecektir. TRANSACTION kullanımın genel yapısı aşağıdaki gibidir.

BEGIN TRANSACTION

işlem 1

işlem 2

...

işlem n

ROLLBACK veya COMMIT


#28

SORU:

ROLLBACK kavramı hakkında bilgi veriniz.


CEVAP:

ROLLBACK: Transaction işlemindeki SQL komutu tarafından yapılmış olan tüm değişikliklerin geri almak için kullanılmaktadır. Yazılan SQL komutlarının herhangi birinde hata meydana gelmesi hâlinde bir sorun karşısında ROLLBACK işlemi ile kayıtları ilk hâline (transaction başladığı duruma) geri getirir.


#29

SORU:

COMMIT kavramı hakkında bilgi veriniz.


CEVAP:

COMMIT: Oluşturulan TRANSACTION işlemi başarılı bir şekilde gerçekleştirildiğinde veritabanında tablolar üzerinde yapılan işlemlerin (Örneğin INSERT, UP-DATE, DELETE) tablolara kalıcı olarak aktarılmasıdır.


#30

SORU:

TRANSACTION yapısı içerisinde yazılmış olan komutların herhangi birinde hata olması durumunda ne olur?


CEVAP:

TRANSACTION yapısı içerisinde yazılmış olan komutların herhangi birinde hata olması durumunda TRANSACTION yapısının sonunda COMMIT yazılsa bile hatadan dolayı işlemlerden biri gerçekleşemeyeceği için (TRANSACTION bütün işlemleri tek bir işlem olarak ele aldığından dolayı ve başarım için bütün işlemlerin başarılı olması gerektiğinden dolayı) alttaki şekilde gösterildiği gibi kayıt işlemleri gerçekleşmeyecektir.


#31

SORU:

Veritabanı Sistemleri, Word, Excel ya da PowerPoint gibi ofis yazılımlarının dosya yapısından farklı olarak birlikte çalışması gereken nesnelerin oluşturduğu bir topluluktur. Bu nesneler nelerdir?


CEVAP:

Tablo, görünüm, indeks, saklı yordam vb.


#32

SORU:

Verilerin tablolara eklenmesi tabloların tasarımı ile yakından ilişkilidir. Her tablo bir kullanım amacıyla oluşturulurken tablodaki alanların her biri ne kabul edecek şekilde tanımlanmalıdır?


CEVAP:

Her biri yalnızca bir tür veri kabul edecek şekilde tanımlanmalıdır.


#33

SORU:

Bir veritabanı uygulamasının temel amacı kayıtların veritabanında ne yapılabilmesidir?


CEVAP:

Kayıtların veritabanında saklanması ve bu kayıtların istenildiği zaman sorgulanabilmesidir.


#34

SORU:

SQL Server Management Studio kullanılarak veritabanına klavyeden kullanıcı girişi ile istenilen değerlerin ne yapılabilmesi ile mümkündür?


CEVAP:

İstenilen değerlerin girilmesi, silinmesi veya değiştirilmesi mümkündür.


#35

SORU:

SQL Server Management Studio programlar menüsünden çalıştırıldığı zaman ilk önce veritabanına bağlanılması için veritabanına bağlama işleminin gerçekleştirileceği bağlama ekranı ile karşılaşılır. Bağlama ekranında bağlanılacak veritabanının ne seçimi yapılır?


CEVAP:

Veritabanının ismi (Server Name) ve Authentication seçimi yapılır.


#36

SORU:

Tablolara sütun (alan) ekleme veri tanımlama dilindeki ALTER komutu ile gerçekleştirilmektedir. Veritabanı tablolarına bir veya daha çok satır (kayıt) eklemek için SQL dilinde INSERT INTO deyimi kullanılır. Bu işlem ne olarak adlandırılır?


CEVAP:

Bu işlem Ekleme Sorgusu olarak adlandırılır.


#37

SORU:

Veritabanı yönetim sistemlerinde verilerin ilişkisel olarak depolandığı tablolara birçok farklı yöntemlerle veri girilebilmektedir. Klavyeden el ile veri girişi, diğer tablolardan elde edilecek veriler, dış kaynaklardan alınabilecek verilerin ne yapılması gerçekleştirilebilir?


CEVAP:

Tablolara eklenmesi gerçekleştirilebilir.


#38

SORU:

Bir tabloya doğrudan veya başka tablolardan sorgulama sonucu elde edilen kayıtları eklemek için INSERT INTO komutu kullanılır. Bu komut bir tabloya istenilen değerlerin yazılarak girilmesi ya da başka bir sorgu ile elde edilen neyin girilmesi için kullanılabilir?


CEVAP:

Veri kümesinin girilmesi için kullanılabilir.


#39

SORU:

Veritabanındaki alan adlarında Türkçe harflerin ve boşlukların bulunması alan adlarının köşeli parantez ya da çift tırnak içine alınmasını gerektirmektedir. Ne bölümünde alan adları ile aynı sırada ve istenilen veri türünde tabloya eklenecek değerler yazılmalıdır?


CEVAP:

VALUES bölümünde


#40

SORU:

SQL sorgu ifadelerinin yazımında hatalar kullanıcıya ne ile bildirilir?


CEVAP:

Sorgu ekranındaki konumla bildirilir.


#41

SORU:

Metin türündeki bir alana sayısal veri eklenmesi durumunda veritabanı yönetim sistemi yazılımları bu hatayı tolere edebilmektedir ancak sayısal veri türündeki bir alana metin girilmesi neye neden olur?


CEVAP:

Hata üretilmesine neden olur.


#42

SORU:

Verilerin tablolara eklenmesi için eklenecek verilerin düzenlenmesi gerekebilmektedir. Bu gibi durumlarda SQL server dilindeki işlevler kullanılabilmekte ve verinin ne yapılması sağlanabilmektedir?


CEVAP:

Verinin istenilen forma getirilmesi sağlanabilmektedir.


#43

SORU:

DELETE komutu kullanarak bir tabloda bulunan kayıt veya kayıtların istenildiği zaman silinmesi mümkündür. DELETE komutu kullanılırken FROM ekinden sonra yazılan TabloAdı’ndaki kayıtları silme işlemi gerçekleştirmek için kullanılır. WHERE ifadesi ise kendisinden sonra yazılan ne ifadesi ile tablodaki hangi kayıtların silinmesi gerektiğini belirlemek için kullanılır?


CEVAP:

Koşul ifadesi ile tablodaki hangi kayıtların silinmesi gerektiğini belirlemek için kullanılır.


#44

SORU:

Bir tablodaki tüm kayıtları silmek için WHERE ifadesi kullanmadan ne komutu kullanılır?


CEVAP:

DELETE ya da TRUNCATE komutu kullanılır.


#45

SORU:

Birbiri ile bağlanmış tablolarda ana tablodaki kaydın silinmesi ile onunla ilişkili kayıtların silinmesini sağlayacak olan bir CASCADE DELETE yapısı SQL dilinde mevcuttur. CASCADE DELETE dilimizdeki anlamı nedir, bize nasıl bir silmeyi izah etmektedir?


CEVAP:

CASCADE DELETE (kademeli silme)


#46

SORU:

Veritabanı üzerinde veri güncelleme işlemleri tıpkı DELETE işlemlerinde olduğu gibi çok dikkat gerektiren işlemlerdendir ve sıklıkla kullanılmaktadır. Ne komutu ile bir veritabanı üzerinde bir tabloda istenilen bir kayıt ve kayıtların güncelleme işlemi yapılabilir?


CEVAP:

UPDATE komutu ile bir veritabanı üzerinde bir tabloda istenilen bir kayıt ve kayıtların güncelleme işlemi yapılabilir.


#47

SORU:

Veri ekleme ve silme işlemlerinde olduğu gibi güncelleme işlemlerinde de güncellenmek istenen veri ne komutu ile bir sorgu sonucu kullanarak elde edilebilir?


CEVAP:

Select komutu ile bir sorgu sonucu kullanarak elde edilebilir.


#48

SORU:

Bir veya birden fazla SQL ifadesi arka arkaya tek bir işlem gibi çalıştırılmak istenildiği zaman ne yapısı kullanılır?


CEVAP:

TRANSACTION yapısı kullanılır.


#49

SORU:

TRANSACTION yapısının avantajlarından bir tanesi ise işlemlerden herhangi birinin yapılmaması veya işlem yapılırken birinde ortaya çıkacak hatadan dolayı neyin de yapılmamasını sağlamasıdır?


CEVAP:

Tüm işlemlerin de yapılmamasını sağlamasıdır.


#50

SORU:

Oluşturulan TRANSACTION işlemi başarılı bir şekilde gerçekleştirildiğinde veritabanında tablolar üzerinde yapılan işlemlerin (örneğin INSERT, UPDATE, DELETE) tablolara kalıcı olarak aktarılmasına ne denir?


CEVAP:

COMMIT denir.