Veritabanı programlarının oluşturulması. Rozrobka programı veritabanları. Unit1 modül açıklaması

Harnınızı robota temel bilgilere göndermek çok kolay. Vikoristovy formu, aşağıda raztastovanu

Öğrenciler, yüksek lisans öğrencileri, genç yetişkinler, eğitimli robotlarında muzaffer bilgi tabanı gibi en iyi arkadaşınız olacak.

Yer almak http://www.allbest.ru/

giriş

3. Veri organizasyon modelleri

4. İlişkisel veri tabanları

6. Bilgibilimsel model

7. Mantıksal model

8. Tablo yapısı

12. Katlanır masalar

16. Çiçeklerin yaratılması

17. Program listesi

Visnovok

Referans listesi

giriş

Faaliyet alanında, ekonominin yönetiminde ve siyasette bu etkili kararların kabul edilmesi için, mevcut uzmanın bilgisayar yardımı ve çağrı yardımı ile verilerin toplanması, toplanması, kaydedilmesi ve işlenmesinden sorumlu olması, belgesel incelemesinin sonuçlarını temsil eder. Bu yüzden veri tabanları ile pratik yapmayı hatırlamak çok önemlidir.

Veritabanı - bilgi toplanması için tanınan yapı düzenlenmiştir. Modern veri tabanlarında hem veriler hem de bilgiler kaydedilir.

Delphi hakkında, İsveç programlarının yaratılmasının ortası hakkında konuşmak. Görsel programlamanın geliştirilmesi, tobto. Koristuvach gelecekteki programını hazırlar ve programın kendisini başlatmadan önce çalışmalarının sonuçlarını kontrol eder. Prensip olarak, program yazma süreci iki kısma ayrılır. Birincisi - programcı kendi programlarında kendi düzenine sahip olabilir, gerekli unsurlar, konum, dünyanın ihtiyaçlarını belirleme, gücü değiştirme. Diğeri program kodunda yazılmıştır, programın çalışmasında sadece birkaç saat boyunca mevcut olan elemanların gücünün bir açıklaması, pencerenin görünümünün podyuma verdiği tepkilerin bir açıklaması, üzerindeki baskı. bu düğme. Programın öğesinin yetkisinin olup olmadığı görevi için nesne denetçisinde (seçilen öğenin otoritesinin sözde monitörü) yetkiyi değiştirmek için büyük metin satırları yazmak zorunlu değildir. Qia zmina, program kodunu otomatik olarak ekler veya değiştirir.

Bu, görsel programlama teknolojisi için harika bir artı. Yazılım ürününüzü oluşturmak veya değiştirmek, program öğesinin gücünü bilmemek veya vahşice saygı duymamak, ancak muzaffer olmak gereğinden fazladır, tekrar tekrar yazın, genellikle katlama için eşit şartlarda konuşan, görsel olmayan bir şekilde yazarak çalışan bir ürün hazırlayın. editör.

Önümüzde, sanki ilk sürecin ilk planı hakkındaki verileri taramak mümkünmüş gibi, veri veritabanını yerleştirme görevi var. Veritabanını yükledikten sonra, Sql isteklerinin yardımı için bir titreşim analizi yapmak gerekir.

temel bilgi tablosu programı

1. Veritabanı eklerinin geliştirilmesine büyük yardım

intikam veritabanı

a. Tablolar, veri toplama, 3'ten az tablo. Dış görünüm tablosu, 10'dan az girişten intikam almaktan suçlu.

B. Görsel bir inceleme, giriş, düzenleme ve veri isteme, içecekler oluşturma ve tekrar ziyaret etme formu. Formda açıklamalar, ipuçları var. Verilen değer kümesi için formdaki alanları doldururken, listeden değer seçmek mümkündür. Mümkünse, kayıtlar için navigasyonu optimize etmek için ilgili suçlu buti'sini oluşturun. Formda, mümkün olduğu kadar, koristuvach için maksimum bilgi olabilir. Suçlanacak semantik afların bir özetini verin.

ile birlikte. Tabloları, formları, istekleri temizlemek için ne çağırın

D. Çeşitli veritabanı nesnelerine erişmek için menü

e. Dovіdka, görevin en son açıklamasının intikamını almak için scho

2. Veritabanı programlaması için, DELPHI programlama sistemi olan SQL dilinden ek literatür çıkarmak gereklidir.

3. Perelik ve sorunları bağımsız olarak çözmenin yolları

1. Problem ifadesinin ve konu alanının analizi.

2. Bilgibilimsel tasarım, bilgi nesnelerinin düzeni, etki alanları, nitelikler, bağlantılar, bir bilgibilimsel modelin katlanması.

3. Mantıksal tasarım, temel suların sorulması ve hazırlanması, normalizasyon.

4. Sql isteklerini tasarlama.

5. Veritabanının yapılandırılması ve kapsayıcı işlevlerinin programlanması.

6. Bir yazılım ortamı için bir veritabanı tasarlama.

7. Program arayüzünün geliştirilmesi.

8. Açıklayıcı bir not almak.

4. Ders çalışmasından yetkinliklerin kaldırılmasını değerlendirme kriterleri

Bir saat çalışma için ölçütler, masa 1'de gezinerek katip tarafından doldurulur. Orta notlar için, ders çalışmasının notu belirlenir.

Tablo 1. Yeterliklerin Değerlendirilmesi

yetkinliklerin adı

değerlendirmenin amacı

Nasıl yardım edeceğinizi öğrenin ve onları takip edin

Sonuçların geri çekilmesi (DB) (gözlem, yapı, görev öncesi geçerlilik)

mektup iletişimi

Açıklayıcı notta Yakіst vykladu, zrozumіst, genel yapı, vіdpovіdn zavdannya.

DELPHI programlama sisteminin soylular ve zastosovuvat öğeleri

Veritabanının uygulanması için güç kaynağına bağlı olarak veritabanı programının bileşenleri

Veritabanı teknolojisinin asalet ve zastosovuvat unsurları

Beslenme konusunda Vіdpovіdі, pov'yazanі z proektivannym, format testi olabilir

Veritabanı teknolojisi ihtiyaçları konusunda bilgi sahibi

Açıklayıcı bir notun tanıtımı

İş planlaması, iş organizasyonu

vikonannya robit terimleri

Görevleri bağımsız olarak çözün

Perelik ve bağımsız rozvyazuvanih zavdan yolları

usna iletişim

Veritabanının kamu savunması

Analiz öncesi sağlık, sentez

Bilgiye dayalı, mantıksal veritabanı modeli

Sonuç için Pragnennya

Vikonanyh robotlarının kalitesi, ergonomik ekranlar, işleyiş kalitesi.

Yeni fikirler üretmek için inşa etmek

Arayüzün kalitesi, veritabanının ek işlevleri yönetici tarafından garanti edilmez.

Yönetimden önce bina (arama) bilgisi

Ders çalışmasında bulunan ve öğrenilen bilgi kaynaklarının sayısı, danışman sayısı.

2. Veritabanı yönetim sistemlerinin temel kavramları ve sınıflandırılması

Veritabanı (DB), numaralandırma sisteminin belleğinde depolanan ve nesnelerin doğasını ve konu alanındaki birbirleriyle ilişkilerini yansıtan yapılandırılmış bir veri topluluğudur.

Temel alınan verilerin mantıksal yapısına veri temsil modeli denir. Veri görünümünün ana modellerinden (veri modelleri) önce, ієrarchіchna, merezheva, ilişkisel görülebilir.

Veritabanı yönetim sistemi (DBMS), koristuvachami açısından zengin bir veritabanının oluşturulması, yönetimi ve depolanması için modern ve yazılım araçları, atamalar kompleksidir. DBMS'yi veri modeline göre adlandırın. Dolayısıyla farklı bir ilişkisel veri modeline dayanan VTYS'lere ilişkisel VTYS denir.

Veri tabanı ile çalışmak için DBMS'nin veri tabanını tamamlayın. Ancak, veri tabanından niteliksiz coristuvach'lara kadar robotların güvenliğini sağlamak gerekir veya DBMS arayüzü yetkili değilse, programlar genişletilebilir. Yaratılışınız programlama gerektirecektir. Ek, uygulanan herhangi bir görevin yürütülmesinin otomasyonunu sağlayacak bir program veya bir program kompleksidir. Programlar, DBMS'nin ortasında veya ortasında oluşturulabilir - örneğin, Delphi veya C ++ Vuildeg gibi veritabanına erişim sağlayan programlama sisteminin yardımı için. Bir DBMS'nin ortasını genişleten programlara genellikle DBMS eklentileri denir ve bir DBMS duruşunu genişleten eklentilere eklentiler denir.

Veri sözlüğü, veri yapısı, veri tabanındaki dosyaların birer birer birbirine bağlanması, veri türleri ve veri biçimleri, verilerin coristuvachs'a kullanılabilirliği hakkında merkezi bilgi toplanması için tanınan bir veri tabanı alt sistemidir. , yalnızca kod koruması ve erişimin ayrılması.

Bir vikoristannі DB'ye dayanan bilgi sistemleri, istemci-sunucu mimarisinde çalışmalıdır. Ve burada veritabanı bir bilgisayar sunucusunda barındırılıyor ve ona ayrı bir erişim var.

Bir bilgisayar ortamında tek bir kaynağın sunucusu, bu kaynağı kullanan bir bilgisayardır (program), istemci ise bir kaynak olan bir bilgisayardır (program). Bilgisayar ortamı için bir kaynak olarak, örneğin veri tabanları, dosyalar, diğer hizmetler, posta hizmetleri olabilir.

Arkhіtekturі istemci-sunucudaki sistem organіzatsіt іnformatsіynoїї є uzak poddnannya sberіgannya, obslugovuvannya ve küresel kurumsal bilgilere toplu erişim z іndivіdualnoyu iş koristuvachіv.

İstemci-sunucu mimarisinin temel prensibine göre veriler yalnızca sunucu üzerinde işlenir. Koristuvach veya program, SQL taşıma talimatlarını gördüğünde veritabanı sunucusuna ulaşmak için bir istek oluşturacaktır. Veri tabanı sunucusu, daha sonra sunucunun bilgisayarına aktarılan gerekli verileri aramakla ilgilenir. Böyle bir pasajın aktarımı bir öncekine eşittir ve iletilen verinin önemli ölçüde daha az saplantısıdır.

Bu tür bir DBMS görüyorsunuz:

* tamamen işlevsel VTYS;

* veritabanı sunucuları;

* Zasobi rozrobki, robotları veritabanından programlar.

Geleneksel DBMS'ye karşı tamamen işlevsel DBMS. dBase IV, Microsoft Access, Microsoft FoxPro ve diğerlerini içerir.

Veritabanı sunucusu, EOM'deki veri işleme merkezlerinin bir organizasyonu olarak tanınır. Veritabanı sunucusu, istemci programlarından gelen istekleri işlemekle ilgilenir ve ek SQL ifadeleri için çağrı yapar. Veritabanı sunucusu izmaritleri є: Microsoft SQL Server, Inter Base ve in.

İstemci programları rolünde DBMS, elektronik tablolar, metin işlemcileri, elektronik posta programları ve diğerleri kullanılabilir.

Veritabanından programların geliştirilmesini özelleştirin, yeni programlar oluşturmak için ince ayar yapılabilir:

* müşteri programları;

* veritabanı sunucuları ve diğer bileşenler;

* Koristuvatsky dodatkiv.

Seçimin niteliğine göre, DBMS sigorta kapsamına zengin coristuvachiv (sanayi) ve yerel (kişisel) olarak ayrılmıştır.

Promislovi, DBMS, büyük ekonomik nesneler için otomatik kontrol sistemlerinin geliştirilmesi için yazılım temelidir. DBMS'nin vaatleri, aşağıdakilerin yerine getirilmesinden sorumludur:

* Zengin coristuvach'ların ortak bir paralel çalışmasını organize etme imkanı;

* ölçek;

* Farklı donanım ve yazılım platformlarına aktarma;

