Görsel Programlama II Ders 6 Öğr.Gör. Mustafa KARABULUT.

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

VERİ TABANI VE YÖNETİM SİSTEMLERİ
Veri Tabanı Tasarlama İlk kuralımız, olabildiğince bilgileri parçalamaktır.
VB.net ile SQL SERVER’a bağlanmak
VERİ TABANI TEMEL KAVRAMLAR.
KARMAŞIK SORGULAR.
İSİM UZAYLARI.
KARMAŞIK SORGULAR.
KONTROL ÖZELLİKLERİ.
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
Javascript Oğuz İNAL.
SQL de Değişken Tanımlama
Veritabanı Yönetim Sistemleri-I
VERİ TABANI ve YÖNETİMİ
Özellik Tanımlamaları. Özellik Başlıgı Tanımlamaları.
Veri Tabanı Yönetim Sistemleri
Görsel Programlama II Ders 1 Öğr.Gör. Mustafa KARABULUT.
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 –
Management Studio Kullanımı
Veritabanı Yönetim Sistemleri-I
VIEW (BAKIŞ) OLUŞTURMA
VIEW lerle çalışmak 11.BÖLÜM.
VTYS Öğr. Gör. Engin DUTAR
SQL Dili ve MySQL Komutları
SQL’e Giriş ve SELECT Komutu
SQL de Değişken Tanımlama
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.
C# ile OOP GİRİŞ.
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.
Görsel Programlama II Ders 3 Öğr.Gör. Mustafa KARABULUT.
Veritabanı Yönetim Sistemleri-I
VERİTABANI YARATMA.
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.
BTP206 – Görsel Programlama II
İLİŞKİSEL VERİ MODELİ Tablolar ile Gösterim
Veritabanı Kavramları
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.
Basit Sorgulamalar Yapmak
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
VERİ TABANI II- 4.HAFTA ALT SORGULAR Türetilmiş ve İLİntİlİ tablolar
SQL Server - Stored Procedures
form nedir ? öğrenmenin en kolay yolu bu slaytta... M İ CROSOFT OFF İ CE ACCES FORM nedir ve nas ı l kullan ı l ı r…
Sunum transkripti:

Görsel Programlama II Ders 6 Öğr.Gör. Mustafa KARABULUT

Konular Seçili kayda ait detayları almak 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 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 Örnek olarak siparisler ve sip_edilen tablolarına bakalım siparisler tablosu sip_edilen tablosu

Yabancı anahtar ilişkisi 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 sip_edilen tablosu satırları siparisler tablosu

Yabancı anahtar ilişkisi 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 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 Örnek bir form: Sipariş (master) ve siparişe ait ürünler (detail) listelenmektedir Üst bilgi (master): Sipariş Alt bilgiler(detail): Ürünler

Örnek uygulama 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 Global değişkenler Detay bilgileri getirecek fonksiyonu çağırıyoruz

Örnek uygulama 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 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 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 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

Örnek uygulama 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 Aynı işlem şu şekilde de yapılabilir, ancak güvenlik açıkları (ör: Sql Injection) ve çalışma sırasında problemler çıkabilmektedir.