Basit Sorgulamalar Yapmak

Slides:



Advertisements
Benzer bir sunumlar
Microsoft Access Bu program Microsoft program paketinin içerisinde yer alan; çok büyük miktarlardaki verilerin depolanabileceği veritabanı oluşturmamıza.
Advertisements

ÖRNEK BİR VERİTABANI TASARIMI VE NORMALİZASYONU
VERİ TABANI VE YÖNETİM SİSTEMLERİ
Veri Tabanı Tasarlama İlk kuralımız, olabildiğince bilgileri parçalamaktır.
KARMAŞIK SORGULAR.
KARMAŞIK SORGULAR.
SQL Structured Query Language (Yapısal sorgulama dili)
dataReader- DataAdapter
Karmaşık (İç içe) SELECT Sorguları
Normalizasyon Kuralları & SQL
SQL Enjeksiyon Saldırı Uygulaması ve Güvenlik Önerileri
Veri tabanı bileşenleri
SQL Komutlar 2 Sibel SOMYÜREK.
VERİ TABANI II- 4.HAFTA ALT SORGULAR Türetilmiş ve İLİntİlİ tablolar
SQL de Değişken Tanımlama
VERİTABANI ve YÖNETİMİ
Görsel Programlama II Ders 6 Öğr.Gör. Mustafa KARABULUT.
Veritabanı Yönetim Sistemleri-I
VERİ TABANI ve YÖNETİMİ
Excel’de VBA programlama (Visual Basic Application) Ders 4
Veri Tabanı Yönetim Sistemleri
Görsel Programlama II Ders 1 Öğr.Gör. Mustafa KARABULUT.
VERİ TABANI ve YÖNETİMİ
Görsel Programlama II Ders 8 Öğr.Gör. Mustafa KARABULUT.
BÖLÜM 6 SQL SERVER KOMUTLARI.
4 Veri Bütünlüğü ve Constraint’ler
MySQL, SQL ve PHP Öğr.Gör.Şükrü KAYA.
VERİ TABANI VE YÖNETİM SİSTEMLERİ  Birincil Anahtar Türleri  Access Veri Tabanında Bulunan İlişkiler  İlişkileri Tanımlama Bir – Çok İlişkisi Çok –
Veritabanı Yönetim Sistemleri-I
VIEW (BAKIŞ) OLUŞTURMA
VIEW lerle çalışmak 11.BÖLÜM.
VTYS Öğr. Gör. Engin DUTAR
SQL’e Giriş ve SELECT Komutu
SQL de Değişken Tanımlama
ÇOKLU TABLOLAR.
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 8: Windows Formları
Veritabanı Yönetim Sistemleri-I
Görsel Programlama II Ders 9 Öğr.Gör. Mustafa KARABULUT.
Veritabanı Tasarımı ve Yönetimi
Görsel Programlama II Ders 4 Öğr.Gör. Mustafa KARABULUT.
Veritabanı Kavramları
Görsel Programlama II Ders 5 Öğr.Gör. Mustafa KARABULUT.
Microsoft Office Access
Görsel Programlama II Ders 3 Öğr.Gör. Mustafa KARABULUT.
Veritabanı Yönetim Sistemleri-I
Hasta Takip Programı.
LINQtoSQL Silverligth Uygulamalarında LinqtoSql. LINQ (Language Integrated Query) özellikle dil içerisinde, Sql tarzı sorgular yazabilmemizi ve bunları.
Görsel Programlama III Ders 8 Öğr.Gör. Mustafa KARABULUT.
Değişken Türleri.
Microsoft Office Access
SQL’ e Giriş Uzm. Murat YAZICI.
Veritabanı Kavramları
ÖTÖ 451 Okul Yönetiminde Bilgisayar Uygulamaları R. Orçun Madran.
Yapısal Sorgulama Dili SQL Hafta 7. TEKRARLI SATIRLARI ÖNLEMEK  DISTINCT komutu ile sorgu sonucunda birden fazla kayıt aynı verileri içeriyorsa tekrarlı.
Veri Tabanı Yönetimi Dersi 1. Laboratuvarı Arş. Gör. Pınar CİHAN.
Öğretim Görevlisi Alper Talha Karadeniz Veri Tabanı 2
Veri Tabanı Yönetimi Dersi 1. Laboratuvarı
ÖRNEK BİR VERİTABANI TASARIMI VE NORMALİZASYONU
VIEW lerle çalışmak 11.BÖLÜM.
İNDEKS.
C# WINDOWS UYGULAMASI HAZIRLAMA ADO.NET SUNU1-GİRİŞ FORMU OLUŞTURMA Savaş TUNÇER.
C# WINDOWS UYGULAMASI HAZIRLAMA ADO.NET SUNU3- MÜŞTERİ KAYIT FORMU OLUŞTURMA SAVAŞ TUNÇER
VERİ TABANI VE VISUAL STUDIO SQL LOCAL DB(YEREL VERİ TABANINI SAYFAYA BAĞLAMA Savaş TUNÇER.
DML ile veri ekleme, silme ve değiştirme
Veri Tabanı Temel Kavramlar.
VERİ TABANI II- 4.HAFTA ALT SORGULAR Türetilmiş ve İLİntİlİ tablolar
SQL Server - Stored Procedures
Asp.Net Veritabanı İşlemleri
form nedir ? öğrenmenin en kolay yolu bu slaytta... M İ CROSOFT OFF İ CE ACCES FORM nedir ve nas ı l kullan ı l ı r…
Transaction.
Sunum transkripti:

Basit Sorgulamalar Yapmak Görsel Programlama II Öğr.Gör. Salih ERDURUCAN

Konular [1] Yabancı anahtar (Foreign key) ilişkisi Master-Detail Formlar İlişkili kayıtları SQL kullanarak almak SqlCommand parameters kullanımı Seçili kayda ait detayları almak Görsel kontroller üzerinden CurrencyManager üzerinden

Yabancı anahtar ilişkisi [1] Bir tablodaki herhangi bir alan başka bir tablo ile mantıksal ilişki kurmaya yarıyorsa ve bu alan diğer tabloda birincil anahtar (primary key) ise, bu alan bahsedilen tabloda yabancı anahtar (foreign key) dır. Yabancı anahtar ilişkisi veri bütünlüğünü (data integrity) sağlamak için kullanılır

Yabancı anahtar ilişkisi [1] Örnek olarak siparisler ve sip_edilen tablolarına bakalım siparisler tablosu sip_edilen tablosu

Yabancı anahtar ilişkisi [1] Her iki tabloda sip_num alanı bulunmaktadır. Böylece sip_edilen tablosundaki “sip_num” alanı ile o satırın siparisler tablosundaki hangi siparişe ait olduğunu bulabiliyoruz.

Yabancı anahtar ilişkisi [1] sip_edilen tablosu satırları siparisler tablosu

Yabancı anahtar ilişkisi [1] 20005 numaralı siparişin, ürünlerini (details) almak için aşağıdaki gibi bir sorgu yeterlidir SELECT * FROM sip_edilen WHERE sip_num = 20005

Master-detail formlar [1] Master-detail formlarda üst bilgi (master) niteliğinde bir kayıt ve bu kayda ait alt bilgiler (detail) gösterilmektedir. Örneğin, siparisler tablosundaki herhangi bir kayıt üst bilgi ve bu kayda ait sip_edilen tablosundaki kayıtlar alt bilgiyi oluşturur. Dikkat: Master kayda ait birden fazla detail kayıt bulunabilir. Form tasarımı buna göre yapılmalıdır.

Master-detail formlar [1] Örnek bir form: Sipariş (master) ve siparişe ait ürünler (detail) listelenmektedir Üst bilgi (master): Sipariş Alt bilgiler(detail): Ürünler

Örnek uygulama [1] Bu form çalışırken Form_Load sırasında sipariş üst bilgisi TextBox kontrollerine DataBindings.Add ile eklenir CurrencyManager nesnesinin Position özelliği değiştirildikçe: Yeni siparişe ait anahtar bilgi (sip_num) alınır Alt bilgiler bu bilgiye göre SqlCommand kullanılarak sorgulanır Alınan alt bilgiler DataGridView içine doldurulur

Örnek uygulama [1] Global değişkenler Detay bilgileri getirecek fonksiyonu çağırıyoruz

Örnek uygulama [1] SqlConnection nesnesi global tanımlanmıştır, çünkü: DetayGetir( ) fonksiyonu her çağrıldığında bağlantı işlem yapılırken kullanılacaktır (açılıp-kapanacak) CurrencyManager nesnesi global tanımlanmıştır çünkü: Button1 ve Button2 click olayları sırasında bu nesnesinin Position özelliği değiştirilecektir

Örnek uygulama [1] Düğmelere tıklanınca aktif kayıt değiştirilecek ve aynı zamanda aktif (üst) kayda ait alt kayıtlar da her seferinde sorgulanacaktır (DetayGetir() fonksiyonu içinde) Alt kayıtları getirecek fonksiyon çağrılıyor

Örnek uygulama [1] DetayGetir() fonksiyonu içinde sırasıyla Bağlantı tekrar açılacak SqlCommand nesnesi oluşturulacak Seçilen üst kayda ait anahtar alan değeri bulunacak (alt satırları sorgulamak için, sip_num) Alınacak kayıtlar DataTable, ordan da DataGridView’a doldurulacak Bağlantı kapatılacak

Örnek uygulama [1] Aktif kaydın (seçili siparişin) sip_num değerini almak için 1) Doğrudan görsel kontrolden değer alınabilir string sipNum = textBox1.Text; veya 2) CurrencyManager üzerinden aktif kaydın ilgili sütun değeri alınabilir DataRowView r = (DataRowView)cm.Current; string sipNum = r["sip_num"].ToString();

Örnek uygulama [1]

Örnek uygulama [1] cmd.Parameter.Add fonksiyonu ile yazılan SQL sorgusu içinde @ işareti ile başlayan değişkenlere değer aktarılır

Örnek uygulama [1] Aynı işlem şu şekilde de yapılabilir, ancak güvenlik açıkları (ör: Sql Injection) ve çalışma sırasında problemler çıkabilmektedir.

Kaynaklar 1. Karabulut M. 2012, Görsel Programlama II Ders Sunuları