* bagatorіvnevoї sistem zberezhenoї іnformatsії varlığı da dahil olmak üzere vіdnoshennia'nın zbоїv raznomanіtnykh için sağlamlığı;

* güvenli veri güvenliği ve bunlara erişim için yapılandırılmış bir sistem.

Kişisel DBMS - kişisel bir bilgisayarda bir masaüstü uygulaması için tasarlanmış yerel bir sunucunun veya küçük bir sunucu grubunun yürütülmesine yönelik yazılım güvenliği. Arkadaşıma adını açıklarım - zemin. Döşeme sistemlerinin ilk özellikleri şunlardır:

* kendi temelinde praceszdatn_ koristuvatski dodatki oluşturmanıza izin veren bariz kullanım kolaylığı;

* Donanım kaynakları için ne kadar takas yapılır.

Veri modeline göre, DBMS hiyerarşik, merezhevі, ilişkisel, nesne yönelimli ve diğerlerine bölünmüştür. Deyakі DBMS mozhut bir saat p_dtrimuvati k_lka veri modelleri.

Veritabanına kaydedilen danim ile çalışmak için aşağıdaki tipler çizilir:

*verilerin film açıklaması - vysokorіvneva prosedürel olmayan dil
bildirim tipi, mantıksal bir tanımın tanımı için atamalar
veri yapıları

* verilerin dil manipülasyonu - robotlarla ana işlemlerin verilerle tamamlanmasını sağlayan yapıların sırası: istekler için giriş, değişiklik ve veri seçimi.

Farklı DBMS'deki filmlerin isimleri otoritenin annesi olabilir. En büyük uzantının iki standartlaştırılmış dili vardır: QBE - açık isteklerin dili ve SQL - yapılandırılmış isteklerin dili. QBE, temelde hareketin ve verilerin manipülasyonunun gücüdür, SQL her iki türde de hareketin gücünde aynıdır.

DBMS, aşağıdaki temel düşük seviyeli işlevleri uygular:

* eski hafızadan haraçların yönetimi;

* operasyonel bellek arabelleklerinin yönetimi;

* İşlem yönetimi;

* vednya log zmin bir DB'de;

* Veritabanının bütünlüğü ve güvenliği güvenliği.

Harici bellek verilerini yönetme işlevinin uygulanması, işletim sistemi dosya sisteminde kaynak yönetiminin organizasyonunu sağlar.

Veri arabelleğe alma ihtiyacı, operasyonel bellek miktarının harici bellek miktarından daha az olmasıyla açıklanır. Tamponlar, mevcut ve operasyonel bellek arasında daha hızlı değiş tokuş için kullanılan operasyonel bellek alanlarıdır. Veri tabanına ait parçalar, arabelleklerden, geçiş sırasında DBMS'ye aktarılan veya işlendikten sonra veri tabanına yazılması planlanmaktadır.

Veri bütünlüğünü çekirdekte tutmak için DBMS'de işlem mekanizması kazanır. DBMS'nin baştan sona kadar olması gerektiği için, bir işleme, veritabanı verileri üzerinde tutarsız bir işlem dizisi denir. Sebep ne olursa olsun (bu tür bir mülkiyetin başarısızlığı, yazılım güvenliğindeki aflar, eklemeler dahil), işlem yarım kalır, biter.

İşlemlerin üç ana gücü vardır:

* atomite (işlemin içerdiği tüm işlemler sayılır, yoksa başka);

* serileştirilebilirlik (bir kerede sonuçlandırma işlemlerinin ve işlemlerin günlük karşılıklı girişi);

* Dayanıklılık (taahhüt edilen işlemin sonuçları harcanana kadar sistemin çökmemesine neden olur).

İşlem örneği, bankacılık sistemindeki bir hesaptan diğerine kuruş transfer etme işlemidir. Bir rahunkadan peni kazanırız, sonra onu başka bir rahunok'a harcarız. Taraflardan biri başarılı bir şekilde kazanamazsa, operasyonun sonucu yanlış görünecek ve operasyonun dengesi bozulacaktır.

DBMS, donanım ve yazılım arızalarının varlığı nedeniyle veritabanından veri toplamanın güvenilirliğini sağlamak için dergi için değiştirilir.

Veri tabanının bütünlüğünün ve veri tabanının gerekli zihinsel başarılı işleyişinin sağlanması, özellikle bir yaylı vikoristan yardımıyla. Veritabanının bütünlüğü, veri tabanının gücüdür, yani içinde tamamen gizlidir, üstün değildir ve bilginin konu alanını yeterince yansıtır. Veritabanının ana kampı, veritabanına kaydedilen verilerin tatmininden sorumlu olan geniş bir zihin ölçeğinin yardımı için açıklanmıştır.

Veri şifreleme, parola koruması, veri tabanlarına ve diğer öğelere (tablo, formlar, çağrılar ve diğer) eşit erişim için DBMS'de güvenlik mevcuttur.

3. Veri organizasyon modelleri

Nesne özünün hiyerarşik modelinde, özne alanı, ağaç benzeri (irarşik) bir yapı gibi veri kümeleriyle temsil edilir. Danimarkalıların hiyerarşik modeli tarihsel olarak ilkti. 60'ların temelinde - 70'lerin koçanında, ilk profesyonel DBMS geliştirildi.

Arkaik modeldeki bütünlük alışverişinde esas saygı, temel kuralın geliştirilmesiyle atalar ve bağlılıklar arasındaki yerleşimin bütünlüğüne eklenir: Baba olmadan hiçbir bağlılık kullanılamaz.

Merezheva'nın veri modeli, veri öğeleri arasındaki farklı ilişkileri eksiksiz bir grafik olarak görüntülemenize olanak tanır. Merezheva DB, bir dizi kayıttan ve bir dizi ilgili çağrıdan oluşur. Zv'yazku kalıplama üzerine spetsіalnyh obmezhen üst üste değil. Başlık kayıtlarının hiyerarşik yapılarında annenin yalnızca bir ata kaydı olabilirken, bu başlık kayıtlarının daha küçük modelinde annenin oldukça fazla sayıda ata kaydı olabilir.

Veri modelinin avantajı, etkili uygulama olasılığıdır. Hiyerarşi modeli söz konusu olduğunda, merezhev modeli, belirli bağlantıların yapılmasının kabul edilebilirliğinin algılanması için daha fazla olanak sağlar.

Verilerin ağ modelinin kısalığı, temelde ilham alan veritabanı şemasının yüksek katlanması ve sertliğinin yanı sıra katlama її rozumіnnya oldukça büyük coristuvache'dir. Ayrıca, bu zayıflamaların ölçü modelinde, bağlantı sayısının kontrolü, kayıtlar arasına yeterli sayıda bağlantı eklenmesinin kabul edilebilirliği üzerindendir.

Mesh modeline dayalı sistemler pratikte geniş bir genişlik kazanmamıştır.

İlişkisel veri modeli, IBM'in sözcüsü Edgar Codd tarafından ve mavi (ilişki) kavramına dayandırılmıştır.

Ayar, tuple adı verilen kişisel olmayan öğelerdir. Mavinin görünümünün son şekli iki dünyalı bir masadır.

Bir tablonun yardımı için, veriler arasındaki en basit bağlantı türünü manuel olarak tanımlayabilirsiniz ve aynı zamanda: bilgileri tabloda alınan bir nesne tanımladınız, benzer nesnelerin anonim bir listesinde, bir satır bu tür nesnelerin veya tablonun bir kaydı.

İlişkisel modelin ana eksiklikleri şunlardır: dört kaydı tanımlamak için standart yöntemlerin varlığı ve arkeolojik ve birleştirme bağlantılarını tanımlamanın karmaşıklığı.

4. İlişkisel veri tabanları

Mevcut konu alanının veri ilişkisel modeli (RMD), saatte değişen verilerin toplanmasıdır. p align="justify"> Bir bilgi sistemi oluştururken, verilerin tutarlılığı, konu alanındaki nesneler hakkındaki verileri kaydetmenize ve bunlar arasındaki bağlantıları modellemenize olanak tanır. RMD terimleri Tablo'da sunulmuştur. 4.1

Tablo 4.1. Termine-ilişkisel model

terminolojik giyim

Eşdeğer

Ayar

doğum şeması

Tablo başlığı satırı (tablo başlığı)

Tablo satırı, kayıt

rızık

Nesnenin yetkilerinin açıklaması

tavuklar, tarla

Anonim izin verilen değerler

bağlanmak

Birincil anahtar

Benzersiz tanımlayıcı

kardinalite

Satır sayısı

stoopsiv sayısı

İlişkisel veritabanı, iki dünya tablolarının koleksiyonunu almak için bir veri topluluğudur. Tablolardaki veriler, ilerleyen ilkelere dayanmaktadır:

1. Niteliklerin değerleri atomik olabilir (başka bir deyişle,
bir satır ve sütunun kenarına yerleştirilmesi gereken dermal anlam,
ancak çaça değerlerine bölünemez).

2. Skin özniteliğinin değeri, bir ve aynı tipte yatmaktadır.

3. Masanın deri kaydı benzersizdir.

4. Cilt alanı benzersiz olabilir.

5. Tablodaki alanların ve kayıtların sırası mevcut değil.

En önemli anlayıcılara yerleştirilmiş ve iki dünyalık bir tablonun intikamını almak için.

Sürdürülebilirlik, verileri veri tabanına kaydedilen herhangi bir nitelikteki bir nesnedir. Günle ilgili veriler günden alınır.

Nitelikler, varlığın özünü karakterize eden güçtür. Tablonun yapısında skin niteliği çağrılır ve mevcut tablo yapısının başlığı belirtilir.

Evliliğin anahtarı, deriyi düğün kortejlerinden açık bir şekilde tanımlayan niteliklerinin sırasıdır. Başka bir deyişle, tanınmanın anahtarı olan K'nin kişisel olmayan nitelikleri, benzersizlik gücüne sahip olabilir. Anahtarın gücü geliyor - üstünlük değil. Tobto, benzersizliğin gücü mümkün olmayana kadar kendi kişisel olmayan çokluklarına layıktır.

Bir anahtar olabileceğinden, cilt, niteliklerin bir kombinasyonu için giyilebilir.

Muhtemel varyasyonlar, eğer birkaç özellik kombinasyonu varsa, cilt açık bir şekilde mavi demetlerini tanır. Olası öneri tuşlarıyla bıyıklar ve özellik kombinasyonları. Olası anahtarlardan biri olun, ilk siz olabilirsiniz.

Aşağıdaki hedeflere ulaşmak için zafer kazanmak için anahtarları söyleyin:

Anahtar niteliklerin anlamlarının tekrarını suçlayın (diğer nitelikler saygıyla kabul edilmez);

Tuple sıralaması. Büyüme için sipariş vermek veya tüm temel özelliklerin değerini değiştirmek ve ayrıca sırayı değiştirmek (biri için - büyüme ve diğerleri için - düşüş) mümkündür;

Tabloları birbirine bağlayan kuruluşlar.

Zil anahtarını anlamak önemlidir. Dış anahtar, değerleri başka bir R1 önerisinin olası anahtarının değerlerinden kaynaklanan bir R2 önerisinin niteliklerinin çarpımı olarak atanabilir.

Orijinal anahtarı oluşturan K2 değişikliğinin özellikleri bu değişiklik için anahtar değildir.

Ovnishnіh tuşlarının yardımıyla vіdnosinami arasında bağlantılar kurulur.

Bilgi sistemlerinin veri tabanlarının tasarımı, emek yoğun görevlerle yapılmalıdır. Konu alanındaki yapı ve süreçlerin resmileştirilmesinin temellerini, tasarrufların veri tabanına nasıl aktarıldığına ilişkin bilgileri içerir. Razrіznyayut kavramsal ve şematik-yapısal tasarım.

Sezgisel bir süreçle anlamlı bir dünya olarak IS veritabanının kavramsal tasarımı. Konu alanının bilgibilimsel modelinin sınırlarında indüklenen yeterlilik, IC'nin işleyiş sürecinde ek bir yol ile yeniden ele alınır.

Kavramsal tasarımın aşamaları:

* Bu konuda vahşi bir açıklamanın oluşumu için Vyvchennya konu alanı;

* funktsіy ve zavdan rozrobluvanoї ІС analizini vidіlennya;

* Konu alanının ana nesnelerinin-varlıklarının belirlenmesi
bu vіdnosin onları mizh;

* Konu alanının tezahürünün resmileştirilmesi.

İlişkisel bir veritabanı şeması tasarlarken aşağıdaki prosedürler çağrılabilir:

* bir çeviri tablosu ve aralarındaki bağlantıları belirleyin;

* Alanların çevirisi, alan türleri, cilt tablosunun anahtar alanları (tablonun şeması), harici anahtarlar aracılığıyla tablolar arasındaki bağlantıların kurulumu;

* tablolardaki alanlar için yerleşik indeksleme;

* listeleri olan alanlar için listelerin (sözlüklerin) geliştirilmesi
danimi;

* tablolar ve çağrılar için bir numara alışverişi kurulumu;

* tabloların normalleştirilmesi, tabloların ve bağlantıların çevirisinin düzeltilmesi. Veritabanının tasarımı, fiziksel ve mantıksal düzeylerde depolamadır. Tasarım, DBMS kullanılarak fiziksel olarak uygulanır ve çoğunlukla otomatikleştirilir.

Belirtilen sayı ve tabloların yapısının tasarlanması, veri tabanına girdilerin geliştirilmesi, bilinen belgeler, veri tabanından veri girişi ve düzenlenmesi için formların oluşturulması daha mantıklıdır.

Mantıksal veritabanı tasarımının en önemli görevlerinden biri veri yapılandırmasıdır. Veri yapılarını tasarlamak için aşağıdaki adımlar atılmalıdır:

* Nesneler hakkındaki bilgilerin bir tablo (tek görünüm) çerçevesinde birleştirilmesi ve girişlerin normalleştirilmesi prosedürüne dayalı olarak birbirine bağlı tabloların serpilmesine daha fazla ayrıştırılması;

* veri işlemeden önce yapılabilecek sistem hakkında bilgi formüle etmek (dış veri türlerini ve karşılıklı ilişkileri tanımlamak), bitmiş veritabanı şemasının SA5E sisteminin yardımı için otrimannya veya hazır bir uygulamalı bilgi sistemi oluşturmak;

* Sistem analizinin geliştirilmesi ve yapısal modellerin geliştirilmesi.

5. SQL çalışmasının tanınan ilkesi

SQL (genellikle "Sequel" olarak anılır, Yapılandırılmış Sorgu Dili olarak kısaltılır), Mova Zapitiv'in Yapılandırılmasını sembolize eder.

SQL, bir bilgisayar veritabanında depolanan verileri işlemek için kullanılan bir araçtır. İlişkisel veri tabanlarını etkili bir şekilde oluşturma ve onlarla çalışma imkanı veren Tsemov.

Veri tabanları dünyası giderek daha yaygın hale geliyor, bu da çok sayıda farklı bilgisayar ortamında işlev görebilmesi için standart bir dilin oluşturulmasını gereklilik noktasına getirdi. Standart dil, koristuvach'ların bir komut dizisini bilmelerine, bunları oluşturmalarına, oluşturmalarına, değiştirmelerine, değiştirmelerine ve kişisel bir bilgisayarda, küçük bir iş istasyonunda veya bir başka yerde çalışmasına bağlı olarak bilgileri bağımsız olarak iletmelerine izin vermektir. evrensel bir Bilgisayar dünyasını giderek daha fazla karşılıklı olarak destekleyen koristuvach, benim gibi vikoristannі ve zagalnennі іnformatsiї z low dzherel'de çok sayıda yolun yardımı için büyük bir üstünlükle maє maє maє.

Vyplyvaє z isimleri gibi, SQL є programlamam, vzaimodiї koristuvach'ın veri tabanı ile organizasyonu için zastosovuєtsya gibi. Aslında, SQL yalnızca ilişkisel türdeki veritabanlarıyla çalışır.

6. Bilgibilimsel model

İnfolojik model oluşturulurken, verilen veri tabanının konu alanı olan "Doğrudan geliştirilen PMI disiplinleri için temel planlar" analiz edilmiştir. 4 nesne görüldü: Birincil plan, Disiplin, Öğrenci, Vikladach ve ayrıca öğrenciler ve disiplinler arasında ve ayrıca vikladachi ve disiplinler arasında bir bağlantı olarak iki ek tablo. Nesne İlk planın nitelikleri olabilir: oluşturma tarihi, ilk planın numarası. Hedef Disiplin aşağıdaki niteliklere sahip olabilir: Disiplinin adı, Disiplin kodu, İlk planın numarası, Derslerin sayısı, Uygulama yılı sayısı, Laboratuvar çalışmasındaki yılların sayısı, Tüm yıl, Yıl sayısı Her gün, Disiplinin eğitim şekli, Mezuniyet dönemi. Nesne Sudent şunları belirtebilir: Kredi defterinin numarası, ІБ. І nesne Vikladach maє öznitelikleri: ІБ, Personel numarası, Departman, Posada, Telefon. Hedef Planı ve Disiplin nesneleri 1:n gerekliliklerini karşılar, Disiplin ve Öğrenciler nesneleri 1:n gerekliliklerini karşılar ve Disiplin ve Vikladach nesneleri 1:n gerekliliklerini karşılar.

İnfolojik modeli tanımlarken, ER diyagramları ile puanladık:

1

7. Mantıksal model

Mantıksal model, konu alanının anlaşılmasını, aralarındaki ilişkileri ve veriler üzerinde gezinmeyi, konu alanındaki bindirmeleri tanımlar.

Mantıksal veri modeli, verinin son derece olası temelidir. Bilgi birimleri cinsinden olacaktır, ancak belirli bir VTYS'ye bağlayıcı olmayacaktır. Bunun da ötesinde, verilerin mantıksal modeli neob'yazkovo'dur, çok ilişkisel veri modeli açısından ifade edilebilir.

Kaplama nesnesi için mantıksal bir model oluşturmak için, ilk alan grubuyla birlikte tablo şeklinde bir tablo yerleştirildi. Oskіlki Objects Discipline ve Vikladach 1:n ile eşleşti, ardından Discipline ve Vikladach nesneleri arasındaki bağlantıyı sunmak için ek bir tablo var: Vikladaє.

Toplamda 4 nesnemiz var ve bunların sunulması için 4 tablo da olacak, nesne İlk plan bilgi vermekten daha az, veri tabanının çalışmalarının parçaları artık bir ilk plana sahip değil:

İki nesne arasında 1:n bağlantı varsa, iki tablo arasındaki bağlantıları temsil etmek için bir tablo daha tanıtmanız gerekir. Bir Vikladaє (Disciplina-Prepodavatel) masası olacak ve bu masa Vivchaє (Disciplina-Student).

Gönderilen veri tabanına 5. normal form olan tk'ye kadar girilebilir. 3. normal forma çıkmıyor ve ilk tuş basit. Mantıksal şema, Microsoft Access'te uygulanır.

malyunok 2

8. Tablo yapısı

Harici veri tabanı 5 tablodan oluşur (İlk plan tablosu doğru değildir, bu nedenle bir başlangıç ​​planı verilir).

Alan kod çözme:

v disiplin.db

Ш Nazv - disiplinin adı, alan türü: String;

Ш Kod – disiplinin benzersiz bir kodu: LongInt;

Ш Dönem - gösterildiği dönem: Dize;

Ш KolLeKCh - bu disiplinden ders sayısı: LongInt;

Ш KolPraktCh – bu disiplindeki uygulayıcı sayısı: LongInt;

Ш KolLabRabCh - disiplindeki ders sayısı: LongInt;

Ш VsegoCh - toplam yıl sayısı: LongInt;

Ш NomerYP – disiplinin uygulanacağı ilk planın numarası: LongInt.

vöğrenci.db

Ш NomerStudBileta - öğrenci bileti numarası: LongInt;

Ш FIO – öğrencinin adı: ShortInt;

v Prepodaet.db (Disiplin-Öğretmen)

TabNomerPrepod - ana disipline aday olan çalışanın personel numarası: LongInt;

Ш FIO- ІБ vikladach, hangi disiplini vikladaє vіdpovіdnu: String.

v Prepod.db

Ш FIO - PIB veri sayfası: String;

Ш TabelNomerPrepodavatelya - çalışanın benzersiz çalışan numarası: LongInt;

Ш Kafedra - pratikte pratik yapmak için bölüm: String;

Ш Dolshnost - Posada Vikladach: İp;

Ш Vikladach'ın telefon-iletişim telefon numarası: String.

v Izuchaet.db(Disiplin-Öğrenci)

Ш KodDiscip-disiplin kodu: LongInt;

Ш NomerStudBileta - disiplini öğreten öğrencinin öğrenci bileti numarası: LongInt;

Ш Ana disiplini olan bir öğrencinin FIO- PІB: String;

Ш Değerlendirme - öğrencinin çalışılan disipline ilişkin değerlendirmesi: LongInt;.

9. SQL sorguları tasarlama

1. Cilt dönemi için sınıfların ve içeceklerin bir listesini oluşturun.

Nazv,FormaReport'u seçin

nerede Sömestr=:s ve

(Disciplina.FormaOtchet="Zalіk" veya Disciplina.FormaOtchet="Uyku");

2. Bir deri nesnesinden bir muayene-dolgu muayenesi / temel ve tamamlayıcı / oluşturmak.

Ana görünüm:

Öğretmen.FIO'yu seçin,

Disciplina.ObsheeKolChVNed,Disciplina.Semestr,Izuchaet.FIO,Izuchaet.

Ocenka,Disiplin.Nazv

Disciplina, Prepodaet, Izuchaet tarafından

nerede Disciplina.KodDiscip=Prepodaet.KodDiscip

ve (Disciplina.FormaOtchet="Uyku" veya Disciplina.FormaOtchet="Zalіk")

Dodatkova en önde (öğrenciler için yakі 2 mayıs):

Disciplina.Nazv,Prepodaet.FIO'yu seçin,

Disciplina.ObsheeKolChVNed,Izuchaet.FIO,Disciplina.Semestr,Izuchaet.Ocenka

Izuchaet, Disciplina, Prepodaet'te

nerede Izuchaet.Evaluation="2"

ve Disciplina.KodDiscip=Izuchaet.KodDiscip

ve Disciplina.KodDiscip=Prepodaet.KodDiscip

ve (Disciplina.FormaOtchet="Uyku" veya Disciplina.FormaOtchet="Zalіk");

Disiplini Güncelle

ObsheeKolChVNed=VsegoCh/17 olarak ayarlayın;

4. Bir cilt öğrenci diploması için bir ek hazırlayın:

Disciplina.Nazv, Izuchaet.Ocenka, Izuchaet.FIO'yu seçin

Izuchaet, Disciplina'yı görüntüle

nerede Disciplina.KodDiscip=Izuchaet.KodDiscip

ve Disciplina.FormaOtchet="Uyku"

AVG(Ocenka)'yı SrBall olarak seçin

SrBall'a göre sırala desc;

5. Ortalama puanı değiştirme sırasına göre grup listesine bakın:

SrBall olarak FIO, AVG(Ocenka) seçin

SrBall'a göre sırala desc;

10. Sistemin yapısı ve işlevleri

Kurs çalışması bir proje "Proje1" ve 13 modülden oluşmaktadır.

1. Birim1 - burada başlık sayfası olan form seçilir. Not ve Düğme bileşenleri birleştirilir.

2. Unit2 - burada veri tabanının ilk sayfası olan form alınır. Burada bileşenler sıkışmış: Düğme, Not.

3. Unit3 - burada veri tabanı tablolarının sekmelerinden kaldırılması gereken form kaydedilir. Bileşenler burada gösterilir: Not, Düğme, TabSheet, Tablo, DBGrid, DBNavigator, Label, Query.

4. Unit4 - burada form kaydedilir, görev görüntülenir. Burada bileşenler sıkışmış: Not, Düğme.

5. Unit5 - burada form alınır, ek sınav sertifikası dikkate alınır. Bileşenler burada gösterilir: Not, Düğme, TabSheet, Tablo, DBGrid, DBNavigator, Label, Query.

6. Unit6 - burada içecek ve salon listesinin görüntülendiği form seçilir. Bileşenler burada gösterilir: Not, Düğme, TabSheet, Tablo, DBGrid, DBNavigator, Label, Query.

7. Unit7 - burada form seçilir, ana muayene sertifikası görüntülenir. Bileşenler burada gösterilir: Not, Düğme, TabSheet, Tablo, DBGrid, DBNavigator, Label, Query.

8. Unit8 - burada form kaydedilir, grupların listesi düşme sırasına göre görüntülenir. Bileşenler burada gösterilir: Not, Düğme, TabSheet, Tablo, DBGrid, DBNavigator, Label, Query.

9. Unit9 - burada form kaydedilir, diplomadaki ek görüntülenir. Bileşenler burada gösterilir: Not, Düğme, TabSheet, Tablo, DBGrid, DBNavigator, Label, Query.

10. Unit10 - burada elektronik formun doldurulmasından formun görüntülendiği form kaydedilir. Bileşenler burada gösterilir: Not, Düğme, TabSheet, Tablo, DBGrid, DBNavigator, Label, Query.

11. Unit11 - burada form kaydedilir, menü görüntülenir. Burada bileşenler sıkışmış: Not, Düğme, Etiket.

12. Ünite12 - burada elektronik sınav kağıdının nasıl oluşturulduğunun görüntülendiği form seçilir. Burada bileşenler bükülmüş: Not ve Düğme, RVProject, RVQueryConnection ve Sorgu.

13. Unit13 - burada form alınır, devobrazhaetsya diplomada bir ek oluşturulmasından geliyor. Burada bileşenler bükülmüş: Not ve Düğme, RVProject, RVQueryConnection ve Sorgu.

11. Bir Koristuvach'ın Yardımcısı

1. Projeyi başlatın. Önümüzde dönem ödevinin başlık sayfası var

bebek 3

Burada hemen veri tabanına geçebiliriz veya göreve hayret edip formun merkezine dönebiliriz. "Görevi göster" i seçin

2. Önümüzde, kursun görevi hakkında bilgi içeren bir pencere var.

malyunok 4

3. Sol düğmeye basarak geri dönün ve ön penceredeki “Devam” düğmesine basarak robotu çalıştırın

malyunok 5

4. Bu taraftaki bilgilerden haberdar olduktan sonra "Enter" butonuna basıyoruz.

malyunok 6

Önümüzde, veritabanına yerleştirilecek tüm bilgileri sekmelere yerleştireceğimiz bir pencere var. Burada diğer öğrencilerin okudukları ve hangi konuları öğrettikleri disiplinler, ilk grup, adaylar listesine bakabiliriz.

5. Ayrıca, hangi günden itibaren içmeye gidebiliriz. Pop-up düğmesine tıklayın.

malyunok 7

Burada sadece butona tıklayarak sorup sormamayı seçebiliriz. Yani burada masaya dönebilir ve sınav kağıdının elektronik versiyonunun oluşumuna gidebiliriz.

6. "Cilt dönemi için randevu ve içecek listesini görüntüleyin" düğmesine tıklayın.

malyunok 8

Burada dönem numarasını girmeniz ve aşağıdaki düğmeye basmanız gerekir, ardından tablonun sonunda girdiğiniz dönem için çalışmaların ve derslerin bir listesi görünecektir. İçmeden önce hangi sayfadan dönebiliriz.

7. "Ana inceleme sayfasına git" düğmesine tıklayın

Burada, listeden disiplinin adını seçmeniz, ardından listenin sonuna disiplinin adını yazmanız ve “Vikonati” butonuna tıklamanız gerekiyor. Talep size tanıtılan disiplinin mezuniyeti için toplam yıl sayısını gösterecek ve ayrıca bu disiplini öğretirken öğrencilerin listesini ve o disiplin için notlarını gösterecektir. Saygı duymak! Değerlendirme alanı Öğrenci-Disiplin sekmesinin ortasındaki tablo formuna kaydedilecektir. Ayrıca bu kemer üzerinde ek bir sınav sertifikası oluşturabilirsiniz. Öğrenciler için 2 puan alabilirseniz, üçüncü sayfada zapіv'a dönebiliriz.

malyunok 9

8. "Ek sınav sayfasına git" düğmesine tıklayın

malyunok 10

Burada öğrencileri şımartabiliriz, böylece diğer disiplinlerden 2 puan alabiliriz. İçmeden önce hangi sayfadan dönebiliriz.

9. "Diploma için bir ek oluştur" düğmesine basın

malyunok 11

Burada lisansüstü öğrencinin PIB'sinin girilmesi, uygun öğrenciyi seçilebilecekler listesine vermesi gerekir. Ardından bir tuşa basın. Ardından, 5 yıllık eğitim için lisansüstü disiplinlerin bir listesiyle "Disiplin" girişini doldurmalı ve final notlarınızı bildirmelisiniz. Bu kemer üzerinde, "Bir arkadaş için sürüm" düğmesine basarak sekmenin elektronik versiyonunu inceleyebilirsiniz. Bu sürümü tekrar ziyaret ettikten sonra, ekranın sağ üst köşesindeki kırmızı çarpı üzerinde beliren pencereyi kapatmanız yeterlidir.

malyunok 12

10. "Ortalama puandaki değişiklik sırasına göre grup listesine bakın" düğmesine tıklayın.

malyunok 13

Burada bir cilt öğrencisi için grupların ve orta puanların bir listesi var, sırayla değişiklikler. İçmeden önce hangi sayfadan dönebiliriz.

malyunok 14

Açılır listeden bize anlatacak disiplini, örneğin ekonomiyi seçiyoruz ve açılır listenin adını tanıtıyoruz. Vikonatın düğmesine bastık ve her zamanki takma ad bu disiplinin vikladach'ıydı.

Malyunok 16

Burada seçilen disipline PIB vikladach tsієї disiplini adını vermek istiyorum. Ve ayrıca bu disiplini öğreten öğrencilerin bir listesi. Işıktan çıkmak için ekranın sağ üst köşesindeki çarpı işaretine tıklamanız yeterlidir. Ön sayfaya dönelim. İçmeden önce hangi sayfadan dönebiliriz.

12. Katlanır masalar

Bir test tablosu oluşturmak için Veritabanı Masaüstü yardımcı programlarını kullanın. Yogo - Başlat / Programlar / Borland Delphi 7 / Veritabanı Masaüstü'nü çalıştırabilirsiniz. Yardımcı programın çalışma dizinini kurmak gereklidir. Dosya/Çalışma Dizini komutunu seçin ve çalışma dizininizi ayarlayın. Tablolar oluşturmak için Dosya/Yeni/Tablo komutunu seçin. Ardından tablonun türünü seçmemiz gerekiyor. PARADOX 7 türü, dosya sunucusu tabloları için en iyisi olarak kabul edilebilir.

1. YchebPlan tabloları oluşturun (İlk plan):

malyunok 17

5. Disiplin (Disiplin) tablolarının oluşturulması:

malyunok 18

6. Tabloların oluşturulması Öğrenci:

19

7. Prepodaet (Disiplin-Vikladach) tablolarının oluşturulması:

malyunok 20

5. Prepod (Vikladach) tablolarının oluşturulması:

malyunok 21

8. Tablo Izuchaet (Disiplin-Öğrenci):

22

13. Delphi'de program oluşturma

Yeni bir program oluşturmak için Dosya menüsünden Yeni/Uygulama öğesini seçin. Bu modülün formu gösterilir (projeye başlık denir), şimdi gerekli bileşenleri forma yerleştirebilirsiniz. Tüketici için, Dosya menüsünde Yeni / Form öğesini seçmeniz gereken bir form (bir tane değil) oluşturabilirsiniz.

1. Tablo. Danimi ile dolu. Verilerin görselleştirilmesi.

Tabloyu formda görüntülemek için aşağıdaki bileşenleri üzerine yerleştirmeniz gerekir:

· Tablo (BDE sekmesinde) - Tablename yetkilisindeki "Parameters" sekmesindeki Object Inspector'da bir tablo seçin.

23

· DBGrid (DataControls sekmesinde) - formdaki tabloların gerekli gösterimi, Object Inspector'da DataSource olarak gerekli veri sayısını belirtin.

malyunok 24

· DBNavigator (DataControls sekmesinde) - tablo kayıtları arasında gerekli gezinme. DataSource olarak Object Inspector'da, DBGrid'dekiyle aynı veri kaynağı gibi görünüyor. Navigatörün işlevleri, programın bir saatlik çalışması için yoga düğmelerine basıldığında kullanılabilir, bileşen 10 düğmedir.

malyunok 25

· DataSource (Veri Erişim sekmesi) – veri erişimi için orta seviye bileşen. DBMS tabloları ve ekran öğeleri (DBGrid, DBNavigator) arasında aracı görevi görür.

26

14. Bilgi (Not) ve düğmeler içeren alanlar oluşturma

Not bileşeni, Standart sekmesine yerleştirilen formun üzerine yerleştirilir.

27

Güç Hatlarındaki "Parametreler" sekmesindeki nesne denetçisinde, görüntülemek için gerekli metni girin

28

Düğmelerin yaratılması.

Formun doğru kapanması için Standart sekmesinde bulunan Düğme bileşenini formun üzerine yerleştirin.

malyunok 29

Düğmenin çalışması için OnClick alt veri sayfasında belirtilmesi gerekir:

prosedür TForm1.N5Click(Gönderen: TObject);

başlamak

Form2.Göster;

Form1.Kapat;

son;

15. Tablolara imza oluşturma

Robotta bir tabloyu imzalamak için Etiket bileşenini kullanın, Standart sekmesinde çizin. Başlık gibi Müfettiş Nesnelerinde, metni yazmanız yeterlidir.

malyunok 30

16. Bir liste oluşturun

Açık bir listeden bir komut seçmek için ComboBox bileşeni seçilir (seçilen liste). Yogo dolgusu böyle bir sıralamada yapılabilir

Güç Öğelerindeki Nesnelerin Denetçisinde şunları yazmanız gerekir:

31

16. Çiçeklerin yaratılması

Anahtar eklemek için gerekli olan QReports aracının yardımı ile çalışır: Component->installpack->add bin klasörünü açın, dclqrt70.bpl dosyasını seçin, OK'e tıklayın ve ardından QReport bileşenlerini içeren bir sekme görünecektir. İnce ayar yaptığım bileşenler:

Tablo 2

17. Program listesi

Projenin açıklaması

program Projesi1;

kullanır

formlar,

Birim1'den "Birim1.pas"a (Form1),

"Unit2.pas" içindeki Unit2 (Form2),

"Unit3.pas" içindeki Unit3 (Form3),

Unit4'ten "Unit4.pas"a (Form4),

"Unit5.pas" içindeki Unit5 (Form5),

"Unit6.pas" (Form6) içindeki Unit6,

"Unit7.pas" içindeki Unit7 (Form7),

"Unit8.pas" içindeki Unit8 (Form8),

"Unit9.pas" içindeki Unit9 (Form9),

"Unit10.pas" içindeki Unit10 (Form10),

"Unit11.pas" içindeki Unit11 (Form11),

"Unit12.pas" içindeki Unit12 (Form12),

"Unit13.pas" (Form13) içindeki Unit13,

"Unit14.pas" içindeki Unit14 (Form14);

($R*.res)

başlamak

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.CreateForm(TForm2, Form2);

Application.CreateForm(TForm3, Form3);

Application.CreateForm(TForm4, Form4);

Application.CreateForm(TForm5, Form5);

Application.CreateForm(TForm6, Form6);

Application.CreateForm(TForm7, Form7);

Application.CreateForm(TForm8, Form8);

Application.CreateForm(TForm9, Form9);

Application.CreateForm(TForm10, Form10);

Application.CreateForm(TForm11, Form11);

Application.CreateForm(TForm12, Form12);

Application.CreateForm(TForm13, Form13);

Application.CreateForm(TForm14, Form14);

Uygulama.Çalıştır;

son.

Unit1 modül açıklaması

birim Birim1;

arayüz

kullanır

İletişim kutuları, StdCtrls;

tip

TForm1 = sınıf(TForm)

Not1: TBildiri;

Düğme1: T Düğme;

Button2: TButton;

Button3: TButton;

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form1: TForm1;

uygulama

Unit2, Unit4, Unit6, Unit7, Unit5, Unit8, Unit9, Unit10'u kullanır;

($R *.dfm)

prosedür TForm1.Button3Click(Gönderen: TObject);

başlamak

form2.göster;

son;

prosedür TForm1.Button2Click(Gönderen: TObject);

başlamak

Form1.Kapat;

son;

prosedür TForm1.Button1Click(Gönderen: TObject);

başlamak

form4.göster;

son;

son.

Unit2 modül açıklaması

birim Birim2;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

İletişim kutuları, StdCtrls;

tip

TForm2 = sınıf(TForm)

Not1: TBildiri;

GroupBox1: TGroupBox;

Düğme1: T Düğme;

Button2: TButton;

prosedür Button1Click(Gönderen: TObject);

prosedür Button2Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form2: TForm2;

uygulama

Unit3'ü kullanır;

($R *.dfm)

prosedür TForm2.Button1Click(Gönderen: TObject);

başlamak

form3.göster;

Form2.Kapat;

son;

prosedür TForm2.Button2Click(Gönderen: TObject);

başlamak

Form2.Kapat;

son;

Unit3 modül açıklaması

birim Birim3;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

İletişim kutuları, ComCtrls, ExtCtrls, DBCtrls, Grids, DBGrids, DB, DBTables,

StdCtrls, QuickRpt, QRCtrls;

tip

TForm3 = sınıf(TForm)

PageControl1:TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

TabSheet4: TTabSheet;

TabSheet5: TTabSheet;

TabSheet6: TTabSheet;

DataSource1:TDataSource;

DataSource2: TDataSource;

DataSource3:TDataSource;

DataSource4: TDataSource;

Tablo1: TT Tablosu;

Tablo2: TT Tablosu;

Tablo3: TT Tablosu;

Tablo4: TT Tablosu;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

DBGrid2: TDBGrid;

DBNavigator2: TDBNavigator;

DBGrid3: TDBGrid;

DBNavigator3: TDBNavigator;

DBGrid4: TDBGrid;

DBNavigator4: TDBNavigator;

DBGrid5: TDBGrid;

DBNavigator5: TDBNavigator;

DBGrid6: TDBGrid;

DBNavigator6: TDBNavigator;

Düğme1: T Düğme;

DataSource5:TDataSource;

DataSource6:TDataSource;

Tablo5: TT Tablosu;

Tablo6: TTtablo;

Sorgu1: T Sorgusu;

Button2: TButton;

Etiket1: T Etiketi;

Not1: TBildiri;

Etiket3: T Etiketi;

Button3: TButton;

prosedür Button1Click(Gönderen: TObject);

prosedür Button2Click(Gönderen: TObject);

prosedür Button3Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form3: TForm3;

uygulama

Unit5, Unit11'i kullanır;

($R *.dfm)

prosedür TForm3.Button1Click(Gönderen: TObject);

başlamak

Form11.göster;

Form3.kapat;

son;

prosedür TForm3.Button2Click(Gönderen: TObject);

başlamak

Query1.ExecSQL;

Form3.Yenile;

son;

prosedür TForm3.Button3Click(Gönderen: TObject);

başlamak

Form3.kapat;

son;

Unit4 modül açıklaması

birim Birim4;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

İletişim kutuları, StdCtrls;

tip

TForm4 = sınıf(TForm)

Not1: TBildiri;

Düğme1: T Düğme;

prosedür Button1Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form4: TForm4;

uygulama

Unit1'i kullanır;

($R *.dfm)

prosedür TForm4.Button1Click(Gönderen: TObject);

başlamak

form1.göster;

son;

Ünite 5 modül açıklaması

birim Birim5;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

Diyaloglar, DB, DBTables, Grids, DBGrids, StdCtrls, Mask, DBCtrls, ExtCtrls;

tip

TForm5 = sınıf(TForm)

DataSource1:TDataSource;

DBGrid1: TDBGrid;

Sorgu1: T Sorgusu;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

Etiket1: T Etiketi;

Etiket2: T Etiketi;

Etiket3: T Etiketi;

Etiket4: T Etiketi;

DBNavigator1: TDBNavigator;

Düğme1: T Düğme;

prosedür ComboBox1Change(Gönderen: TObject);

prosedür Edit1Change(Gönderen: TObject);

prosedür Button1Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form5: TForm5;

uygulama

Unit11'i kullanır;

($R *.dfm)

prosedür TForm5.ComboBox1Change(Gönderen: TObject);

başlamak

Query1.Active:=true;

son;

prosedür TForm5.Edit1Change(Gönderen: TObject);

başlamak

Sorgu1.Aç;

son;

prosedür TForm5.Button1Click(Gönderen: TObject);

başlamak

Form11.göster;

Form5.Kapat;

son;

Ünite 6 modül açıklaması

birim Birim6;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

Diyaloglar, DB, DBTables, Grids, DBGrids, StdCtrls, ExtCtrls, DBCtrls;

tip

TForm6 = sınıf(TForm)

Düğme1: T Düğme;

Düzenleme1: TDüzenle;

DataSource1:TDataSource;

DBGrid1: TDBGrid;

Sorgu1: T Sorgusu;

Etiket1: T Etiketi;

DBNavigator1: TDBNavigator;

Etiket2: T Etiketi;

Not1: TBildiri;

Button2: TButton;

Etiket3: T Etiketi;

prosedür Button1Click(Gönderen: TObject);

prosedür Button2Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form6: TForm6;

uygulama

Unit11'i kullanır;

($R *.dfm)

prosedür TForm6.Button1Click(Gönderen: TObject);

başlamak

Sorgu1.Kapat;

Query1.Prepared değilse o zaman

Sorgu1.Hazırla;

if uzunluk(edit1.text)<>0 o zaman

Başka

başlamak

Query1.Params.Value:=0;

son;

Sorgu1.Aç;

son;

prosedür TForm6.Button2Click(Gönderen: TObject);

başlamak

Form11.göster;

Form6.Kapat;

son;

Ünite 7 modül açıklaması

birim Birim7;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

İletişim kutuları, StdCtrls, Grids, DBGrids, DBTables, DB, Mask, DBCtrls, ExtCtrls,

QRCtrls, QuickRpt;

tip

TForm7 = sınıf(TForm)

Etiket1: T Etiketi;

Etiket2: T Etiketi;

DataSource1:TDataSource;

Sorgu1: T Sorgusu;

Düzenleme2: TDüzenle;

Düğme1: T Düğme;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

Etiket3: T Etiketi;

DBGrid1: TDBGrid;

Etiket4: T Etiketi;

Etiket5: T Etiketi;

DBNavigator1: TDBNavigator;

Button2: TButton;

Etiket6: T Etiketi;

Etiket7: T Etiketi;

Not1: TBildiri;

ComboBox1: TComboBox;

Etiket8: T Etiketi;

Button3: TButton;

prosedür Button1Click(Gönderen: TObject);

prosedür Button2Click(Gönderen: TObject);

prosedür Button3Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form7: TForm7;

uygulama

Unit5, Unit11'i kullanır;

($R *.dfm)

prosedür TForm7.Button1Click(Gönderen: TObject);

başlamak

Sorgu1.Kapat;

Query1.Prepared değilse o zaman

Sorgu1.Hazırla;

if uzunluk(edit2.text)<>0 o zaman

Query1.Params.Value:=edit2.Text

Başka

başlamak

Query1.Params.Value:=0;

edit2.Text:="Bir isim girin!";

son;

Sorgu1.Aç;

son;

prosedür TForm7.Button2Click(Gönderen: TObject);

başlamak

form5.göster;

Form7.kapat;

son;

prosedür TForm7.Button3Click(Gönderen: TObject);

başlamak

Form11.göster;

Form7.kapat;

son;

Ünite 8 modül açıklaması

birim Birim8;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

tip

TForm8 = sınıf(TForm)

Etiket4: T Etiketi;

DataSource1:TDataSource;

Sorgu1: T Sorgusu;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

Düğme1: T Düğme;

Not1: TBildiri;

prosedür Button1Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form8: TForm8;

uygulama

Unit11'i kullanır;

($R *.dfm)

prosedür TForm8.Button1Click(Gönderen: TObject);

başlamak

Form11.göster;

Form8.kapat;

son;

Ünite 9 modül açıklaması

birim9;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

Diyaloglar, Izgaralar, DBGridler, DB, DBTables, StdCtrls, Mask, DBCtrls, ExtCtrls;

tip

TForm9 = sınıf(TForm)

Düzenleme1: TDüzenle;

Sorgu1: T Sorgusu;

DataSource1:TDataSource;

DBGrid1: TDBGrid;

Düğme1: T Düğme;

Sorgu2: T Sorgusu;

DataSource2: TDataSource;

Button2: TButton;

DBEdit1: TDBEdit;

DBNavigator1: TDBNavigator;

Etiket1: T Etiketi;

Etiket2: T Etiketi;

Etiket3: T Etiketi;

Ad: TComboBox;

Button3: TButton;

Not1: TBildiri;

Etiket4: T Etiketi;

Button4: TButton;

prosedür Button1Click(Gönderen: TObject);

prosedür Button2Click(Gönderen: TObject);

prosedür Button3Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form9: TForm9;

uygulama

Unit11, Unit13'ü kullanır;

($R *.dfm)

prosedür TForm9.Button1Click(Gönderen: TObject);

başlamak

Sorgu1.Kapat;

Query1.Prepared değilse o zaman

Sorgu1.Hazırla;

if uzunluk(edit1.text)<>0 o zaman

Query1.Params.Value:=edit1.Text

Başka

başlamak

Query1.Params.Value:=0;

edit1.Text:="Mezun adını girin!";

son;

Sorgu1.Aç;

son;

prosedür TForm9.Button2Click(Gönderen: TObject);

başlamak

Sorgu2.Kapat;

Query2.Prepared değilse o zaman

Query2.Prepare;

if uzunluk(edit1.text)<>0 o zaman

Query2.Params.Value:=edit1.Text

Başka

başlamak

Query2.Params.Value:=0;

edit1.Text:="Dönem numarasını girin!";

son;

Sorgu2.Aç;

son;

prosedür TForm9.Button3Click(Gönderen: TObject);

başlamak

Form11.göster;

Form9.kapat;

son;

prosedür TForm9.Button4Click(Gönderen: TObject);

başlamak

Form13.QuickRep1.Önizleme;

son;

Ünite 10 modül açıklaması

birim Birim10;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

İletişim kutuları, ExtCtrls, QuickRpt, StdCtrls, DB, DBTables, Mask, DBCtrls,

Izgaralar, DBGridler;

tip

TForm10 = sınıf(TForm)

Düğme1: T Düğme;

Sorgu1: T Sorgusu;

DataSource1:TDataSource;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

Etiket1: T Etiketi;

Etiket2: T Etiketi;

Düzenleme1: TDüzenle;

Button2: TButton;

Etiket3: T Etiketi;

ComboBox1: TComboBox;

Etiket4: T Etiketi;

Etiket5: T Etiketi;

Not1: TBildiri;

Etiket6: T Etiketi;

Etiket7: T Etiketi;

Button3: TButton;

prosedür Button1Click(Gönderen: TObject);

prosedür Button2Click(Gönderen: TObject);

prosedür Button3Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form10: TForm10;

uygulama

Unit3, Unit7, Unit12, Unit11'i kullanır;

($R *.dfm)

prosedür TForm10.Button1Click(Gönderen: TObject);

başlamak

Form12.QuickRep1.Önizleme;

son;

prosedür TForm10.Button2Click(Gönderen: TObject);

başlamak

Sorgu1.Kapat;

Query1.Prepared değilse o zaman

Sorgu1.Hazırla;

if uzunluk(edit1.text)<>0 o zaman

Query1.Params.Value:=edit1.Text

Başka

başlamak

Query1.Params.Value:=0;

edit1.Text:="Bir isim girin!";

son;

Sorgu1.Aç;

son;

prosedür TForm10.Button3Click(Gönderen: TObject);

başlamak

Form11.göster;

son;

Ünite 11 modül açıklaması

birim Birim11;

arayüz

kullanır

Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar, Grafikler, Kontroller, Formlar,

İletişim kutuları, StdCtrls;

tip

TForm11 = sınıf(TForm)

Düğme1: T Düğme;

Button2: TButton;

Button3: TButton;

Button4: TButton;

Düğme5: T Düğme;

Button6: TButton;

Not1: TBildiri;

Etiket1: T Etiketi;

Etiket2: T Etiketi;

Etiket3: T Etiketi;

Button7: ​​TButton;

Etiket4: T Etiketi;

Etiket5: T Etiketi;

prosedür Button2Click(Gönderen: TObject);

prosedür Button1Click(Gönderen: TObject);

prosedür Button4Click(Gönderen: TObject);

prosedür Button3Click(Gönderen: TObject);

prosedür Button5Click(Gönderen: TObject);

prosedür Button6Click(Gönderen: TObject);

prosedür Button7Click(Gönderen: TObject);

özel

(Özel beyanlar)

halka açık

(Kamu beyanları)

son;

var

Form11: TForm11;

uygulama

benzer belgeler

    Tabloların oluşturulması ve veri tabanı yönetim sistemlerinin tasarımı. Bilgisel tasarım. Veri tabanının ilişkisel şeması Sistemlerin uygulanan değeri: posta işçileri ve tedarik edildikleri mallar hakkında bilgi. Vipiska, mağazada malların varlığı hakkında.

    ders çalışması, bağışlar 01.12.2008

    Ek SQL istekleri için MySQL veritabanı yönetim sisteminin yardımıyla uzmanlar, ürünler, ürün türleri hakkında bilgiler içeren veri tabanı geliştirme. Bir konu galerisinin bilgibilimsel modelinin geliştirilmesi. Veri tabanı alanlarının tablolarının yapısı.

    robotun kontrolü, eklemeler 04/13/2012

    Bir veri tabanı tasarlama, mantıksal bir yapı geliştirme süreci, konu alanının bilgibilimsel modeline benzer. Access DBMS programı ile çalışma, tablo ve alanların özellikleri, tablolar arası bağlantıların oluşturulması; infolojik tasarım.

    kurs çalışması, bağışlar 17/12/2009

    Veri tabanları ve veri tabanı yönetim sistemlerinin temel anlayışı. Microsoft Access temellerinin kullanıldığı veri türleri. DBMS'nin sınıflandırılması ve temel özellikleri. Yayın sonrası veri tabanı. Modern bilgi sistemleri dünyasındaki eğilimler.

    kurs çalışması, bağışlar 28.01.2014

    İnfolojik modelin geliştirilmesinin özellikleri ve ilişkisel veritabanı yapısının oluşturulması. Veritabanı tasarımının temelleri. Belirli bir model hakkında bilgi görüntülemek için tabloların, formların, taleplerin geliştirilmesi. Veri tabanları ve nesnelerle çalışın.

    kurs çalışması, bağışlar 05.11.2011

    Microsoft Office Access veritabanı yönetim sisteminin ek parametreleri ve işlevsel yetenekleri. Ana nesne sınıflarının belirlenmesi. Rozrobka veri tabanı "Dіlovodstvo". Tablolar, formlar, istekler, sayılar ve veri şemalarının oluşturulması.

    özet, eklemeler 05.12.2014

    Veri tabanı sistemlerinin geliştirilmesindeki eğilimler. DBMS'nin Ієєєєєрхіхічні ve мірэжі modelleri. Rozpodіlenoї temel verilerine ana vimogi. Obrobka rozpodіlenih zapіv, birlikte çalışabilirlik. Veri çoğaltma teknolojisi ve Bagatolan mimarisi.

    özet, eklemeler 29.11.2010

    Teorik bilgiler ve temel veri tabanları anlayışı. Veri tabanı yönetim sistemleri: depo, yapı, güvenlik, çalışma modları, nesneler. OpenOffice.Org BASE veri tabanlarıyla çalışma: tablolar, bağlantılar, istek yöneticisinden yardım talepleri oluşturma.

    kurs çalışması, bağışlar 28/04/2011

    Bilgi teknolojilerinin uygulanmasına yönelik başvuruların kabulü, işlenmesi ve şekli için sistem veritabanının tasarlanması; infolojik ve verisel modellerin geliştirilmesi, fiziksel bir modelin uygulanması. Robotların veri tabanı ile görselleştirilmesi için programların oluşturulması.

    mezuniyet çalışması, bağış 25.01.2013

    Bilgi nesnelerinin vizyonu ve yogo bilgi modeli. İlişkisel veritabanının mantıksal yapısı. Veritabanı yönetim sistemi Access'teki Rozrobka tabloları. Access DBMS'de isteklerin, formların ve çağrıların oluşturulması. Rozrobka programı koristuvach.

Turist tablolarından gelen bilgileri ekranda gösterecek ve Turist tablolarının mevcut kaydını görüntüleyecek olan veritabanlarına basit bir ekleme yapalım. Turistler hakkında Microsoft Access veri tabanından bilgiler.

Kimin için boş bir Windows programı oluşturuyoruz. Zovnіshnіy vglyad dovkіllya

Rozrobki küçük olanı işaret etti 39 .

Pirinç. 39. Boş ek

Küçük 39'da, verilere erişmek ve bunları manipüle etmek için bileşenlerin intikamını almanın bir yolu olarak bir grup "Veri" ("Veri") bileşeni görülüyor.

Verilerin veritabanına forma bağlanması, Binding Source bileşeni tarafından oluşturulur. Yogayı forma aktaralım. Yoganın forma yerleştirilmesinden sonra açıklığın ortası saldırgan bir görünümle doldurulur (Fig. 40).

Pirinç. 40. Formdaki Bağlama Kaynağı bileşeni

Bileşen görsel değildir, bu nedenle ek panelde görünür. Bileşenin ana yetkisi, veri kaynağını belirten DataSource'un yetkisidir. İktidarı destekleyenler için boştur, bu yüzden anlamını formüle etmek gerekir. Yetki pozisyonu seçilirken, yetkinin başlangıcı günün başında duyurulur (Şekil 41).

Pirinç. 41. Dzherel danih listesi

Şu anda liste boş olduğundan, ona bağlı yeni bir veri ağacı oluşturmak için Proje Veri Kaynağı Ekle komutunu seçerek yeni bir veri ağacı oluşturmanız gerekir. Bir diyalog olarak görünür (Şek. 42).

Pirinç. 42. Dzherel danih listesi

Bu diyalog gelmek üzere, vibir dzherel danih:

Veritabanı - veri tabanı;

Servis - Servis, bu veri veren bir servistir. En yaygın Web hizmeti;

Nesne - Bir nesneyi seçmek için nesne, onlarla birlikte robotlar için o nesneyi oluşturan verileri oluşturur.

Aynı zamanda “Veritabanı” öğesinin seçilmesi gerekir. Günün seçimine saygıyla bakın (Şek. 43).

Pirinç. 43. Vybіr z'ednannya z danimi

Bu diyaloğun yöntemi, veri tabanı türü, її yerelliği, coristuvachiv'lerin adları, güvenlik ayarları ve diğerleri gibi ADO mekanizmasına görev parametrelerinin tanımlanacağı bir dizi görev oluşturmaktır.

Diyalog listesi, günden önceki tüm kreasyonları içerir. Listede gerekli bir bağlantı yoksa, "Bağlantı oluştur" ("Yeni bağlantı") düğmesini seçin. Yaklaşan diyalog görünene kadar düğmeye basın (küçük 44).

Bu iletişim kutusu için, veri tabanının türünü (verilen Microsoft Access penceresinde), veri tabanının adını (verilen alanda, veri tabanı dosyasında), parolayı ve veri tabanına bağlanmak için parolayı seçin. . "Gelişmiş" düğmesi, ADO mekanizmasının çeşitli ayrıntıları için gerekli olan çok sayıda parametreyi ayarlamanıza olanak tanır. "Bağlantıyı kontrol et" ("Bağlantıyı Test Et") düğmesinin seçimi, girilen parametrelerin doğruluğunu ve bağlantının pratikliğini yeniden gözden geçirmenizi sağlar.

Pirinç. 44. Yeni bir düzenin oluşturulması

Diyaloğun geri kalanı, veri kaynaklarının her biri için gerekli olan veri tabanındaki diğer nesnelerin bir tablosunu seçmektir. Vіkno seçimi küçük 45'i sundu.

Pirinç. 45. Gerekli tabloları seçin

Bu kitapta "Turistler" ve "Turistler hakkında bilgiler" tabloları seçilmiştir. Oskіlki іnshih ob'єktіv, krіm tablosu, veritabanında oluşturuldu, küçük 45 bir tablodan daha fazla görünüyor. Kimin için, dzherel danih'in yaratılması tamamlandı. "Son" düğmesine bastıktan sonra, DataSet bileşeni BindingSource bileşeni tarafından forma atanır.

Artık daha fazla dahil olan verilerin formda görüntülenmesi gerekiyor. Verileri görüntülemenin en basit yolu, Data bileşen grubundan DataGridView bileşenini seçmektir. Görsel bileşen formda şöyle görünür (Şekil 46).

Pirinç. 46. ​​​​DataGridView Bileşeni

Verileri düzenleme yeteneğini gösterdiği için hemen bileşenin ayarını suçlar: "Düzenlemeyi etkinleştir" ("Eklemeyi Etkinleştir"), "Düzenlemeyi etkinleştir" ("Düzenlemeyi Etkinleştir"), "Silmeyi etkinleştir" ("Silmeyi Etkinleştir") ; sütunların sırasını değiştirme yeteneği: "Sütunların sırasını değiştirme yeteneğini etkinleştir" (Sütun Yeniden Sıralamayı Etkinleştir); ayrıca bir kap-babaya sabitlenme imkanı.

Bileşenin verileri anında gösterebilmesi için, gördüğünüz listeden dzherelo verilerini seçmeniz gerekir. İlerleyen diyalog görünmeden önce oluşturulacak listeyi seçin (Şek. 47).

Pirinç. 47. DataGridView için Viber dzherela danih

Bu vipadka'da dzherelo danih olarak “Touristi” masasını seçtik. Bu seçim ekran formunu bu şekilde değiştirir (küçük 48).

Pirinç. 48. DataGridView bileşeni tablo yapısını görüntüler

Küçük olanda, bir BindingSource bileşeninin ve Tourist tablosuyla çalışan TableAdapter bileşeninin daha olduğunu görebilirsiniz. Lütfen tasarım zamanında veya bu tabloların genişletilmesi sürecinde bu tabloların görüntülenmediğini unutmayın.

Şimdi verileri "Turistler hakkında bilgi" bağlantılı tabloda görüntülemek gerekiyor. Hangisi için form üzerine bir DataGridView bileşeni yerleştirilir ve üzerlerine basmak mümkündür (Şekil 49).

Pirinç. 49. Başka bir DataGridView Seçme

Burada, "Turist hakkında bilgi" tablosunun kendisi değil, "Turist" tabloları ile "Turist hakkında bilgi" tablosu arasındaki bağlantı (Bağlayıcı Kaynak) söz konusudur. Bu tür bir seçim, "Turistler" tablosunda aynı satırda göründükleri için "Turistler hakkında bilgi" tablolarından seçimin sessiz satırlardan daha az olmasını garanti eder. Ayrıca, böyle bir seçim, güncellemenin doğruluğunu ve verilerin görünümünü garanti eder. Robot otrimanoї programı biraz 50 gösteriyor.

Pirinç. 50. Robotlar veritabanına ek

Yön tuşları ve eli olmayanların yardımı için para için hareket. Veriler için gezinmeyi basitleştirmek için bir BindingNavigator bileşeni vardır. Yogayı forma koyun (Şek. 51).

Pirinç. 51. Formdaki BindingNavigator bileşeni

Bu bileşen, tablo girişleri arasında gezinmenize, tablo satırları eklemenize ve görmenize olanak tanır. Mozhlivostі zvnіshnіy vyglyad bileşeni ayarlanabilir, oskolki vіn konjugat menüsü ToolStripContainer.

Gezinmenin temel aldığı tabloyu tanımlayan güç, BindingSource'un gücüdür. Gücün anlamını "touristsBindingSource" değerine eşitleyelim. Robotik bileşen şöyle görünür (Şekil 52).

Pirinç. 52. Robotun BindingNavigator bileşeni

DataGridView bileşeninin ortasındaki verileri düzenlemek, manuel olarak olmasa da rasyonel olarak yapılabilir. Zocrema, afların anlamını yeniden düşünmek önemlidir. Bu nedenle, "Turistler" tablosu için, TextBox bileşenlerindeki verileri görüntülemenize ve düzenlemenize izin veren bir ekran formu oluşturulur. Hangisi için, forma Panel tipinde bir kap ve yenisine TextBox tipinin üç bileşenini yerleştirmek mümkündür (Şekil 53).

Pirinç. 53. "Turistler" tablosundaki kayıtları düzenlemek için ekran paneli

Şimdi TextBox bileşenlerini Tourists tablosunun gerekli alanlarına bağlamak gerekiyor. DataBindings - Advanced grubunun gücünü kim kazanırsa kazansın, küçük 54'e bakın.

Pirinç. 54. Güç "DataBindings - Gelişmiş"

Küçük 55'te gösterilen diyaloğun ortaya çıkmasından önce verilen gücün seçimi. Danimarka diyaloğu, yalnızca verileri bağlamanıza değil, aynı zamanda verilerin güncellenmesinin gerçekleştirildiği çerçeveye temel oluşturmanıza da olanak tanır. , ziyaretin saati için verilerin biçimlendirilmesinin yanı sıra.

Binding listesinin üst TextBox bileşeni için "touristsBmdmgSource" adını ve "Priest" ad alanını seçin. TextBox'ın orta ve alt bileşenleri için aynı verileri seçin ve "Ad" ve "Baba Tarafından" alanları uygundur.

Robotlardaki uzantıların parçalanması şuna benzer (Şekil 56).

Pirinç. 55. "DataBindings - Advanced" için iletişim kutusunu açın

Pirinç. 56. Verileri görsel bileşenlere bağlama

Ancak değişiklik yapıldığında form üzerine yeni veriler doldurulur. Veritabanında kokular kaydedilmez ve ikinci bir çağrı ile programlar açıkça günlük olacaktır. Bunun nedeni, verilerin bellekteki tablonun bir kopyası olan bir DataSet nesnesinde yakalanmasıdır. Biz vykonuyutsya bir kopya değildir. Veritabanının görünümünü değiştirmek için Update yöntemini TableAdapter sınıfına eklemek gerekir. Bu şekilde, genişletilmekte olan program için “Güncelle” düğmesini genişletmek ve mevcut program kodunu Click Submit dosyasına yazmak gerekir:

TouristTableAdapteGUpdate(bDTur_firmDataSet); іnformation_about_tourists inTableAdapter.Update(bDTur_firmDataSet);

Bu kod, verilerin umut ettiği "Turistler" ve "Turistler hakkında bilgiler" tablolarındaki bilgileri günceller. Önemli bir şekilde, bu yöntem kalıcıdır ve bu seçenek, tablonun ilk satırını ve satır grubunu değiştirmenize izin verir.

VERİTABANLARI İLE ÇALIŞMA UYGULAMASI GELİŞTİRİLMESİ

roza gaynanova

Genel Eğitim Disiplinleri Bölümü Edebiyatı

Kazan Ulusal Araştırma Teknoloji Üniversitesi

Rusya, Kazan

ÖZ

Makalede, bu erişim yöntemlerinde bulunabilecek veritabanlarına ve program arayüzlerine erişim yöntemleri ele alınmaktadır. Visual C# programlarının Microsoft SQL Server 2012 DBMS sunucusuyla entegrasyonu düşünülüyor.

ÖZ

Dosyalara ve yazılım özelliklerine erişmek için bu yöntemlere dayanan materyaller kullanılmalıdır. Visual C# uygulamalarının Microsoft SQL Server 2012 veritabanı sunucusuyla entegrasyonunu düşünüyoruz. Gelişmekte olanlar gibi "Turist Acenteliği" bilgi sistemi düşünülür.

Anahtar Kelimeler: veri tabanı, SQL Server, program, koristuvachі, kontrol elemanı, zap.

anahtar kelimeler: Veritabanı, SQL Server, uygulama, kullanıcılar, kontrol öğesi, sorgu.

Bilgi sistemi, hedefe ulaşma pahasına bilgiyi kaydetme, işleme ve ayırma konusunda muzaffer olan kaynakların, yöntemlerin ve personelin toplanmasına karşılıklı olarak bağlıdır. Geliştirilmekte olan bilgi sistemi, istemci-sunucu teknolojisinden ilham alacaktır. Bu tür sistemlerde bilgi sunucuda depolanır ve bilgi sisteminin arayüzü yeni bir coristuvachi bilgi sistemi aracılığıyla istemci bilgisayarlarda saklanır, verilere erişim reddedilir.

Bilgi sistemini genişletirken, iki ana görev ihlal edilmelidir:

  • bilgi toplamak için tanınan veri tabanı dağıtım başkanı;
  • müşteri program yöneticisinin grafik arayüzünün geliştirme yöneticisi.

"Seyahat Acentesi" veritabanı Microsoft SQL Server 2012 üzerinde oluşturulmuştur. Veritabanı, bu seyahat acentesinin müşterileri (turistler), talep ettikleri seyahatler ve kupon ödemesinin kaydı hakkında bilgi toplar. Veritabanı tasarımı aşamasında Turistler, Turlar, Fişler, Mevsimler, Ödeme tabloları oluşturulur. Tablolar arasında bağlantılar kurulur.

Seyahat acentesinin asistanı seyahat acentesi memuru, satış müdürü, muhasebeci, kasiyer ve seyahat acentesinde ofis asistanıdır. Ofis yardımcılarından biri sistem yöneticisi olarak atanır. Sadece biz coristuvach kayıtlarının görünümünü biliyoruz. Koristuvachіv DB hakkındaki bilgileri kaldırmak için "Koristuvachi" tablosu tarafından oluşturulan beş ana tablo vardır. Tsya tablosu diğer tablolarla ilişkilidir. Tablonun yapısı: koristuvach kodu, takma ad, yerleşim, giriş ve şifre. Tablo numarasında sadece sistem yöneticisi tarafından değişiklik yapabilirsiniz.

SQL Server güvenlik sistemi iki konsepte dayalı olacaktır: kimlik doğrulama ve yetkilendirme. SQL Server'ın güvenliğinden sorumlu olan sistem yöneticisi, dermatolog için bir oturum açma nesnesi oluşturur. Bu nesne, SQL Server veritabanlarına erişim yoluyla kimlik doğrulaması için tanınan SQL Server anahtar kaydı, parolası ve diğer öznitelikler tarafından korunmalıdır. SQL Server'a bağlandıktan sonra muhabir, fiziksel kayıtların kayıtlı olduğu veritabanlarına erişimi reddedecektir. Belirli bir veri tabanına eğik bir kayıt kaydetmek için, sistem yöneticisi veri tabanı için yeni bir ad oluşturur ve onu aynı eğik kayıtla görüntüler. Sistem yöneticisi coristuvachas'a yeni bir başlangıç ​​sağlar. Satış müdürü, kuponun satışından sonra “Turistler” ve “Seyahat” tablolarında değişiklik yapabilir ve “Turlar” tablosundaki “Ülke_yer” sütununu değiştirebilir. Spivrobitnik seyahat acentesi "Sezon" ve "Turi" tablosunda değişiklik yapabilir. Muhasebeci ve kasiyer - "Ödeme" tablosuna kadar.

Üst düzey yöneticinin gücünü değiştirmek için bu güncellemeyi SQL Server Management Studio'nun ortasında kurabilirsiniz. GRANT ek talimatları için eski durumuna iade edebilirsiniz. Yöneticiye geri ver. Bir sonraki talimat, Koristuvachev Menedger'e "Turistler" tablosunu gözden geçirme, değiştirme, yeni satırlar ekleme ve eski verileri görme hakkı verir.

Seyahat Acentesini KULLAN

SEÇME, GÜNCELLEME, EKLEME, SİLME

AÇIK Turistler

"Turlar" tablosuyla çalışmak için benzer bir talimat oluşturulur. Yöneticiye “Turi” tablosunun birden fazla sütununu değiştirme hakkı vermek için, tablonun adından sonra, değiştirilen Turi sütununun adı (Kilkist_mіsts) belirtilir. Verilen işlemler SEÇ, GÜNCELLE.

Move Data Control Language (DCL) birkaç talimata sahiptir: COMMIT (tamamlandı), ROLLBACK (geri çekme), GRANT (ile), REVOKE (ile). Tüm bu talimatlar, bir vipadkovy chi navmisny poshkodzhennia biçimindeki veri tabanının korunmasından kaynaklanmaktadır. Verilerin temelleri çok zekidir, bunlarda nasıl değişiklik yapılır. Zahistu danih SQL için transfer edilen zamyzhenya işlemleri. Değiştirebilirseniz, koku sadece işlemlerin ortasındadır. Dekіlkoh koristuvachіv bir saat vikoristovuvat veri tabanları tablosunu denediğinizde, rekabetçi bir erişim durumu yaratılır. Program, bir dünyada bir saatlik erişimi yönetme yeteneğinden yoksun, zengin kısa ömürlü bir sistemde güvenli bir sistemde kurulup çalıştığı için, bir saatlik erişimle ilgili sorunlar, görünüşte basit programlara yükleniyor. İşlem çakışması yoktur, bu nedenle koku sırayla sayılır.

Veri tabanının bütünlüğünü korumak için ana araçlardan biri işlemdir. İşlem, veritabanına enjekte edilebilecek tüm SQL ifadelerini kapsar. Bir SQL işlemi iki adımdan biriyle tamamlanır: COMMIT (tamamlandı) veya ROLLBACK (geri alma). ROLLBACK komutu ile bir işlem tamamlandığında bu komutların tümü kontrol edilir ve veri tabanı çıkış istasyonuna döndürülür. Birincil işlem iki moddan birinde yürütülebilir: OKUMA-YAZMA (okuma-yazma) veya SADECE OKUMA (salt okunur). Bir işlem için, yaklaşan izolasyon seviyelerinden birini ayarlayabilirsiniz: SERIAIZABLE (son bekleme), REPEATABLE READ (tekrarlanmak üzere okunur), READ UNCOMMITED (onaylanmamış verileri oku). Kilidin arkasında READ-WRITE ve SERIAIZABLE özellikleri vardır. Kilitlerden kaynaklanan SQL işleminin özellikleri, daha fazla çekirdek için uygun ses.

Program, C# programlama yardımı için Visual Studio 2012'nin ortasında oluşturulmuştur. Yazılım ürününün tasarımı, çekirdek arayüzün geliştirilmesinden başlar.

Bire bir program, robotun ana işlevlerini bir zeyilname ile geri çağırabilir (Şekil 1). vikonannya tsikh işlemleri için vikoristovuetsya menüsü. Menü aşağıdaki öğelerden oluşur: Tablolar, Sor, Ara. Kozhen, podpunkti değildir. Cilt fonksiyonu gözün üst kısmında olacaktır. Programın ana penceresinde MenuStrip elemanı kurulur, menü seçenekleri oluşturulur. PictureBox öğesi forma yerleştirilir. Elemanın alanında bir resim çekilir. Küçük olan tüm bölgeyi işgal etmekten suçlu. SizeMode gücü, görüntü ölçeklemeyi ayarlar. Genişletilmiş listeden güç amacıyla StretchImage seçilir, küçük olanlar nesnenin tüm yüzeyini kaplayacak şekilde ölçeklenir.

Muhabir listesini görüntülemek için, "Seyahat Acentesi" veri tabanı ile çalışma hakkına sahip olmak için, comboBox kontrol elemanı kurulur. comboBox öğesi, dzherel danih'e bağlıdır. V_krivaєtsya vіkno. WOmboBoxmüdür“Veriye bağlı Vikoristovuvaty elemanları” sancak kurulu olan ”, bu sancak kurulduğunda, veri bağlama parametreleri ayarlanır. ComboBox öğesi "Koristuvachi" tablosuna eklenir, "Ekran üyesi" satırında "Prizvische" öğesini seçin. Bir oturum açmak için, textBox2 şifresini girmek için textbox1 şifre elemanı kurulur. textBox1 ve textBox2 öğeleri için, UsesSystemPasworChar yetkisi, metin kutusundaki metnin kilitleme için parola karakterleri olarak ele alınacağını belirtmek için true olarak ayarlanır. İki komut düğmesi "Gönder" ve "Koristuvach'ı Değiştir" kuruludur.

ComboBox öğesini "Koristuvachi" tablosuna bağlarken, formun program koduna Form1_Load alt simgesi eklenir.

özel geçersiz Form1_Load(nesne gönderen, EventArgs e)

this.coristuvachiTableAdapter1.Fill(this.seyahat acentesiDataSet10.coristuvaci);

Menü programına erişilemiyor. Sisteme giriş yapmak için muhatap ile ilgili bilgilerin girilmesi ve "Enter" butonuna basılması gerekmektedir. Form seçildiğinde, "Coristuvachi" tablosunda yer alan coristuvach'ların isimleri comboBox1 kontrol elemanına kaydedilir. Bu örnekleyiciye satırlar eklenir, böylece erişilemeyen menüler, “Change Koristuvach” düğmesi ile açılabilirler ve comboBox1 öğesinde seçilemeyen bir öğe vardır:

menuStrip1.Enabled = yanlış; comboBox1.SelectedIndex = -1;

button2.Enabled=yanlış;

Şekil 1. Programın ana penceresinin görünümü

"Gönder" butonuna basıldığında, "Koristuvach" tablosunda bu rumuz ile koristuvach, kullanıcı adı ve şifrenin doğru girilip girilmediği kontrol edilir. Form sınıfı açıklama alanı, sql komutuna iletilen parametreleri tanımlar. Üç parametre vardır: koristuvach adı, yoga oturum açma ve şifre.

özel dize parfam, parpasw, parlog;

Ad alanına bir satır eklenir:

System.Data.SqlClient kullanarak;

// "Gönder" düğmesine basmak için Obbnik

string sql = "";

string connstr = @"Veri Kaynağı= B302CN-8 \TEST_SQL;Initial Catalog=Seyahat Acentesi;Entegre Güvenlik=Doğru";

SqlDataReader cmOkuyucu;

parfam=comboBox1.Text; parlog=textBox1.Text;

SqlConnection bağlantı=yeni SqlConnection(bağlantı);

sql = "Koristuvach'tan İsim, Giriş, Şifre SEÇİN" +

NEREDE (Gizlilik = @fam) ve (Parola [e-posta korumalı])";

SqlCommand cmdkod = Yeni SqlCommand(sql, conn);

cmdkod.Parameters.Add(new SqlParameter("@fam", SqlDbType.NChar, 25));

cmdkod.Parameters["@fam"].Value = parfam;

cmdkod.Parameters.Add(new SqlParameter("@pasw", SqlDbType.NChar, 10));

cmdkod.Parameters["@pasw"].Value = parpasw;

cmdkod.Parameters.Add(new SqlParameter("@log", SqlDbType.NChar, 15));

cmdkod.Parameters["@log"].Value = parlog;

eğer (!cmReader.Read())

MessageBox.Show("Yanlış şifre!");

cmReader.Close(); bağlantı.Kapat();

menuStrip1.Enabled = true; comboBox1.SelectedIndex = -1;

button1.Enabled=yanlış; button2.Enabled = doğru;

textBox1.Text = ""; textBox1.Enabled = yanlış;

textBox2.Text = ""; textBox2.Enabled = yanlış;

comboBox1.Enabled = yanlış;

cmReader.Close();

private void button2_Click(nesne gönderici, EventArgs e)

menuStrip1.Enabled = yanlış; comboBox1.Enabled = doğru;

textBox1.Enabled = doğru; textBox2.Enabled = doğru;

button1.Enabled = doğru; button2.Enabled=yanlış;

"Gönder" düğmesinin baskısı altındaki robot işçisinin açıklaması.

Connstr satırı, bağlantı satırını değiştirmek içindir. Sql satırına select deyiminden başlanarak oluşturulan isteğin metni yazılır, ardından gelen kelimeler belirtildikten sonra tablodan seçilen alanlar sıralanır.

Derleyici, SQL sunucusuna bağlantıyı güvence altına alan SqlConnection nesnesinin yeni bir örneğini oluşturur. SqlCommand nesnesi, "Koristuvachi" tablosunda ad, kullanıcı adı ve parola ile arama yapmak için komutu üç parametreyle arar. button1_Click örnekleyici, SqlConnection çağrı eğrisini gösterir. Cmdkod nesnesine kaydedilecek SQL komutunun bir örneğini verdi.

cmReader = cmdcode.ExecuteReader();

Sonuç olarak, ExecuteReader yönteminin yürütülmesi, SQL komutunun tüm satırlarının sırayla okunmasına izin veren SqlDataReader sınıfının bir nesnesini oluşturur. Seçim için SqlDataReader yöntemi kullanılır. okuman. "Koristuvachi" tablosu belirli bir takma ad, kullanıcı adı ve parola ile istenen kayda karşı misilleme yapmazsa, cmReader.Read () yöntemi false değerini döndürür. Bu, yanlış bir oturum açma veya parola girildiği anlamına gelir. Bu durumda hatalı veri girişi ile ilgili bildirimler gelir, cmReader ve SqlConnection nesneleri kapatılır. Koristuvach ile ilgili veriler doğru girildiyse, menü ve "Koristuvach değiştir" düğmesi kullanılabilir hale gelir. "Gönder" düğmesi kullanılamaz hale gelir. textBox1 ve textBox2 öğeleri temizlendi ve kullanılamaz. comboBox1 öğesi de erişilemez hale gelir (Şekil 2)

Şekil 2. Oturum açtıktan sonra baş görünümü

Sorgunun tabloları ve sonuçları, DataGridView sorgusunun öğelerinde görüntülenir. Bu elemanların manşet olarak tanınması, veritabanlarının tablolarından önce değil, mevcut veritabanlarının tablolarıyla bağlantı kurulmasıdır. Anlaşılır olması için, "Mevsimler", "Turlar" ve "Turlar", "Ödeme" tablolarında bir haftada iki kez gösterilen yeni girişleri gözden geçirip tanıtacağım. DataGridView aramasının dış görünüm öğesi, "Seyahat Acentesi" veritabanında belirli bir tabloyla görünecektir. Bu blog için "Turistler" tablosu seçildi (Şekil 3). Bağlantı tamamlandıktan sonra (Bitir düğmesi tıklanarak) formda DataSet, BindingSource ve TableAdapter bileşenleri görünür. Bu bileşenler görsel değildir, bu nedenle koku ek panelde gösterilir. DataSet, veri tabanı görüntüsünün intikamını alabilen bir dizi uzmanlık nesnesidir. DataSet ile veri seti arasında arayüz oluşturmak için TableAdapter türünde bir nesne kullanılır. Nesnenin adı - bir bağdaştırıcı, bir dönüştürme aygıtı - doğasını gösterir. TableAdapter, Veri Kümesi ile veritabanında depolanan SQL sunucu tablosu arasında doğrudan veri aktarımı gerçekleştirmek için Doldur ve Güncelle yöntemlerini kullanır. Fiil yöntemi, DataSet'i SQL Server'dan gelen verilerle yükler ve Update yöntemi, SQL Server veritabanını yerel DataSet'ten gelen verilerle günceller. BindingSource bileşeni, denetimlerin görünüm verilerine bağlanmasını kolaylaştıracaktır. BindingSource bileşeninin ana yetkisi, veri kaynağını belirten Veri Kaynağının yetkisidir.

Tablonun veri kaynağına bağlantısı tamamlandıktan sonra Form2_Load alt programı formun program koduna bildirilir.

özel geçersiz Form2_Load(nesne gönderen, EventArgs e)

this.touristTableAdapter.Fill(this.seyahat acentesiDataSet9.Tourist);

Turistler tablosunda saklanan veri formu girildiğinde, Form2 formundaki DataGridView öğesinde görüntülenir. Tablodan önce değişiklik yapabilir ve yeni kayıtlar ekleyebilirsiniz. Değişiklik yaptıktan sonra "Turistleri Kaydet" düğmesine basın. Obbnik, "Turistleri Kaydet" düğmesine basarak podії:

private void button1_Click(nesne gönderici, EventArgs e)

mevsimler ve TableAdapter.Update(seyahat acentesiDataSet9);

MessageBox.Show("Veri Kaydediliyor");

Malyunok 3. "Turistler" tablosunun bulunduğu pencerenin görünümü

Okremomu vіknі üzerinde Kozhen zap vіdobrazhaєtsya. Form1'de "Talep" menüsüne yeni bir öğe eklenir. Sorgunun sonuçlarını görüntülemek için alınacak parametre olmadığından, DataGridView checkout öğesi forma yüklenir ve farklı bir prosedüre veya veri tabanı işlevine bağlanır.

Bu yazıda, veritabanlarıyla çalışan eklentileri genişletmek için bazı yöntemler, bir aracı osib sistemi ile çalışmak için erişimi düzenleme yolları, Visual C# programlarını bir Microsoft SQL Server 2012 DBMS sunucusu ile entegre etmenin yolları tanıtılmıştır. geniş bir olasılık yelpazesi ile. SQL'in ana gücü, veri bilgisinde yatmaktadır. Skilki masada sıraya girmez їх tek bir SELECT deyiminin yardımıyla kazanmak mümkündür. Tam o saatte, koristuvach arayüzünün kısa ömürlü mov SQL є kafa yanlış anlamaları. Prosedürel dilin yardımı için, verilerin tanıtılması ve gözden geçirilmesi için manuel arayüzler oluşturabilirsiniz. SQL'i prosedürel dil ile birleştirmenin en kapsamlı yolu, soyut SQL kodu olarak adlandırılır. SQL ifadesi, prosedürel programın uygun yerine eklenir. Benim programım, yazdığım prosedür ve SQL kodunun bilgi iletilmesinden sorumludur. Temel değişikliklerin kimler için gerekli olduğu. Schob SQL rozpіznav tsі zminnі, seslendirmek için gereklidir. Sınıf formunun tanımının kapsamını program kodunun tanımına değiştirmek. Kod için, SqlConnection nesnesinin yeni bir örneği, SQL sunucusuna olan bağlantıyı güvence altına alır. SqlCommand nesnesi, SQL komutlarının işlenmesini sağlar.

Literatür listesi:

  1. Allen Taylor. Çaydanlıklar için SQL, 8. baskı: Per. İngilizceden - M.: TOV “I.D. Williams”, 2014. – 416 s.
  2. Gainanova R.Ş. MS SQL Server 2012 veritabanlarına sahip robotlar için yazılım geliştirme // Günümüzün temel ve uygulamalı bilimleri: XI uluslararası pratik konferansının bildirileri (10-11 Nisan 2017 Noth Charleston, ABD), cilt 3 - s. 34-41.
  3. Frolov A.V., Frolov G.V. C# programlarının görsel tasarımı. - E.: KUDRITS-OBRAZ, 2003, - 512s.
kapatırsa