• Veritabanları oluşturmak için yazılım araçlarına genel bakış. Uygulama ve Veritabanı Geliştirme: Ortak Nokta

    Uygulamalı Bilişim Bölümü

    açıklayıcı not dönem ödevi

    disipline göre:

    "Veri tabanı"

    "Gelişim Veri tabanı ve müşteri uygulaması

    Kaluga 2009


    giriiş

    1. Sorunun ifadesi

    2. Veritabanını tasarlayın, oluşturun ve yönetin

    3.Teknolojik kullanım kılavuzu

    Çözüm

    Kaynakça


    giriiş

    Ders çalışmamın amacı, bir veritabanı oluşturmak ve SQL dilinin temel öğelerini incelemek ve basit bir veritabanı oluşturma konusunda pratik beceriler kazanmaktır.

    Ders çalışmasının alaka düzeyi, veritabanları oluşturma ve tasarlama ihtiyacı olarak tanımlanır.

    Günümüz dünyasında çok çeşitli veritabanları bulunmaktadır. Bu olmadan bilgi teknolojisi çağı var olamaz ve aşamalı olarak gelişemez. Modern dünya yapılandırılmış ve sıralanmış bilgiler olmadan yapamazsınız, veritabanları bunu uygulamanıza izin verir. Veritabanları, bankacılık, market alışverişi veya ev harcamalarının takibi gibi insan faaliyetinin birçok alanı için gereklidir.

    Veritabanları her fırsatta bulunur. Hemen hemen her sistem, iyi bilinen bir veritabanıdır, örneğin, iyi bilinen "Danışman +" veya Vergi ve Harçlar Bakanlığı'ndaki tek bir verginin muhasebesi.

    Veritabanım, güvenilir ve güncel bilgiler elde etmek için işlemleri otomatikleştirmek üzere tasarlanmıştır.

    Ders çalışmasının amaçları aşağıdaki gibidir:

    Veritabanını uygulayın;

    Kullanıcı arabirimini uygulayın;

    Raporları derleyin;

    Şu anda birçok modern Diller programlama dilleri, veritabanı programlamayı destekler, bu tür dillerin yardımıyla, ister basit ister süper karmaşık olsun, gerekli veritabanını oluşturabilirsiniz.


    1. Sorunun ifadesi

    Geliştirilen kavun veri tabanı birkaç “seviyeden” oluşur. En soyut “katman” veri şemasıdır. Bu seviyede, tablolar arasındaki ilişkiler doğrudan görüntülenir.

    Bu ders çalışmasında, görevler şunlardır:

    Bir bilgisayarda fiziksel bir model oluşturmak (Erwin kullanarak);

    Bağlantıların tanımı, veri türleri;

    Uygun bir kullanıcı arayüzünün geliştirilmesi;

    İsteklerin, formların oluşturulması;

    Raporların oluşturulması (istek üzerine);

    Ana düğme formunun oluşturulması;

    Kurs çalışmamda, çalışan muhasebe sisteminin bir parçası oluşturuldu, bununla bağlantılı olarak muhasebe aşağıdaki işlemlerden oluşuyor:

    Ders çalışmamda, mal muhasebesi sisteminin bir parçası oluşturuldu, bununla bağlantılı olarak muhasebe aşağıdaki işlemlerden oluşuyor:

    Malların muhasebesi;

    Malların gruplara göre muhasebeleştirilmesi;

    Malların çeklerle muhasebeleştirilmesi;

    Bu sistem, bu işlemleri otomatikleştirmek, güvenilir ve zamanında bilgi elde etmek, çıktı belgeleri oluşturmak için tasarlanmıştır.

    2. Veritabanı tasarlama, oluşturma ve yönetme

    Veritabanında 4 adet tablo bulunmaktadır.

    1) Tablo Ürün grubu, Ürün grubu numarası ve Ürün grubu adı olmak üzere 2 sütun içerir.


    2) Ürün tablosu, Ürün_numarası, Ürün adı, Fiyat, Ürün grup numarası olmak üzere 4 sütun içerir.


    3) Kontrol tablosu, 2 sütun içerir: Kontrol_numarası, Tarih.

    4) Girişe göre Ürünler Tablosu, 3 sütun içerir: Ürün numarası, Giriş numarası. Miktar.

    Veritabanıyla çalışmanın rahatlığı için çeşitli formlar oluşturulmuştur.

    Formların amacı çok çeşitlidir, formlar sorguları, tabloları, tablolara yazmanın rahatlığını vb. görüntülemek için kullanılabilir.

    Talepler için formlar.

    1) Soru Formu 1 (Bkz. Şekil 1)

    Malları belirli bir çek numarası ile geri çekmek gerekir. Bu form sunar Kullanıcı dostu arayüz bilgileri girmek ve rahat görüntüleme rapor.


    Pirinç. 1 İstek formu1

    Örneğin. Metin Kutusu - 7'ye kontrol numarasını girin ve - Raporu görüntüle düğmesine tıklayın (Bkz. Şekil 2)


    Pirinç. 2 Rapor işlemi1

    2) İstek formu2

    Malları tarihe göre göstermek gereklidir. Bu form, bilgileri girmek için uygun bir arayüzün yanı sıra raporun rahat görüntülenmesini sağlar.


    Pirinç. 3 İstek formu2

    Örneğin. Metin Kutusuna tarihi girin - 11/12/08 ve - Raporu görüntüle düğmesine tıklayın. (Bkz. Şekil 4)


    Pirinç. 4 Sorgu işlemi2


    Tablolara veri girişinin organizasyonu uygun formlar aracılığıyla gerçekleşir. Kolaylık sağlamak için ana düğme formu oluşturuldu. (Bkz. Şekil 5)

    Bu form şöyle görünür:


    Pirinç. 5 Düğme formu

    İşte ana menü. Butonların her biri raporlara erişim sağlar, basıldığında raporları çok basit bir şekilde görüntüleyebilirsiniz.

    Tablolar alt menüsü, bilgileri uygun bir biçimde girmek için tablolar sağlar.

    Veri Şeması.(Bkz. Şekil 6


    Pirinç. 6 Veri şeması

    Veri şeması Erwin programı kullanılarak oluşturulmuştur.

    3. Teknolojik kullanım kılavuzu

    Örneğin:

    - Yeni bir ürün tanıtıyoruz.

    Yeni bir ürünü tanıtmak için aşağıdaki adımları gerçekleştirmelisiniz (bkz. Şekil 7):

    Ana buton formuna gidin -> tablo butonuna tıklayın -> ürün butonuna tıklayın -> ürünün adını, fiyatını girin ve hangi ürün grubuna ait olduğunu seçin.


    Pirinç. 7 Yeni bir çalışanın girilmesi

    Ürün grupları listesinde ise istenen grup yoksa manuel olarak giriyoruz

    Ürün grubu -> düğmesine basın ve yeni bir ürün grubu girin. (Bkz. Şekil 8)



    Şekil 8. Yeni bir ürün grubu oluşturma.


    -> ayrıca bu ürünün geçtiği fiş numarasını da seçer -> bu ürünün miktarını girin. (Bkz. Şekil 10)



    Çözüm

    Ders çalışmasının amaçları eksiksiz olarak yerine getirilir. Malları hesaba katmak için bir veri tabanı geliştirildi. Kurs çalışması MS Access'te oluşturuldu. Veri şeması (fiziksel model) Erwin programında oluşturulmuştur. Güvenli ve kolay bilgi girişi için kullanıcı dostu bir kullanıcı arayüzü de uygulanmaktadır. Bu çalışmada, ders çalışmasının başında belirlenen görevler de tamamlanır, tüm problemler çözülür ve bunların çözümü doğrudan ders çalışmasında görüntülenebilir.

    Bu dönem ödevini geliştirdikten sonra, Microsoft Access DBMS'nin güçlü ve kullanışlı araç veritabanları oluşturmak için. Etkileşimli olarak tablolar, formlar, sorgular, raporlar oluşturmamı sağlayan grafiksel bir çoklu pencere arayüzü. Veritabanının oluşturulması ve bakımı sırasında işi otomatikleştiren özel cihazlar (Sihirbazlar ve Oluşturucular, Asistanlar vb.) tüm süreci önemli ölçüde basitleştirir ve programın herkes tarafından erişilebilir olmasını sağlar.

    Mesleğimde bu tür becerilerin, en temel düzeyde bile olsa, zamanla bana çok faydalı olacağına inanıyorum.

    MS Access'te çalışmak, formlar oluşturmak, yardımla çalışmak, veritabanları ve özellikle MS Access ile ilgili kitapları görüntülemek ve çalışmak da çok ilginç ve kullanışlıydı. Kuşkusuz, Erwin gibi veritabanlarının oluşturulmasını hızlı ve daha iyi anlamaya yardımcı olan harika bir programla tanışmayı başardım. Tabii ki, modern veritabanları her geçen gün daha da büyüyor, kullanıcıların ihtiyaçlarını karşılıyor, bu nedenle, görev bu tür veritabanlarının nasıl oluşturulacağı, nasıl yönetileceği ortaya çıkıyor ... Bu dönem ödevini okuyup analiz ettikten sonra, şüphesiz veritabanları verileri oluşturmada temel beceriler edinin.

    Kaynakça

    1. Microsoft Access 2000. Adım adım: Prakt. harçlık / Per. İngilizceden.

    M.: ECOM Yayınevi, 2002. - 352 s.: resim.

    2. Öğretici: Office Access 2003. - St. Petersburg: Peter, 2004. - 464 s.: hasta.

    3. Veritabanları. Tasarım, uygulama ve destek. teori ve

    pratik. 3. baskı. : Per. İngilizceden. - M.: "William" yayınevi,

    2003. - 1440 s. : hasta. - Paral. baştankara. İngilizce

    Delphi, Delphi programlama dilini (versiyon 7'den başlayarak, ortamdaki dilin adı Delphi, eski adı Object Pascal) kullanan, Borland tarafından geliştirilen ve orijinal olarak şu anki adını aldığı Borland Delphi paketinde uygulanan bir geliştirme ortamıdır. 2003 yılında Object Pascal, esasen nesne yönelimli uzantılara sahip Pascal dilinin halefidir.

    Delphi, veritabanı uygulamaları oluşturmak için en iyi araçtır. ideal çünkü korurken geliştirme süresini önemli ölçüde azaltabilen görsel geliştirme teknolojisini destekler. iyi kalite ve yazılım ürününün güvenilirliği. Dilin yapısındaki Delphi, gizli hatalardan kaçınmanıza izin verir.

    Delphi 7 ailesinin özellikleri:

    *E-ticaret uygulamalarını ve Web hizmetlerini geliştirmek ve dağıtmak için simülasyon araçlarını entegre eden hızlı bir uygulama geliştirme ortamı.

    * Tek bir geliştirme ortamında Win32 (Delphi ve C/C++) ve .NET (Delphi ve C#) için programlama dilleri desteği;

    *Hem geleneksel Windows uygulama geliştiricileri hem de Java geliştiricileri için, kullanılan araç setinden vazgeçmeden, becerileri korurken ve benzer programlama kavramlarıyla .NET uygulamaları geliştirme yeteneği;

    * Geliştirme ortamındaki yeni kod şablonları sistemi ve diğer yenilikler, kaynak koduyla çalışmayı niteliksel olarak iyileştirir ve geliştirme verimliliğini artırır;

    Microsoft SQL Server 2000, hızla ölçeklenebilir e-ticaret, iş uygulamaları ve veri ambarı çözümleri oluşturmak için eksiksiz bir veritabanı ve veri analitiği teklifidir.

    En yüksek talepleri karşılamak için ölçeklenebilirlik sağlarken, bu çözümler için pazara sunma süresini önemli ölçüde azaltır.

    Delphi paketi, Borland'ın Pascal derleyicileri serisinin devamıdır. Pascal çok basit bir dildir ve güçlü veri yazma, hataları erkenden tespit etmeye yardımcı olur ve hızlı bir şekilde güvenilir ve verimli programlar oluşturmanıza olanak tanır.

    Veritabanı uygulama geliştirme, Delphi programlama ortamının en çok istenen özelliklerinden biridir. Veritabanlarıyla çalışırken Delphi'nin gücü ve esnekliği, düşük seviyeli bir çekirdeğe - Borland Database Engine (BDE) dayanmaktadır. ile arayüzü Uygulama programları Entegre Veritabanı Uygulama Programlama Arayüzü (IDAPI) olarak adlandırılır. BDE, SQL veritabanı sunucularında kullanılan hem geleneksel kayda yönelik (gezinme) yaklaşımı hem de kümeye yönelik yaklaşımı kullanarak verilere erişmenizi sağlar.

    Nesne kitaplığı, istemci-sunucu mimarisine sahip DBMS için uygulamaların geliştirilmesini büyük ölçüde basitleştiren bir dizi görsel bileşen içerir. Nesneler, alt düzey olan Borland Database Engine'i kapsar.

    Verilere erişimden sorumlu özel bileşen grupları ve verileri görüntüleyen bileşenler vardır. Veri erişimi bileşenleri, veritabanına bağlanmanıza, seçim yapmanıza, verileri kopyalamanıza vb. izin verir.

    Veri görselleştirme bileşenleri, verileri tablolar, alanlar, listeler şeklinde görüntülemenizi sağlar. Görüntülenen veriler metinsel, grafiksel veya serbest biçimli olabilir.

    Tablolar veritabanında saklanır. Bazı DBMS'ler bir veritabanını çoklu olarak depolar bireysel dosyalar, tablolardır (temelde tümü yerel DBMS), diğerleri ise tüm tabloları ve dizinleri (InterBase) içeren tek bir dosyadan oluşur.

    Delphi'deki veritabanı nesneleri SQL tabanlıdır ve Borland Veritabanı Motorunun tüm gücünü içerir. Delphi ayrıca Borland SQL Link'i içerir, bu nedenle Oracle, Sybase, Informix ve InterBase DBMS'ye erişim oldukça verimlidir. Ek olarak Delphi, herhangi bir harici SQL sunucusuna genişletilebilen çevrimdışı uygulamalar geliştirebilmeniz için yerel bir Interbase sunucusu içerir.

    Uygulamada ölçeklenebilirlik - aynı uygulama hem yerel hem de daha ciddi istemci-sunucu seçenekleri için kullanılabilir.

    Delphi'nin kendi veritabanı tablo formatı olmamasına rağmen, yine de güçlü bir destek sağlar. Büyük bir sayıçeşitli DBMS - hem yerel (örneğin, dBase veya Paradox) hem de endüstriyel (örneğin, Sybase veya InterBase).

    Uygulama geliştirmedeki en yaygın senaryolardan biri, veri tabanı formda Windows Formları. Bu nedenle, önerilen veri kümeleriyle çalışırken kullanılan süreçleri dikkate alarak Microsoft ( pirinç. 5.6.1-2 ), ve sunulan görevlerin eğitici olduğu gerçeğini dikkate alarak, örneklerde aşağıdaki süreçleri ele alacağız:

      veritabanı geliştirme.

      Windows uygulama geliştirme:

        proje oluşturma;

        bir kullanıcı arayüzü oluşturmak;

        veritabanı veri bağlantısı oluşturma ve bunu bir form üzerinde görüntüleme

        uygulamada verileri düzenleme, kontrol etme ve kaydetme;

        uygulama kodunun geliştirilmesi.

      Uygulama yürütme.

      Uygulama sonuçlarının analizi.

    5.6.3.1. "DataBase1" veritabanıyla çalışmak için "Atlamalar" projesi oluşturmaya bir örnek

    Egzersiz yapmak:

    VeritabanınaCisim "Veri tabanı 1” belirli günlerde, öğrencilerin üç konunun her birinde kaçırdıkları saat sayısı hakkında bilgi alınırken, aşağıdaki bilgiler mevcuttur:

      doğrulama tarihi;

      çalışma Grubu;

      öğrencinin soyadı;

      Doğum yılı;

      bilgisayar biliminde kaçırılan saat sayısı;

      kaçırılan matematik saatleri

      fizikte kaçırılan saatlerin sayısı.

    Bu veri tabanındaki bilgileri kullanarak hangi gün ve hangi konuda en çok boşluk olduğunu hesaplayan (bu kadar çok geçişi olan öğrencinin adını da belirtin) "Pasajlar" adlı bir proje oluşturmak gerekir. Böyle birkaç gün varsa, hepsini listeleyin.

      "DataBase1" veritabanı oluşturma

    adlı bir tablo oluşturmak için PropClockÖğrenciŞekil l'de gösterilen forma sahip olacak yapısını oluşturmak gereklidir. 5.6.3-1.

    Bir tablonun verilerle doldurulması, Veri Sayfası görünümünde yapılabilir. masayı doldurduktan sonra PropClockÖğrenciŞekil 5.6.3-2'de gösterilen formu alır.

      Access veritabanı "DataBase1" ile çalışmak için bir Windows uygulamasının geliştirilmesi

        Yeni bir proje oluşturma.

    adlı bir proje oluşturun. Pas1.

        Kullanıcı arayüzünün oluşturulması.

    Şekil 2'de gösterilen tek bir formdan bir kullanıcı arayüzü oluşturun. 5.6.3-3.

    Tablo şablonunun PropClockÖğrenci formda yalnızca sonra görüntülenir uygulama veri kümesini DataBase1 veritabanına bağlama.

        Uygulama veri setinin Access veri tabanı DataBase1'e bağlanması ve form üzerinde görüntülenmesi.

    Uygulama Bağlantı Prosedürü VS veritabanındaki verilere VTYS Erişimi kullanılarak basitleştirilebilir Veri Kaynağı Yapılandırma Sihirbazları. İşin tamamlanmasından sonra Ustalar penceredeki veriler Veri kaynakları formlara sürüklemek için kullanılabilir hale gelir.

    Kullanarak bir veri seti oluşturmak için Veri Kaynağı Kurulum Sihirbazları

    gerekli:

      elemanda Veri ana menü seçme komutu Yeni bir veri kaynağı ekleyin veya Veri kaynaklarını göster.

    Sonuç olarak, geliştirme ortamında bir pencere görünecektir. Kaynak Kurulum Sihirbazıveri(R dır-dir. 5.6.3-4) .

    yeni bir özellik Visual Studio IDE'si için programı otomatik olarak hazırlar. Visual Basic veritabanından bilgi almak için. Usta bağlanılacak veritabanı türünü ister ( yerel veya uzak veritabanı ,internet servisi veya veri nesnesi, oluşturduğunuz), bir veri bağlantısı kurar ve ardından seçilen tabloları ve veritabanı alanlarını depolayan programda bir veri kümesi oluşturur. Sonuç, sihirbazın bir pencere açmasıdır. Veri kaynağı ve onu programda kullanılan her bir veritabanı nesnesinin görsel temsiliyle doldurur.

      seçimden sonra Uygulama veri kaynağıVeri tabanı ve bir tuşa basarak Daha öteUsta istekler Veritabanı bağlantısı seçme(Şekil 5.6.3-5).

      Pencerede Veri kaynağı seçme(Şekil 5.6.3-6) seçin veri tabanı, veri kaynağı olan - Veritabanı dosyasına erişim, ve ardından düğmesine tıklayın Daha öte.

    Sihirbaz formu görüntüler - bağlantı ekleme adında bir dizi oluşturarak bir veritabanı bağlantısı kurmaya yardımcı olur. bağlantı dizisi (Şekil 5.6.3-7).

      Bağlantı dizesi gerekli bilgileri içerir VS bir veritabanı dosyasından bilgi açmak ve ayıklamak için. Yol içerir ve dosya adı kullanıcı adı ve şifre gibi ek verilerin yanı sıra. Bu nedenle, bir pencerede bir bağlantı dizgisi ile çalışmak Veri Kaynağı Yapılandırma Sihirbazıçok dikkatli bir şekilde yapılır ve kaynak dosyaları bir yerden başka bir yere kopyalarken yetkisiz erişime karşı korumaya özen göstermelisiniz.

    Böylece, pencerede bağlantı ekleme veritabanları seçimi ErişimVeri tabanıdosya.

      Veritabanı dosyasının yolunu girin Veri tabanı1.mdb veya düğmeyi tıklayın Gözden geçirmek bu dosyayı bulmak için , ve ardından düğmesine basın TAMAM.

      İletişim kutusu yeniden görünecektir bağlantı ekleme(bağlantı ekle) Veritabanına giden yolu içeren bir.

      butona tıklayın Bağlantıyı kontrol et. görsel stüdyo sihirbaz tarafından oluşturulan bağlantı dizesini kullanarak belirtilen veritabanı dosyasını açmaya çalışacak.

      butona tıklayın TAMAM mesaj kutusunu kapatmak için ve ardından düğmesine tıklayın TAMAM iletişim kutusunu kapatmak için Bağlantı Ekleme.görsel stüdyo pencereyi tekrar gösterecek Veri Kaynağı Yapılandırma Sihirbazı ( pirinç. 5.6.3-8)

      Tamamlanan bağlantı dizesini görüntülemek için iletişim kutusunda öğenin yanındaki artı işaretini (+) tıklayın. Bağlantı dizisi. Sihirbaz sayfası, şek. 5.6.3-9.

    Bağlantı dizesi, sağlayıcıyı belirtir.

    Usta yeni bir yerel veri tabanının seçildiğini belirten bir uyarı gösterecektir (Şekil 5.6.3-10)

    Pirinç. 5.6.3-10

    Veritabanının ek bir kopyasını oluşturmaktan kaçınmak için düğmesine tıklayın. HAYIR, ve ardından düğmeyi açın Daha öte.

    nerede Veri Kaynağı Yapılandırma Sihirbazı kaydetme ve bağlantı dizesi hakkında böyle bir soru soracaktır.

    Varsayılan olarak, bağlantı dizesini kaydetme seçeneği seçilidir ve bu örnekte dizenin adı olarak " DataBase1ConnectionString". Genellikle bu satırı, pencerede bulunan varsayılan uygulama yapılandırma dosyasına kaydetmeniz gerekir. Çözüm Gezgini,çünkü bu durumda, veritabanının konumu değiştirilirken, bu satır program kodunda aranmadan ve ardından uygulamanın yeniden derlenmesinden kolayca düzenlenebilir (Şekil 5.6.3-11).

    Ardından, pencerede gösterildiği gibi, bu projede kullanılacak veritabanı nesnelerinin bir alt kümesini seçmeniz istenecektir. Veri Kaynağı Yapılandırma SihirbazıŞek. 5.6.3-12.

    Pirinç. 5.6.3-12

    görsel stüdyo yalnızca veritabanının tamamını değil, aynı zamanda bir kısmını veya birkaç farklı veritabanının kombinasyonunu da kullanmanıza olanak tanır - bu, verilere dayalı uygulamalar oluştururken kullanışlıdır.

    Görevimiz için tüm tabloları seçmeliyiz (ilgili onay kutularını kutuya koymalıyız).

      Uygulamaya işlevsellik eklemek, yani veritabanı tablolarını form üzerinde görüntülemek için bunları pencereden sürüklemeniz gerekir. Veri kaynağı forma

    Öğeleri bir pencereden sürüklemek Veri kaynakları otomatik olarak forma ekler istenen kod veri kümesini Form1_Load() olay işleyicisine doldurmak için (Şekil 5.6.3-13).

    Pirinç. 5.6.3-13

        Uygulamada verileri düzenleme, kontrol etme ve kaydetme

    Bir veri kümesi doldurulduktan sonra, veri kaynağına, başka bir işleme veya uygulamaya geri gönderilmeden önce verilerin eklenmesi, düzenlenmesi veya silinmesi yaygın bir uygulamadır. Veri kümesindeki her kayıt bir DataRow nesnesi tarafından temsil edildiğinden, veri kümesindeki değişiklikler tek tek satırlar üzerinde çalışılarak yapılır.

    İÇİNDE Windows Formları veri bağlama mimarisi, veriye bağlı kontrollerden veri kümesine değişiklik göndermekle ilgilenir, bu nedenle veri kümesini kendi kodunuzla açıkça güncellemeniz gerekmez. Veri kümeleri, veri kaynağındaki orijinal kayıtları bulmak için birden fazla veri satırı sürümünü destekler. Veri kaynağını güncellemeden önce tek tek satırları doğrulamanız gerekebilir.

    Bir DataSet'teki verileri değiştirmek, veri kümesini oluşturan tek tek nesnelerdeki gerçek verileri yönetme işlemidir. Veri tablolarındaki verileri değiştirmek, herhangi bir veritabanındaki bir tablodaki verileri değiştirmeye benzer; işlem, tablo girişlerinin eklenmesini, güncellenmesini ve silinmesini içerebilir.

    Gerçek verileri değiştirmeye ek olarak, tek satırlar, belirli satır sürümleri (orijinal ve önerilen), yalnızca değişen satırlar ve hata içeren satırlar gibi belirli veri satırlarını döndürmek için DataTable'ı sorgulayabilirsiniz.

        Uygulama kodu geliştirme

    Şekil 1'de gösterilen kod, ilk formla ilişkilendirilecektir. 5.6.3-14.

  • Android geliştirme
    • öğretici
    • kurtarma Modu

    Herkese selam! Benim adım Oleg ve ben amatör bir Android programcısıyım. sevgili çünkü içinde şu an Tamamen farklı bir yönde programlama yaparak para kazanıyorum. Ve bu boş zamanlarımı adadığım bir hobi. Ne yazık ki Android programcılarını bilmiyorum ve tüm temel bilgilerimi ya kitaplardan ya da internetten alıyorum. İnternette okuduğum tüm kitap ve makalelerde, bir uygulama için veritabanı oluşturmak için çok az yer ayrılmıştır ve aslında tüm açıklama, mirasçı olan bir sınıf oluşturmaktır. SQLiteOpenHelper ve ardından SQL kodunun Java koduna dahil edilmesi. Yeterince okunamayan bir kod aldığımızı düşünmezsek (ve uygulamamızda 10'dan fazla tablo görünürse, o zaman tablolar arasındaki tüm bu ilişkileri hatırlamak hala cehennemdir), o zaman prensip olarak yaşayabilirsiniz, ancak bir şekilde yapmazsınız hiç istemiyorum.
    En önemli şeyi söylemeyi unuttum, bu benim kalem sınavım diyebiliriz. Ve böylece gittik.

    Ebedi soru hakkında: neden?

    Neden Android programlama ile ilgili kitaplar ve makaleler, veritabanı mimarisini tasarlamak için araçları ve veritabanlarıyla yaratılma aşamasında çalışmak için herhangi bir modeli açıklamıyor, dürüst olmak gerekirse bilmiyorum. Görünüşe göre bir kitaba birkaç sayfa eklemek veya ayrı bir makale yazmak (şu anda yaptığım gibi) armut bombardımanı kadar kolay - ama hayır. Bu yazıda, işimde kullandığım araçları kısaca gözden geçireceğim ve benim açımdan daha okunaklı ve kullanışlı görünen veritabanının ilk oluşturulmasından sorumlu olan kod hakkında daha ayrıntılı olarak konuşacağım.


    Uygulamamızın 5'ten fazla tablosu varsa, veritabanı mimarisinin görsel tasarımı için bazı araçlar kullanmak fena olmaz. Bu benim için bir hobi olduğu için kesinlikle kullanıyorum. ücretsiz araç Oracle SQL Developer Data Modeler olarak adlandırılır (indirebilirsiniz).

    Bu program görsel olarak tablolar çizmenize ve bunlarla ilişkiler kurmanıza olanak tanır. Bu tasarım yaklaşımıyla birçok veritabanı mimarisi tasarım hatalarından kaçınılabilir (bunu size zaten profesyonel bir veritabanı programcısı olarak söylüyorum). Şuna benzer:

    Mimarinin kendisini tasarladıktan sonra, tablolar oluşturmak için sql kodu oluşturmaktan oluşan daha sıkıcı kısma geçiyoruz. Bu soruna yardımcı olması için zaten SQLiteStudio adlı bir araç kullanıyorum (buradan indirilebilir).

    Bu araç, SQL Naviagator, Toad vb. Gibi iyi bilinen ürünlerin bir analogudur. Ancak adından da anlaşılacağı gibi SQLite ile çalışacak şekilde tasarlanmıştır. Görsel olarak bir veritabanı oluşturmanıza ve oluşturulan tabloların DDL kodunu almanıza olanak tanır. Bu arada, dilerseniz uygulamanızda da kullanabileceğiniz görünümler (View) oluşturmanıza da olanak tanır. nasıl bilmiyorum doğru yaklaşım görünümleri android programlarında kullanıyorum, ancak uygulamalarımdan birinde onları kullandım.

    Aslında, artık herhangi bir üçüncü taraf aracı kullanmıyorum ve ardından sihir Android Studio ile başlıyor. Yukarıda yazdığım gibi, SQL kodunu Java koduna gömmeye başlarsak, çıktıda yetersiz okunabilir ve dolayısıyla zayıf genişletilebilir kod elde ederiz. Bu nedenle, içindeki tüm SQL deyimlerini çıkarıyorum. harici dosyalar dizinimde olanlar varlıklar. Android Studio'da şuna benzer:


    db ve veri dizinleri hakkında

    Bir dizinin içinde varlıklar iki dizin oluşturdum db_01 Ve veri_01. Dizin adlarındaki sayılar, çalıştığım veritabanımın sürüm numarasına karşılık gelir. dizinde db Bende tablolar oluşturma SQL komut dosyaları saklanır. Ve dizinde veri tabloların ilk doldurulması için gerekli veriler saklanır.


    Şimdi benim içindeki koda bakalım DBYardımcısı projelerimde kullandığım İlk olarak, sınıf değişkenleri ve yapıcı (burada sürpriz yok):

    Özel statik nihai Dize TAG = "RoadMap4.DBHelper"; Dizi mDb = "db_"; Dizgi mData = "veri_"; Bağlam mBağlam; int mVersiyon; public DBHelper(Bağlam bağlamı, Dize adı, int sürümü) ( super(bağlam, ad, boş, sürüm); mContext = bağlam; mVersion = sürüm; )
    Şimdi yöntem onCreate ve işte burada işler ilginçleşiyor:

    @Override public void onCreate(SQLiteDatabase db) ( ArrayList tablolar = getSQLTables(); for (Dize tablosu: tablolar)( db.execSQL(tablo); ) ArrayList > dataSQL = getSQLData(); için(HashMap hm: dataSQL)( for (String tablosu: hm.keySet())( Log.d(TAG, "insert into " + table + " " + hm.get(table)); long rowId = db.insert(tablo, null, hm.get(tablo)); ) )) )
    Mantıksal olarak, iki döngüye ayrılmıştır, ilk döngüde bir veritabanı oluşturmak için SQL talimatlarının bir listesini alıyorum ve sonra bunları yürütüyorum, ikinci döngüde zaten önceden oluşturulmuş tabloları ilk verilerle dolduruyorum. Öyleyse, birinci adım:

    Özel Dizi Listesi getSQLTables() ( ArrayList tablolar = yeni ArrayList<>(); Dizi Listesi dosyalar = yeni ArrayList<>(); AssetManager assetManager = mContext.getAssets(); Dizi dizini = mDb + mVersion; try ( String listFiles = assetManager.list(dir); for (Dize dosyası: listFiles)( files.add(file); ) Collections.sort(files, new QueryFilesComparator()); BufferedReader bufferedReader; String sorgusu; String satırı; for (Dize dosyası: dosyalar)( Log.d(TAG, "db dosyası " + dosya); bufferedReader = new BufferedReader(new InputStreamReader(assetManager.open(dir + "/" + file))); query = ""; while ((line = bufferedReader.readLine()) != null)( query = query + line; ) bufferedReader.close(); tables.add(query); ) ) catch (IOException e) ( e.printStackTrace(); ) dönüş tabloları; )
    Burada her şey oldukça basit, sadece dosyaların içeriğini okuyoruz ve her dosyanın içeriğini bir dizi öğesinde birleştiriyoruz. Lütfen dosya listesini sıraladığımı unutmayın, çünkü tablolar yabancı anahtarlara sahip olabilir, bu da tabloların belirli bir sırada oluşturulması gerektiği anlamına gelir. Dosya adında numaralandırma kullanıyorum ve onun yardımıyla sıralıyorum.

    Özel sınıf QueryFilesComparator, Karşılaştırıcıyı uygular ( @Override public int Compare(String file1, String file2) ( Tamsayı f2 = Tamsayı.parseInt(dosya1.altdize(0, 2)); Tamsayı f1 = Tamsayı.parseInt(dosya2.altdize(0, 2)); dönüş f2 .karşılaştır(f1); ) )
    Tabloları doldurmakla her şey daha eğlenceli. Tablolarım yalnızca sabit kodlanmış değerlerle değil, aynı zamanda kaynaklardan gelen değerler ve UUID anahtarlarıyla da doludur (umarım bir gün programımın ağ sürümüne gelirim, böylece kullanıcılarım paylaşılan verilerle çalışabilir). İlk verileri içeren dosyaların yapısı şöyle görünür:


    Dosyalarım sql uzantılı olmasına rağmen, içinde sql kodu yok, ama şu şey:

    Öncelikler
    pri_id:UUID:UUID

    pri_name:dize:normal
    pri_color:renk:renkYeşil
    pri_default:int:1
    öncelikler
    pri_id:UUID:UUID
    pri_object:string:object_task
    pri_name:dize:tut
    pri_color:renk:renkMavi
    pri_default:int:0
    öncelikler
    pri_id:UUID:UUID
    pri_object:string:object_task
    pri_name:dize:önemli
    pri_color:renk:renkKırmızı
    pri_default:int:0
    öncelikler
    pri_id:UUID:UUID

    pri_name:dize:normal
    pri_color:renk:renkYeşil
    pri_default:int:1
    öncelikler
    pri_id:UUID:UUID
    pri_object:string:object_project
    pri_name:dize:tut
    pri_color:renk:renkMavi
    pri_default:int:0
    öncelikler
    pri_id:UUID:UUID
    pri_object:string:object_project
    pri_name:dize:önemli
    pri_color:renk:renkKırmızı
    pri_default:int:0

    Dosya yapısı şu şekildedir: Bir işlev çağrısı yapıyorum bölmek(":") satırla ilgili olarak ve boyutunun 1 olduğunu anlarsam, bu, verilerin yazılması gereken tablonun adıdır. Aksi takdirde, verinin kendisidir. İlk alan, tablodaki alanın adıdır. İkinci alan, bu alana ne yazmam gerektiğini belirlediğim türdür. Bu bir UUID ise, benzersiz bir UUID değeri oluşturmam gerekiyor. Dize benim için önemliyse, dize değerini kaynaklardan çıkarmak gerekir. Renk ise, o zaman yine, renk kodunu kaynaklardan çıkarmanız gerekir. int veya text ise, o zaman sadece dönüştürürüm verilen değer herhangi bir hareket yapmadan int veya String'e. Kodun kendisi şöyle görünür:

    Özel Dizi Listesi > getSQLData() ( ArrayList > veri = yeni ArrayList<>(); Dizi Listesi dosyalar = yeni ArrayList<>(); AssetManager assetManager = mContext.getAssets(); Dizi dizini = mData + mVersion; try ( String listFiles = assetManager.list(dir); for (Dize dosyası: listFiles)( files.add(file); ) Collections.sort(files, new QueryFilesComparator()); BufferedReader bufferedReader; String satırı; int separator = 0 ; ContentValues ​​​​cv = null; String alanları; String nameTable = null; String packageName = mContext.getPackageName(); boole bayrağı = false; HashMap hm; for (Dize dosyası: dosyalar)( Log.d(TAG, "db dosyası " + dosya); bufferedReader = new BufferedReader(new InputStreamReader(assetManager.open(dir + "/" + file))); while ((satır) = bufferedReader.readLine()) != null)( field = line.trim().split(":"); if (fields.length == 1)( if (flag == true)( hm = yeni HashMap)<>(); hm put(isimTablosu, özgeçmiş); veri.add(hm); ) // tablo adı nameTable = line.trim(); cv = yeni ContentValues(); devam etmek; ) else ( if (fields.equals("UUID"))( cv.put(fields, UUID.randomUUID().toString()); ) else if (fields.equals("renk") || fields.equals( "string"))( int resId = mContext.getResources().getIdentifier(alanlar, alanlar, paketAdı); Log.d(TAG, alanlar + " " + resId); switch (alanlar)( case "color": cv. put(fields, resId); break; case "string": cv.put(fields, mContext.getString(resId)); break; default: break; ) ) else if (fields.equals("text"))( cv .put(alanlar, alanlar); ) else if (fields.equals("int"))( cv.put(fields, Integer.parseInt(fields)); ) ) flag = true; ) bufferedReader.close(); ) ) catch (IOException e) ( e.printStackTrace(); ) dönüş verisi; )

    İyi çalışmalarınızı bilgi bankasına göndermek basittir. Aşağıdaki formu kullanın

    İyi iş siteye">

    Bilgi tabanını çalışmalarında ve işlerinde kullanan öğrenciler, lisansüstü öğrenciler, genç bilim adamları size çok minnettar olacaklar.

    Yayınlanan http://www.allbest.ru/

    giriiş

    3. Veri organizasyonu modelleri

    4. İlişkisel veritabanları

    6. Bilgi modeli

    7. Mantık modeli

    8. Tabloların yapısı

    12. Tablolar oluşturun

    16. Raporlar oluşturun

    17. Program Listesi

    Çözüm

    Kaynakça

    giriiş

    Modern bir uzmanın, üretim faaliyetlerinde, ekonomik yönetimde ve siyasette sağlam ve etkili kararlar alabilmesi için, bilgisayar ve iletişim kullanarak verileri alabilmesi, biriktirebilmesi, saklayabilmesi ve işleyebilmesi ve sonucu görsel belgeler şeklinde sunabilmesi gerekir. Bu nedenle, veritabanlarıyla çalışabilmek çok önemlidir.

    Veritabanı, bilgi depolamak için organize bir yapıdır. Modern veritabanları yalnızca verileri değil, bilgileri de depolar.

    Delphi hızlı uygulama geliştirme ortamı olarak konuşulur. Bu görsel bir programlama teknolojisidir, yani. kullanıcı gelecekteki programını hazırlar ve çalışmasının sonuçlarını programın kendisini başlatmadan önce görür. Prensip olarak, bir başvuru yazma süreci iki bölüme ayrılmıştır. Birincisi - programcı gerekli öğeleri programının pencerelerine, konumlarına, kümelerine yerleştirir doğru boyutlar, özellikleri değiştirir. İkincisi, aslında program kodunu yazmak, yalnızca uygulama çalışırken kullanılabilen öğelerin özelliklerini açıklamak, bir pencerenin görünmesi, bir düğmeye tıklamak vb. olaylara verilen tepkileri açıklamaktır. Bir öğe için herhangi bir özellik ayarlamak Geliştirilmekte olan uygulama için, büyük metin satırları yazmak hiç gerekli değildir, bu özelliği Object Inspector'da (seçilen öğenin özellik izleyicisi olarak adlandırılır) değiştirmek yeterlidir. Bu değişiklik, program kodunu otomatik olarak ekler veya değiştirir.

    Bu, görsel programlama teknolojisinde büyük bir artıdır. oluşturma veya değiştirme yazılım, kullanıcı, program öğesinin bazı özelliklerini bilmeden veya bunlara dikkat etmeden, ancak yalnızca gerekli olanları kullanarak, tamamen bitmiş, çalışan bir ürün yazar, bazen görsel olmayan bir düzenleyicide yazılanlarla eşit karmaşıklıkta hareket eder.

    Müfredata ilişkin verileri içerecek bir veri tabanı derleme görevi ile karşı karşıyayız. Eğitim süreci. Veritabanını doldurduktan sonra, Sql sorgularını kullanarak seçici bir analiz yapmanız gerekir.

    temel infolojik tablo programı

    1. Veritabanı uygulamalarının geliştirilmesi için genel gereksinimler

    Veritabanı şunları içermelidir:

    A. Veri depolamak için tablolar, en az 3 tablo. Her tablo en az 10 giriş içermelidir.

    B. Verileri kolayca görüntüleme, girme, düzenleme ve arama, sorgu oluşturma ve görüntüleme için formlar. Form açıklamalar, ipuçları içermelidir. Form alanlarını doldururken, bilinen değer kümeleri için bir listeden değer seçme özelliğini kullanın. Sonradan gezinmeyi optimize etmek için mümkün olduğunda formlar birbirine bağlanmalıdır. Form, kullanıcı için mümkün olduğunca fazla bilgi içermelidir. Ortaya çıkan anlamsal hataların ele alınmasını sağlayın.

    C. Tüm tabloları, formları, sorguları içeren raporlar

    D. Çeşitli veritabanı nesnelerine erişim menüsü

    e. Görevin tam açıklamasını içeren yardım

    2. Veritabanı programlama için, DELPHI programlama sistemi olan SQL dili hakkında ek literatür kullanmak gerekir.

    3. Bağımsız olarak çözülen görevlerin listesi ve yöntemleri

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

    2. Bilgisel tasarım, bilgi nesnelerinin, etki alanlarının, niteliklerin, bağlantıların doğrulanması, bir bilgi modelinin oluşturulması.

    3. Temel ilişkilerin mantıksal tasarımı, inşası ve gerekçelendirilmesi, normalleştirme.

    4. Sql sorguları tasarlama.

    5. Veritabanındaki yapı ve genel fonksiyonların programlanması.

    6. Yazılım ortamında veri tabanı tasarlamak.

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

    8. Açıklayıcı not alma.

    4. Dönem ödevinde edinilen yetkinlikleri değerlendirme kriterleri

    Tablo 1'de gösterilen çalışmayı savunurken ölçütler öğretmen tarafından doldurulur. Not ortalamasına göre ders çalışmasına bir not verilir.

    Tablo 1. Yeterliliklerin değerlendirilmesi

    yetkinliklerin adı

    değerlendirme nesnesi

    Gereksinimleri anlayın ve uygulayın

    Elde edilen sonuçlar (DB) (hacim, yapı, göreve uygunluk)

    Yazılı iletişim

    Açıklayıcı notta sunumun kalitesi, anlaşılırlığı, hacim yapısı, göreve uygunluğu.

    DELPHI programlama sisteminin unsurlarını bilir ve uygular

    Veritabanı uygulama bileşenleri, veritabanının uygulanması ile ilgili soruların yanıtları

    Veritabanı teknolojisinin unsurlarını bilir ve uygular

    Tasarımla ilgili soruların yanıtları, muhtemelen bir test formatında

    Veritabanı teknolojisini uygulama gereksinimlerini anlama

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

    İş planlaması, iş organizasyonu

    Geri dönüş süresi

    Sorunları bağımsız olarak çözün

    Kendi kendine çözülen görevlerin listesi ve yöntemleri

    Sözlü iletişim

    Genel veritabanı koruması

    Analiz, sentez yeteneği

    Bilgisel, mantıksal veritabanı modeli

    Kaliteli sonuçlara bağlılık

    Yapılan işin kalitesi, ergonomik göstergeler, işleyiş kalitesi.

    Yeni fikirler üretme yeteneği

    arayüz kalitesi, Ek fonksyonlar DB göreve dahil değil.

    Bilgileri yönetme (arama) yeteneği

    Ders çalışmasında bulunan ve kullanılan bilgi kaynaklarının sayısı, danışman sayısı.

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

    Bir veritabanı (DB), bir bilgisayar sisteminin belleğinde depolanan ve incelenen konu alanındaki nesnelerin durumunu ve ilişkilerini yansıtan bir dizi yapılandırılmış veridir.

    Veritabanında depolanan verilerin mantıksal yapısı, veri temsil modeli olarak adlandırılır. Ana veri sunum modelleri (veri modelleri) hiyerarşik, ağ, ilişkisel içerir.

    Bir veritabanı yönetim sistemi (DBMS), bir dizi dil ve yazılım araçları yaratmak, sürdürmek ve paylaşım Birçok kullanıcı tarafından DB. RDBMS genellikle kullanılan veri modeli ile ayırt edilir. Bu nedenle, ilişkisel veri modelinin kullanımına dayalı DBMS'ye ilişkisel VTMS denir.

    Bir veritabanıyla çalışmak için DBMS araçları genellikle yeterlidir. Bununla birlikte, vasıfsız kullanıcılar için veritabanı ile çalışma kolaylığı sağlamak gerekirse veya DBMS arayüzü kullanıcılara uygun değilse, o zaman uygulamalar geliştirilebilir. Oluşturulmaları programlama gerektirir. Bir uygulama, bazı sorunların çözümünü otomatikleştiren bir program veya bir dizi programdır. uygulamalı görev. Uygulamalar, veritabanı erişim araçlarını kullanan bir programlama sistemi kullanılarak, örneğin Delphi veya C ++ Вuildeg kullanılarak DBMS ortamının içinde veya dışında oluşturulabilir. DBMS ortamında geliştirilen uygulamalara genellikle DBMS uygulamaları denirken, DBMS dışında geliştirilen uygulamalara genellikle harici uygulamalar denir.

    Veri sözlüğü, veri yapıları, veritabanı dosyaları arasındaki ilişkiler, veri türleri ve sunum formatları, kullanıcılar tarafından veri sahipliği, güvenlik ve erişim kontrol kodları vb. hakkında bilgilerin merkezi olarak depolanması için tasarlanmış bir veritabanı alt sistemidir.

    Veritabanı kullanımına dayalı bilgi sistemleri genellikle bir istemci-sunucu mimarisinde çalışır. Bu durumda, veritabanı sunucu bilgisayarda bulunur ve paylaşılır.

    Belirli bir kaynağın sunucusu bilgisayar ağı Bu kaynağı yöneten bir bilgisayara (program), istemci - bu kaynağı kullanan bir bilgisayar (program) denir. Bir bilgisayar ağ kaynağı olarak, örneğin veritabanları, dosyalar, yazdırma hizmetleri, posta hizmetleri hareket edebilir.

    Örgütün saygınlığı bilgi sistemi istemci-sunucu mimarisinde merkezi depolama, bakım ve bireysel kullanıcı çalışmasıyla ortak kurumsal bilgilere toplu erişimin başarılı bir kombinasyonudur.

    İstemci-sunucu mimarisinin temel prensibine göre veriler sadece sunucu üzerinde işlenir. Kullanıcı veya uygulama, veritabanı sunucusuna SQL deyimleri şeklinde gelen sorguları oluşturur. Veritabanı sunucusu, daha sonra kullanıcının bilgisayarına aktarılan gerekli verilerin aranmasını ve çıkarılmasını sağlar. Bu yaklaşımın öncekilere kıyasla avantajı, önemli ölçüde daha az miktarda iletilen veridir.

    Aşağıdaki DBMS türleri vardır:

    * tam özellikli DBMS;

    * veritabanı sunucuları;

    * veritabanıyla çalışmak için programlar geliştirmek için araçlar.

    Tam özellikli DBMS'ler geleneksel DBMS'lerdir. Bunlar arasında dBase IV, Microsoft Access, Microsoft FoxPro vb.

    Veritabanı sunucuları, bilgisayar ağlarındaki veri işleme merkezlerini düzenlemek için tasarlanmıştır. Veritabanı sunucuları, genellikle SQL ifadelerinin yardımıyla istemci programlarından gelen isteklerin işlenmesini sağlar. Veritabanı sunucularına örnekler: Microsoft SQL Server, Inter Base, vb.

    Müşteri programlarının rolünde, genel durumda, DBMS, elektronik tablolar, kelime işlemcileri, programlar E-posta ve benzeri.

    Veritabanı programları geliştirmeye yönelik araçlar, aşağıdaki programları oluşturmak için kullanılabilir:

    * müşteri programları;

    * veritabanı sunucuları ve bunların bireysel bileşenleri;

    * özel uygulamalar.

    DBMS kullanımının doğasına göre, çok kullanıcılı (endüstriyel) ve yerel (kişisel) olarak ayrılırlar.

    Endüstriyel, DBMS, geliştirme için bir yazılım temelidir otomatik sistemler büyük ekonomik tesislerin yönetimi. Endüstriyel DBMS aşağıdaki gereksinimleri karşılamalıdır:

    * birçok kullanıcının ortak paralel çalışmasını organize etme imkanı;

    * ölçeklenebilirlik;

    * çeşitli donanım ve yazılım platformlarına taşınabilirlik;

    * saklanan bilgiler için çok seviyeli bir yedekleme sisteminin varlığı da dahil olmak üzere çeşitli türlerdeki arızalarla ilgili kararlılık;

    * Depolanan verilerin güvenliğinin sağlanması ve bunlara gelişmiş bir yapılandırılmış erişim sistemi.

    Personal DBMS, göreve yönelik bir yazılımdır yerel kullanıcı veya küçük bir kullanıcı grubu üzerinde kullanılmak üzere tasarlanmıştır. kişisel bilgisayar. Bu, ikinci adlarını açıklar - masaüstü. Masaüstü sistemlerin tanımlayıcı özellikleri şunlardır:

    * Göreceli kullanım kolaylığı, uygulanabilir oluşturmanıza olanak sağlar özel uygulamalar;

    * donanım kaynakları için nispeten sınırlı gereksinimler.

    Kullanılan veri modeline göre, DBMS hiyerarşik, ağ, ilişkisel, nesne yönelimli, vb. olarak ayrılır. Bazı DBMS aynı anda birkaç veri modelini destekleyebilir.

    Veritabanında depolanan verilerle çalışmak için aşağıdaki dil türleri kullanılır:

    *veri açıklama dili -- prosedürel olmayan yüksek seviyeli dil
    mantıksal bir açıklamayı amaçlayan bildirim türü
    veri yapıları

    * veri işleme dili -- verilerle çalışmak için temel işlemlerin uygulanmasını sağlayan bir dizi yapı: istek üzerine girdi, değişiklik ve veri seçimi.

    Farklı DBMS'deki adlandırılmış diller farklılıklar gösterebilir. En yaygın olarak kullanılan iki standartlaştırılmış dildir: QBE -- kalıplı bir sorgulama dili ve SQL -- yapılandırılmış bir sorgu dili QBE temel olarak bir veri işleme dilinin özelliklerine sahiptir, SQL her iki dil türünün özelliklerini birleştirir.

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

    * sırasında veri yönetimi harici bellek;

    * RAM tampon yönetimi;

    * işlem yönetimi;

    * veritabanındaki değişiklikleri günlüğe kaydetme;

    * Veritabanı bütünlüğünün ve güvenliğinin sağlanması.

    Veri yönetimi işlevinin harici bellekte uygulanması, işletim sistemi dosya sisteminde kaynak yönetiminin organizasyonunu sağlar.

    Veri arabelleğe alma ihtiyacı, RAM miktarının harici bellek miktarından daha az olmasından kaynaklanmaktadır. Tamponlar, harici ve harici arasındaki değişimi hızlandırmak için tasarlanmış RAM alanlarıdır. Veri deposu. Tamponlar, DBMS'ye erişirken kullanılması beklenen veya işlendikten sonra veritabanına yazılması planlanan veritabanı parçalarını geçici olarak depolar.

    İşlem mekanizması, veritabanındaki verilerin bütünlüğünü korumak için DBMS'de kullanılır. Bir işlem, DBMS tarafından baştan sona izlenen veritabanı verileri üzerindeki bazı bölünmez işlemler dizisidir. Herhangi bir nedenle (arızalar ve ekipman arızaları, yazılım, uygulama dahil) işlem eksik kalır, sonra iptal edilir.

    İşlemlerin üç ana özelliği vardır:

    * atomiklik (işlemde yer alan tüm işlemler gerçekleştirilir veya hiçbiri yapılmaz);

    * serileştirilebilirlik (aynı anda gerçekleştirilen işlemlerin karşılıklı etkisi yoktur);

    * dayanıklılık (sistemin çökmesi bile, taahhüt edilen bir işlemin sonuçlarının kaybedilmesine yol açmaz).

    Bir işleme örnek olarak, bankacılık sisteminde bir hesaptan diğerine para aktarma işlemi verilebilir. Önce bir hesaptan para çekilir, sonra başka bir hesaba yatırılır. İşlemlerden en az biri başarıyla tamamlanmazsa işlemin sonucu yanlış olur ve işlemin dengesi bozulur.

    Değişiklik günlüğü, donanım ve yazılım arızalarının varlığında veritabanındaki veri depolamanın güvenilirliğini sağlamak için DBMS tarafından gerçekleştirilir.

    Veritabanının bütünlüğünün sağlanması, veritabanının başarılı bir şekilde çalışması için gerekli bir koşuldur, özellikle de ağ kullanımı. Veritabanının bütünlüğü, veritabanının bir özelliğidir; bu, tam, tutarlı ve konu alanı bilgilerini yeterince yansıtan içermesi anlamına gelir. Veritabanı durumunun bütünlüğü, veritabanında depolanan veriler tarafından karşılanması gereken koşullar biçimindeki bütünlük kısıtlamaları kullanılarak tanımlanır.

    DBMS'de güvenlik, veri şifreleme, parola koruması, veritabanına ve onun bireysel öğelerine (tablolar, formlar, raporlar, vb.) erişim düzeyleri için destek ile sağlanır.

    3. Veri organizasyonu modelleri

    Hiyerarşik modelde, varlık nesneleri ve etki alanı ilişkileri, ağaç (hiyerarşik) yapıya sahip veri kümeleriyle temsil edilir. Hiyerarşik veri modeli tarihsel olarak ilkti. Temel olarak, 60'ların sonunda - 70'lerin başında, ilk profesyonel DBMS geliştirildi.

    Hiyerarşik modeldeki bütünlük kısıtlamalarının odak noktası, hiçbir çocuğun ebeveyni olmadan var olamayacağı temel kuralına tabi olarak atalar ve torunlar arasındaki referans bütünlüğüdür.

    Ağ veri modeli, veri öğeleri arasındaki çeşitli ilişkileri gelişigüzel bir grafik biçiminde görüntülemenizi sağlar. Bir ağ veri tabanı, bir dizi kayıttan ve bir dizi karşılık gelen bağlantıdan oluşur. Bir bağlantının oluşumunda özel bir kısıtlama yoktur. Hiyerarşik yapılarda bir alt kaydın yalnızca bir üst kaydı olabilirse, ağ veri modelinde bir alt kaydın rastgele sayıda üst kaydı olabilir.

    Ağ veri ortamının avantajı, verimli uygulama olasılığıdır. Hiyerarşik modele kıyasla, ağ modeli keyfi bağlantıların oluşumunun kabul edilebilirliği açısından daha fazla fırsat sunmaktadır.

    Ağ veri modelinin dezavantajı, temelinde oluşturulan veritabanı şemasının yüksek karmaşıklığı ve katılığının yanı sıra onu anlamanın zorluğudur. normal kullanıcı. Ek olarak, ağ veri modelinde, kayıtlar arasında keyfi bağlantıların kurulmasının kabul edilebilirliği nedeniyle bağlantıların bütünlüğünün kontrolü zayıflar.

    Ağ modeline dayalı sistemler pratikte yaygın olarak kullanılmamaktadır.

    İlişkisel veri modeli, IBM çalışanı Edgar Codd tarafından önerildi ve ilişki kavramına dayanıyor.

    Bir ilişki, demet adı verilen bir dizi öğedir. Bir ilişkinin görsel temsili iki boyutlu bir tablodur.

    Bir tablo kullanarak açıklamak uygundur en basit hal veriler arasındaki ilişkiler, yani: hakkında bilgiler tabloda saklanan bir nesnenin, her biri bir satıra veya tablo girişine karşılık gelen birçok alt nesneye bölünmesi.

    İlişkisel modelin ana dezavantajları şunlardır: standart araçlar bireysel kayıtların tanımlanması ve hiyerarşik ve ağ ilişkilerini tanımlamanın karmaşıklığı.

    4. İlişkisel veritabanları

    Belirli bir konu alanının ilişkisel veri modeli (RDM), zaman içinde değişen bir dizi ilişkidir. Bir bilgi sistemi oluştururken, bir dizi ilişki, konu alanındaki nesneler hakkında veri depolamanıza ve bunlar arasındaki ilişkileri modellemenize olanak tanır. RMD terimleri Tablo'da sunulmuştur. 4.1

    Tablo 4.1. ilişkisel modelin şartları

    vadeli ilişki modeli

    Eş değer

    Davranış

    ilişki şeması

    Tablo sütun başlığı satırı (tablo başlığı)

    Tablo satırı, kayıt

    Öz

    Nesne özelliklerinin açıklaması

    Sütun, alan

    İzin verilen değerler kümesi

    bağlanmak

    birincil anahtar

    benzersiz tanımlayıcı

    kardinalite

    satır sayısı

    Sütun sayısı

    İlişkisel bir veritabanı, bir dizi iki boyutlu tablo içeren bir veri ambarıdır. Tablolardaki veriler aşağıdaki ilkelere uygun olmalıdır:

    1. Öznitelik değerleri atomik olmalıdır (başka bir deyişle,
    bir satır ve bir sütunun kesişme noktasında bulunan her bir değer,
    birden fazla değere bölünmemelidir).

    2. Her özelliğin değerleri aynı tipte olmalıdır.

    3. Tablodaki her giriş benzersizdir.

    4. Her alanın benzersiz bir adı vardır.

    5. Tablodaki alanların ve kayıtların sırası zorunlu değildir.

    İlişki en önemli kavramdır ve bazı verileri içeren iki boyutlu bir tablodur.

    Bir varlık, verileri bir veritabanında saklanan, herhangi bir nitelikteki bir nesnedir. Varlık verileri ilişki içinde saklanır.

    Nitelikler, bir varlığı karakterize eden özelliklerdir. Tablonun yapısında, her öznitelik adlandırılır ve bazı tablo sütunlarının başlığı buna karşılık gelir.

    Bir ilişkinin anahtarı, ilişkinin her bir demetini benzersiz şekilde tanımlayan niteliklerinin kümesidir. Diğer bir deyişle, ilişkinin anahtarı olan K nitelikler kümesi tek olma özelliğine sahiptir. Bir anahtarın bir sonraki özelliği artıklık değildir. Yani, K kümesinin uygun alt kümelerinden hiçbiri benzersizlik özelliğine sahip değildir.

    Her ilişkinin her zaman bir anahtar görevi görebilecek niteliklerin bir kombinasyonu vardır.

    Bir ilişkinin, her biri ilişkinin tüm demetlerini benzersiz bir şekilde tanımlayan birkaç özellik kombinasyonuna sahip olduğu durumlar vardır. Bu öznitelik kombinasyonlarının tümü olası ilişki anahtarlarıdır. Olası anahtarlardan herhangi biri birincil olarak seçilebilir.

    Anahtarlar genellikle aşağıdaki hedeflere ulaşmak için kullanılır:

    Anahtar özelliklerde değerlerin tekrarlanmasının hariç tutulması (diğer özellikler dikkate alınmaz);

    Tuple siparişi. Tüm temel niteliklerin değerlerinin artan veya azalan düzeninin yanı sıra karışık sıralama (birine göre - artan ve diğerleri tarafından - azalan) sıralamak mümkündür;

    Kuruluşları birbirine bağlayan tablo.

    Yabancı anahtar kavramı önemlidir. Bir yabancı anahtar, değerleri başka bir R1 ilişkisinin olası bir anahtarının değerleriyle eşleşmesi gereken bir R2 ilişkisinin bir dizi özelliği olarak tanımlanabilir.

    Yabancı anahtarı oluşturan K2 ilişkisinin nitelikleri bu ilişkinin anahtarı değildir.

    Yabancı anahtarlar, ilişkiler arasındaki ilişkileri kurar.

    Bilgi sistemlerinin veritabanlarını tasarlamak oldukça zaman alan bir iştir. Hakkında bilgi veri tabanında saklanması gereken konu alanının yapısının ve süreçlerinin resmileştirilmesi temelinde gerçekleştirilir. Kavramsal ve şematik-yapısal tasarım vardır.

    Bir DB IS'nin kavramsal tasarımı büyük ölçüde buluşsal bir süreçtir. Çerçevesinde oluşturulan bilgilerin yeterliliği mantıksal model konu alanı, IS'nin işleyiş sürecinde ampirik olarak doğrulanır.

    Aşamalar kavramsal tasarım:

    * konu alanı hakkında genel bir fikir oluşturmak için çalışma;

    * geliştirilmiş IS'nin işlev ve görevlerinin seçimi ve analizi;

    * konu alanındaki ana nesnelerin-varlıkların tanımı
    ve aralarındaki ilişki;

    * konu alanının resmileştirilmiş temsili.

    İlişkisel bir veritabanı şeması tasarlarken, aşağıdaki prosedürler ayırt edilebilir:

    * tablolar listesinin tanımı ve aralarındaki bağlantılar;

    * her tablonun alan listesini, alan türlerini, anahtar alanlarını tanımlama (tablo şeması), yabancı anahtarlar aracılığıyla tablolar arasında bağlantılar kurma;

    * tablolardaki alanlar için indeksleme ayarı;

    * numaralandırılmış alanlar için listelerin (sözlüklerin) geliştirilmesi
    veri;

    * tablolar ve ilişkiler için bütünlük kısıtlamaları oluşturmak;

    * tabloların normalleştirilmesi, tabloların ve bağlantıların listesinin düzeltilmesi. Veritabanı tasarımı, fiziksel ve mantıksal seviyelerde gerçekleştirilir. üzerinde tasarım fiziksel seviye bir DBMS aracılığıyla uygulanır ve genellikle otomatikleştirilir.

    Mantıksal tasarım, tabloların sayısını ve yapısını belirlemek, veritabanı sorguları geliştirmek, belgeleri raporlamak, veritabanına veri girmek ve düzenlemek için formlar oluşturmak vb.

    Mantıksal veritabanı tasarımının en önemli görevlerinden biri veri yapılandırmadır. Veri yapılarını tasarlamak için aşağıdaki yaklaşımlar vardır:

    * varlık nesneleri hakkındaki bilgileri bir tablo (tek ilişki) içinde birleştirmek ve müteakip ilişkileri normalleştirme prosedürüne dayalı olarak birbiriyle ilişkili birkaç tabloya ayrıştırmak;

    * CA5E sistemini kullanarak hazır bir veri tabanı şeması veya hatta hazır uygulamalı bir bilgi sistemi elde etmek için sistem (başlangıçtaki veri ve ilişkilerin türlerinin belirlenmesi) ve veri işleme gereksinimleri hakkında bilgi formüle etmek;

    * sistem analizinin uygulanması ve yapısal modellerin geliştirilmesi.

    5. SQL'in amacı ve çalışma prensibi

    SQL (genellikle "devam" olarak telaffuz edilir, Yapılandırılmış Sorgu Dili'nin kısaltmasıdır) Yapılandırılmış Dil istekler.

    SQL, bir bilgisayar veritabanında bulunan verileri işlemek ve okumak için kullanılan bir araçtır. Bu, ilişkisel veritabanlarını etkin bir şekilde oluşturmayı ve bunlarla çalışmayı mümkün kılan bir dildir.

    Veritabanı dünyası giderek daha birleşik hale geliyor ve bu da çok sayıda farklı türde işlev görebilen standart bir dil oluşturma ihtiyacına yol açıyor. bilgisayar ortamları. Standart dil, bir komut setini bilen kullanıcıların, ister kişisel bir bilgisayarda, ister bir ağda çalışıyor olsunlar, bilgileri oluşturmak, almak, değiştirmek ve iletmek için bunları kullanmasına izin verecektir. iş istasyonu veya bir ana bilgisayarda. Giderek artan bir şekilde birbirine bağlı bilgisayar Dünyası, böyle bir dille donatılmış kullanıcı, çok sayıda kaynaktan gelen bilgileri çok sayıda şekilde kullanma ve özetleme konusunda büyük bir avantaja sahiptir.

    Adından da anlaşılacağı gibi SQL, bir veritabanı ile kullanıcı etkileşimini düzenlemek için kullanılan bir programlama dilidir. Aslında, SQL yalnızca ilişkisel veritabanlarıyla çalışır.

    6. Bilgi modeli

    Bir infolojik model oluştururken, verilen veritabanının "Müfredat, PMI yönünün incelenen disiplinleri" konu alanı analiz edildi. 4 nesne seçildi: Müfredat, Disiplin, Öğrenci, Öğretmen ve ayrıca öğrenciler ve disiplinler ile öğretmenler ve disiplinler arasında bağlantı kuran iki ek tablo. Müfredat nesnesi aşağıdaki özniteliklere sahiptir: Oluşturma yılı, Müfredat numarası. Discipline nesnesi aşağıdaki özniteliklere sahiptir: Disiplin adı, Disiplin kodu, Müfredat numarası, Ders saati sayısı, Uygulama saati sayısı, laboratuvar çalışmaları, Toplam saat, Haftalık saat sayısı, Disipline göre raporlama formu, Çalışma dönemi. Sudent nesnesi aşağıdaki özniteliklere sahiptir: Gradebook numarası, tam ad. Ve Öğretmen nesnesi şu niteliklere sahiptir: Tam ad, Personel numarası, Departman, Pozisyon, Telefon. Müfredat ve Ders nesneleri 1:n ilişkisi içinde, Course ve Student nesneleri 1:n ilişkisi içinde ve Course ve Teacher nesneleri 1:n ilişkisi içinde ilişkilidir.

    İnfolojik modeli tanımlarken ER diyagramları kullanıldı:

    Resim 1

    7. Mantık modeli

    Mantıksal model, konu alanı kavramlarını, bunların ilişkilerini ve konu alanı tarafından getirilen veri kısıtlamalarını açıklar.

    Mantıksal veri modeli, gelecekteki veritabanının ilk prototipidir. Bilgi birimleri açısından oluşturulmuştur, ancak belirli bir DBMS'ye atıfta bulunulmamaktadır. Ayrıca, mantıksal veri modelinin ilişkisel veri modeli aracılığıyla ifade edilmesi gerekmez.

    Mantıksal bir model oluşturmak için, her nesneye belirli bir alan kümesi içeren bir tablo atanmıştır. Disiplin ve Öğretmen Nesneleri 1:n ilişkisiyle ilişkili olduğundan, Disiplin ve Öğretmen: Öğretir nesneleri arasındaki ilişkiyi temsil eden ek bir tablo görünür.

    Toplamda 4 nesnemiz var ve bu nedenle onları temsil edecek 4 tablo olacak, Veritabanı yalnızca bir müfredatla çalıştığı için Müfredat nesnesi yalnızca bilgi amaçlıdır:

    Ancak iki nesne arasında 1:n ilişkisi vardır, dolayısıyla bu tablolar arasındaki ilişkileri temsil edecek başka bir tablo tanıtmamız gerekir. Bu Öğretir (Disciplina-Prepodavatel) ve Öğrenir (Disciplina-Öğrenci) tablosu olacaktır.

    Sunulan veritabanı, 5. normal forma atfedilebilir, çünkü 3. normal formdadır ve birincil anahtar basit. Mantıksal şema Microsoft Access'te uygulanmaktadır.

    şekil 2

    8. Tabloların yapısı

    İlk veri tabanı 5 tablodan oluşur (Bir müfredat kullanıldığı için Müfredatlar tablosu dikkate alınmaz).

    Alanların açıklaması:

    v disiplin.db

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

    W Kodu - benzersiz kod disiplinler: LongInt;

    Ш Dönem - öğretildiği dönem: Yaylı;

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

    Ш KolPraktCh - bu disiplindeki uygulama sayısı: LongInt;

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

    Ø VsegoCh - toplam saat sayısı: LongInt;

    Ш NomerYP - şu disiplini içeren müfredat numarası: LongInt.

    vÖğrenci.db

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

    Ш FIO - öğrencinin soyadı: ShortInt;

    v Prepodaet.db (Disiplin-Öğretmen)

    Ш TabNomerPrepod - ilgili disiplini öğreten öğretmenin personel numarası: LongInt;

    Ш FIO- ilgili disiplini öğreten öğretmenin adı: String.

    v Prepod.db

    Ø FIO - öğretmenin tam adı: String;

    Ш TabelNomerPrepodavatelya - öğretmenin benzersiz personel numarası: LongInt;

    Ш Kafedra - çalıştığı departman: String;

    Ш Dolshnost - Öğretmenin konumu: Tel;

    SH Telefon- iletişim numarasıöğretmen: Dize.

    v Izuchaet.db(Disiplin-Öğrenci)

    Ш KodDiscip - disiplin kodu: LongInt;

    Ш NomerStudBileta - disiplini okuyan öğrencinin öğrenci kartının numarası: LongInt;

    Ш FIO- ilgili disiplinde çalışan öğrencinin tam adı: String;

    Ш Ocenka - çalışılan disiplinde öğrencinin değerlendirmesi: LongInt;.

    9. SQL sorguları tasarlama

    1. Her dönem için bir kredi ve sınav listesi oluşturun.

    Nazv,FormaReport'u seçin

    burada Dönem=:s ve

    (Disciplina.FormaOtchet="Geçti" veya Disciplina.FormaOtchet="Sınav" );

    2. Her konu için / temel ve ek / sınav ve test kağıtları oluşturmak.

    Ana liste:

    Teacher.FIO'yu seçin,

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

    Ocenka,Disciplina.Nazv

    Disciplina, Prepodaet,Izuchaet'ten

    burada Disciplina.KodDiscip=Prepodaet.KodDiscip

    ve (Disciplina.FormaOtchet="Sınav" veya Disciplina.FormaOtchet="Geçti")

    Ek açıklama (2 olan öğrenciler için):

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

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

    Izuchaet,Disciplina,Prepodaet'ten

    burada Izuchaet.Değerlendirme="2"

    ve Disciplina.KodDiscip=Izuchaet.KodDiscip

    ve Disciplina.KodDiscip=Prepodaet.KodDiscip

    ve (Disciplina.FormaOtchet="Sınav" veya Disciplina.FormaOtchet="Geçti");

    Disiplini Güncelle

    ObsheeKolChVNed=VsegoCh/17'yi ayarlayın;

    4. Her öğrencinin diploması için bir ek hazırlayın:

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

    Izuchaet, Disciplina'dan

    burada Disciplina.KodDiscip=Izuchaet.KodDiscip

    ve Disciplina.FormaRetchet="Sınav"

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

    SrBall'a göre sipariş edin;

    5. Ortalama puanın azalan sırasına göre grubu listeleyin:

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

    SrBall'a göre sipariş edin;

    10. Sistemin yapısı ve işlevleri

    Kurs çalışması bir proje “Project1” ve 13 modülden oluşmaktadır.

    1. Unit1 - burada bir başlık sayfası olan bir form saklanır. Kullanılan Bileşenler: Not, Düğme.

    2. Unit2 - veritabanının ilk sayfası olan form burada saklanır. Aşağıdaki bileşenler burada kullanılır: Düğme, Not.

    3. Unit3 - burada tüm veritabanı tablolarını sekmeler şeklinde içeren bir form saklanır. Burada şu bileşenler kullanılır: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    4. Unit4 - görevin görüntülendiği form burada saklanır. Aşağıdaki bileşenler burada kullanılır: Not, Düğme.

    5. Unit5 - burada ek bir inceleme sayfası görüntüleyen bir form saklanır. Burada şu bileşenler kullanılır: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    6. Unit6 - burada sınavların ve testlerin listesini görüntüleyen bir form saklanır. Burada şu bileşenler kullanılır: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    7. Ünite7 - burada ana inceleme sayfasını gösteren bir form saklanır. Burada şu bileşenler kullanılır: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    8. Unit8 - burada, grubun listesini azalan sırada görüntüleyen bir form saklanır. Burada şu bileşenler kullanılır: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    9. Unit9 - diplomada eki gösteren formun saklandığı yer burasıdır. Burada şu bileşenler kullanılır: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    10. Unit10 - burada elektronik beyanname doldurmak için bir form görüntüleyen bir form saklanır. Burada şu bileşenler kullanılır: Memo, Button, TabSheet, Table, DBGrid, DBNavigator, Label, Query.

    11. Unit11 - menünün görüntülendiği form burada saklanır. Burada şu bileşenler kullanılır: Not, Düğme, Etiket.

    12. Unit12 - burada bir elektronik muayene sayfasının oluşturulmasına ilişkin bir raporu görüntüleyen bir form saklanır. Burada kullanılan bileşenler şunlardır: Memo ve Düğme, RVProject, RVQueryConnection ve Query.

    13. Unit13 - burada diplomada bir ekin oluşturulmasına ilişkin bir raporu görüntüleyen bir form saklanır. Burada kullanılan bileşenler şunlardır: Memo ve Düğme, RVProject, RVQueryConnection ve Query.

    11. Kullanım kılavuzu

    1. Projeye başlıyoruz. Önümüzde kurs çalışmasının başlık sayfası beliriyor

    Figür 3

    Burada hemen veritabanına girebiliriz veya göreve bakıp bu forma geri dönebiliriz. "Görevi göster"i seçin

    2. Önümüzde dönem ödevi ataması ile ilgili bilgi içeren bir pencere belirir.

    Şekil 4

    3. Uygun düğmeye tıklayarak geri dönün ve önceki penceredeki "Devam" düğmesine tıklayarak çalışmaya başlayın.

    Şekil 5

    4. Bu sayfadaki bilgileri inceledikten sonra "Giriş Yap" butonuna tıklayınız.

    Şekil 6

    Önümüzde, veritabanında bulunan tüm bilgileri sekmelerde içeren bir pencere belirir. Burada disiplinlerin, çalışma gruplarının, öğretmenlerin, şu ya da bu öğrencilerin ne okuduğunu ve öğretmenlerin hangi konuyu öğrettiklerini görebiliriz.

    5. Ayrıca bu pencereden isteklere geçebiliriz. Uygun düğmeye tıklayın.

    Şekil 7

    Burada, uygun düğmeyi tıklayarak herhangi bir ilgi talebini seçebiliriz. Ayrıca burada tablolara geri dönebilir ve sınav kağıdının elektronik versiyonunu oluşturmaya devam edebiliriz.

    6. "Her dönem için kredi ve sınav listesini görüntüle" düğmesine tıklayın

    Şekil 8

    Burada dönem numarasını girmeniz ve aşağıdaki butona tıklamanız gerekmektedir, ardından tablo penceresinde girdiğiniz yarıyıla ait sınav ve kredi listesi görüntülenecektir. Bu sayfadan sorgulara geri dönebiliriz.

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

    Burada açılır listeden disiplinin adını seçmeniz, ardından bu adı açılır listenin altındaki kutuya girip "Çalıştır" düğmesini tıklamanız gerekir. Sorgu, girdiğiniz disiplini çalışmak için haftalık toplam saat sayısını gösterecek ve aynı zamanda okuyan öğrencilerin bir listesini gösterecektir. bu disiplin ve bu disiplin için değerlendirmeleri. Dikkat! Değerlendirme alanı, Öğrenci-Konu sekmesindeki tablolarla form üzerinde doldurulur. Ayrıca bu sayfada ek bir muayene sayfası oluşturabilirsiniz. 2 notu olan öğrenciler için. Bu sayfadan isteklere geri dönebiliriz.

    Şekil 9

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

    Şekil 10

    Burada belirli bir disiplinde 2 notu olan öğrencileri görebiliriz. Bu sayfadan sorgulara geri dönebiliriz.

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

    Şekil 11

    Burada açılan listeden uygun öğrenciyi seçerek mezun olan kişinin tam adını girmelisiniz. Ardından, tuşuna basın. Ardından, istek üzerine, "Disiplin" sütunu, 5 yıllık eğitim için incelenen disiplinlerin bir listesi ile doldurulacak ve ilgili notlar görünecektir. Aynı sayfada, "Versiyonu yazdır" düğmesine tıklayarak ekin elektronik versiyonunu görüntüleyebilirsiniz. Bu versiyonu görüntüledikten sonra ekranın sağ üst köşesindeki kırmızı çarpıda açılan pencereyi kapatmanız yeterli.

    Şekil 12

    10. "Grup listesini ortalama puanın azalan sırasına göre görüntüle" düğmesine tıklayın

    Şekil 13

    Burada, grubun bir listesini ve azalan sırada düzenlenmiş her öğrenciye karşılık gelen ortalama puanı görüyoruz. Bu sayfadan sorgulara geri dönebiliriz.

    Şekil 14

    Açılır listeden bizi ilgilendiren disiplini seçin, örneğin ekonomi ve açılır listenin altındaki kutuya adını girin. Ardından, yürüt düğmesine basın ve bu disiplinin öğretmeninin adını görün.

    Şekil 16

    Burada seçtiğimiz disiplinin adını, bu disiplinin hocasının tam adını görüyoruz. Bu disiplini inceleyen öğrencilerin bir listesinin yanı sıra. Rapordan çıkmak için ekranın sağ üst köşesindeki çarpı işaretine tıklamanız yeterlidir. Önceki sayfaya dönüyoruz. Bu sayfadan sorgulara geri dönebiliriz.

    12. Tablolar oluşturun

    Tabloları oluşturmak için Veritabanı Masaüstü yardımcı programları kullanıldı. Başlatılabilir - Başlat/Programlar/Borland Delphi 7/ Database Desktop. Yardımcı programın çalışma dizini yapılandırılmalıdır. Dosya/Çalışma Dizini komutunu seçin ve çalışma dizininizi ayarlayın. Tablo oluşturmak için Dosya/Yeni/Tablo komutunu seçin. Ardından tablo türünü seçmeniz gerekir. PARADOX 7 tipi, dosya sunucusu tabloları için en iyisi olarak kabul edilebilir.

    1. Bir YchebPlan tablosu oluşturun (Müfredat):

    Şekil 17

    5. Disciplina (Disiplin) tablosu oluşturun:

    Şekil 18

    6. Öğrenci tablosu oluşturun:

    Şekil 19

    7. Prepodaet (Disiplin-Öğretmen) tablosunun oluşturulması:

    Şekil 20

    5. Prepod (Öğretmen) tablosu oluşturun:

    Şekil 21

    8. Izuchaet (Disiplin-Öğrenci) tablosunun oluşturulması:

    Şekil 22

    13. Delphi'de uygulama oluşturma

    Yeni bir uygulama oluşturmak için Dosya menüsünden Yeni/Uygulama'yı seçin. Bir form ve bir modül görünür (genel olarak buna proje denir), şimdi onu forma yerleştirebilirsiniz gerekli bileşenler. Gerekirse başka bir form (ve birden fazla) oluşturabilirsiniz, bunun için Dosya menüsünde Yeni / Form öğesini seçmeniz gerekir.

    1. Tablo. Verilerle doldurma. Veri görüntüleme.

    Bir form üzerinde bir tablo görüntülemek için üzerine bileşenler yerleştirmeniz gerekir:

    · Tablo (BDE sekmesinde) - Nesne Denetçisinde, Parametreler sekmesinde, Tablo adı özelliğinde istediğiniz tabloyu seçin.

    Şekil 23

    · DBGrid (DataControls sekmesinde) - formda tabloyu görüntülemek için gerekli, DataSource özelliğindeki Object Inspector'da gerekli veri kaynağını belirtin.

    Şekil 24

    · DBNavigator (DataControls sekmesinde) - tablo kayıtları arasında gezinmek için gereklidir. Object Inspector'da DataSource özelliği, DBGrid'dekiyle aynı veri kaynağını belirtir. Navigator fonksiyonları uygulama çalışırken butonlarına tıklanarak kullanılabilir.Bileşen 10 adet buton içermektedir.

    Şekil 25

    · DataSource (Veri Erişimi sekmesi) - veri erişimi için orta düzey bir bileşen. DBMS tabloları ile ekran kontrolleri (DBGrid, DBNavigator) arasında aracı görevi görür.

    Şekil 26

    14. Bilgi (Memo) ve düğmelerle bir alan oluşturma

    Standart sekmesinde bulunan forma bir Not bileşeni yerleştirilir.

    Şekil 27

    Object Inspector'da, "Parameters" sekmesinde, Lines özelliğinde, görüntülenmesi için gereken metni girin.

    Şekil 28

    Düğmeler oluşturma.

    Formu doğru bir şekilde kapatmak için, üzerine Standart sekmesinde bulunan bir Düğme bileşeni yerleştirilir.

    Şekil 29

    Düğmenin çalışması için OnClick olay işleyicisinde şunları belirtmeniz gerekir:

    prosedür TForm1.N5Click(Sender: TObject);

    başlamak

    Form2.Göster;

    Form1.Kapat;

    son;

    15. Tablolar için başlıklar oluşturun

    Ders çalışmasında tabloyu imzalamak için Standart sekmesinde yer alan Etikel bileşeni kullanılmıştır. Object Inspector'da, Caption özelliğinde metni yazmanız yeterlidir.

    Şekil 30

    16. Bir açılır liste oluşturun

    Mevcut listeden bir komut seçmek için ComboBox bileşeni (açılır liste) kullanılır. bu şekilde doldurulabilir

    Nesne Denetçisinde, Öğeler özelliğinde şunu yazın:

    Şekil 31

    16. Raporlar oluşturun

    Rapor, önce bağlanması gereken QReports aracı kullanılarak oluşturulur: Bileşen->paketleri kur->ekle bin klasörünü aç dclqrt70.bpl dosyasını seçin Tamam'a tıklayın ve ardından QReport bileşenlerini içeren bir sekme görünecektir. Kullandığım bileşenler:

    Tablo 2

    17. Program Listesi

    Proje Açıklaması

    program Projesi1;

    kullanır

    formlar,

    "Unit1.pas" (Form1) içindeki Unit1,

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

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

    "Unit4.pas" (Form4) içindeki Unit4,

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

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

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

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

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

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

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

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

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

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

    ($R*.res)

    başlamak

    Uygulama.Başlat;

    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ünün açıklaması

    birim Birim1;

    arayüz

    kullanır

    Diyaloglar, StdCtrl'ler;

    tip

    TForm1 = sınıf(TForm)

    Memo1:TMemo;

    Düğme1: TDüğmesi;

    Düğme2: T Düğmesi;

    Düğme3: T Düğmesi;

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form1: TForm1;

    uygulama

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

    ($R *.dfm)

    prosedür TForm1.Button3Click(Sender: TObject);

    başlamak

    form2.show;

    son;

    prosedür TForm1.Button2Click(Sender: TObject);

    başlamak

    Form1.Kapat;

    son;

    prosedür TForm1.Button1Click(Sender: TObject);

    başlamak

    form4.show;

    son;

    son.

    Unit2 modülünün açıklaması

    birim Birim2;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

    Diyaloglar, StdCtrl'ler;

    tip

    TForm2 = sınıf(TForm)

    Memo1:TMemo;

    Grup Kutusu1: T Grup Kutusu;

    Düğme1: TDüğmesi;

    Düğme2: T Düğmesi;

    prosedür Button1Click(Sender: TObject);

    prosedür Button2Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form2: TForm2;

    uygulama

    Unit3'ü kullanır;

    ($R *.dfm)

    prosedür TForm2.Button1Click(Sender: TObject);

    başlamak

    form3.show;

    Form2.Kapat;

    son;

    prosedür TForm2.Button2Click(Sender: TObject);

    başlamak

    Form2.Kapat;

    son;

    Unit3 modülünün açıklaması

    birim Birim3;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

    Diyaloglar, 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;

    Veri Kaynağı2: TDataSource;

    DataSource3:TDataSource;

    Veri Kaynağı4: TDataSource;

    Tablo1: T Tablosu;

    Tablo2: T Tablosu;

    Tablo3: T Tablosu;

    Tablo4: T 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: TDüğmesi;

    DataSource5:TDataSource;

    DataSource6:TDataSource;

    Tablo5: T Tablosu;

    Tablo6: T Tablosu;

    Sorgu1: TQuery;

    Düğme2: T Düğmesi;

    Etiket1: T Etiketi;

    Memo1:TMemo;

    Etiket3: T Etiketi;

    Düğme3: T Düğmesi;

    prosedür Button1Click(Sender: TObject);

    prosedür Button2Click(Sender: TObject);

    prosedür Button3Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form3: TForm3;

    uygulama

    Unit5, Unit11'i kullanır;

    ($R *.dfm)

    prosedür TForm3.Button1Click(Sender: TObject);

    başlamak

    Form11.göster;

    Form3.kapat;

    son;

    prosedür TForm3.Button2Click(Sender: TObject);

    başlamak

    Sorgu1.ExecSQL;

    Form3.Yenile;

    son;

    prosedür TForm3.Button3Click(Sender: TObject);

    başlamak

    Form3.kapat;

    son;

    Unit4 modülünün açıklaması

    birim Birim4;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

    Diyaloglar, StdCtrl'ler;

    tip

    TForm4 = sınıf(TForm)

    Memo1:TMemo;

    Düğme1: TDüğmesi;

    prosedür Button1Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form4: TForm4;

    uygulama

    Unit1'i kullanır;

    ($R *.dfm)

    prosedür TForm4.Button1Click(Sender: TObject);

    başlamak

    form1.göster;

    son;

    Ünite 5 modülünün açıklaması

    birim Birim5;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, 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: TQuery;

    DBEdit1: TDBEdit;

    DBEdit2: TDBEdit;

    DBEdit3: TDBEdit;

    Etiket1: T Etiketi;

    Etiket2: T Etiketi;

    Etiket3: T Etiketi;

    Etiket4: T Etiketi;

    DBNavigator1: TDBNavigator;

    Düğme1: TDüğmesi;

    prosedür ComboBox1Change(Sender: TObject);

    prosedür Edit1Change(Sender: TObject);

    prosedür Button1Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form5: TForm5;

    uygulama

    Unit11'i kullanır;

    ($R *.dfm)

    prosedür TForm5.ComboBox1Change(Sender: TObject);

    başlamak

    Query1.Active:=true;

    son;

    prosedür TForm5.Edit1Change(Sender: TObject);

    başlamak

    Sorgu1.Aç;

    son;

    prosedür TForm5.Button1Click(Sender: TObject);

    başlamak

    Form11.göster;

    Form5.Kapat;

    son;

    Ünite 6 modülünün açıklaması

    birim Birim6;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

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

    tip

    TForm6 = sınıf(TForm)

    Düğme1: TDüğmesi;

    Düzen1: TDüzenle;

    DataSource1:TDataSource;

    DBGrid1: TDBGrid;

    Sorgu1: TQuery;

    Etiket1: T Etiketi;

    DBNavigator1: TDBNavigator;

    Etiket2: T Etiketi;

    Memo1:TMemo;

    Düğme2: T Düğmesi;

    Etiket3: T Etiketi;

    prosedür Button1Click(Sender: TObject);

    prosedür Button2Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form6: TForm6;

    uygulama

    Unit11'i kullanır;

    ($R *.dfm)

    prosedür TForm6.Button1Click(Sender: TObject);

    başlamak

    Sorgu1.Kapat;

    Query1.Prepared değilse o zaman

    Sorgu1.Hazırla;

    eğer uzunluk(edit1.text)<>0 o zaman

    başka

    başlamak

    Sorgu1.Params.Değer:=0;

    son;

    Sorgu1.Aç;

    son;

    prosedür TForm6.Button2Click(Sender: TObject);

    başlamak

    Form11.göster;

    Form6.Kapat;

    son;

    Ünite 7 modülünün açıklaması

    birim Birim7;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

    Diyaloglar, 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: TQuery;

    Düzenleme2: TDüzenle;

    Düğme1: TDüğmesi;

    DBEdit1: TDBEdit;

    DBEdit2: TDBEdit;

    Etiket3: T Etiketi;

    DBGrid1: TDBGrid;

    Etiket4: T Etiketi;

    Etiket5: T Etiketi;

    DBNavigator1: TDBNavigator;

    Düğme2: T Düğmesi;

    Etiket6: T Etiketi;

    Etiket7: T Etiketi;

    Memo1:TMemo;

    ComboBox1: TComboBox;

    Etiket8: T Etiketi;

    Düğme3: T Düğmesi;

    prosedür Button1Click(Sender: TObject);

    prosedür Button2Click(Sender: TObject);

    prosedür Button3Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form7: TForm7;

    uygulama

    Unit5, Unit11'i kullanır;

    ($R *.dfm)

    prosedür TForm7.Button1Click(Sender: TObject);

    başlamak

    Sorgu1.Kapat;

    Query1.Prepared değilse o zaman

    Sorgu1.Hazırla;

    eğer uzunluk(edit2.text)<>0 o zaman

    Query1.Params.Value:=edit2.Text

    başka

    başlamak

    Sorgu1.Params.Değer:=0;

    edit2.Text:="Bir başlık girin!";

    son;

    Sorgu1.Aç;

    son;

    prosedür TForm7.Button2Click(Sender: TObject);

    başlamak

    form5.show;

    Form7.close;

    son;

    prosedür TForm7.Button3Click(Sender: TObject);

    başlamak

    Form11.göster;

    Form7.close;

    son;

    Ünite 8 modülünün açıklaması

    birim Birim8;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

    tip

    TForm8 = sınıf(TForm)

    Etiket4: T Etiketi;

    DataSource1:TDataSource;

    Sorgu1: TQuery;

    DBGrid1: TDBGrid;

    DBNavigator1: TDBNavigator;

    Düğme1: TDüğmesi;

    Memo1:TMemo;

    prosedür Button1Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form8: TForm8;

    uygulama

    Unit11'i kullanır;

    ($R *.dfm)

    prosedür TForm8.Button1Click(Sender: TObject);

    başlamak

    Form11.göster;

    Form8.close;

    son;

    Ünite 9 modülünün açıklaması

    birim9;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

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

    tip

    TForm9 = sınıf(TForm)

    Düzen1: TDüzenle;

    Sorgu1: TQuery;

    DataSource1:TDataSource;

    DBGrid1: TDBGrid;

    Düğme1: TDüğmesi;

    Sorgu2: TQuery;

    Veri Kaynağı2: TDataSource;

    Düğme2: T Düğmesi;

    DBEdit1: TDBEdit;

    DBNavigator1: TDBNavigator;

    Etiket1: T Etiketi;

    Etiket2: T Etiketi;

    Etiket3: T Etiketi;

    İsim: TComboBox;

    Düğme3: T Düğmesi;

    Memo1:TMemo;

    Etiket4: T Etiketi;

    Button4: TButton;

    prosedür Button1Click(Sender: TObject);

    prosedür Button2Click(Sender: TObject);

    prosedür Button3Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form9: TForm9;

    uygulama

    Unit11, Unit13'ü kullanır;

    ($R *.dfm)

    prosedür TForm9.Button1Click(Sender: TObject);

    başlamak

    Sorgu1.Kapat;

    Query1.Prepared değilse o zaman

    Sorgu1.Hazırla;

    eğer uzunluk(edit1.text)<>0 o zaman

    Query1.Params.Value:=edit1.Text

    başka

    başlamak

    Sorgu1.Params.Değer:=0;

    edit1.Text:="Mezunun adını giriniz!";

    son;

    Sorgu1.Aç;

    son;

    prosedür TForm9.Button2Click(Sender: TObject);

    başlamak

    Sorgu2.Kapat;

    Query2.Prepared değilse o zaman

    Sorgu2.Hazırla;

    eğer 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ı giriniz!";

    son;

    Sorgu2.Aç;

    son;

    prosedür TForm9.Button3Click(Sender: TObject);

    başlamak

    Form11.göster;

    Form9.close;

    son;

    prosedür TForm9.Button4Click(Sender: TObject);

    başlamak

    Form13.QuickRep1.Preview;

    son;

    Unit 10 modülünün açıklaması

    birim Birim10;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

    Diyaloglar, ExtCtrls, QuickRpt, StdCtrls, DB, DBTables, Mask, DBCtrls,

    Izgaralar, DBGrid'ler;

    tip

    TForm10 = sınıf(TForm)

    Düğme1: TDüğmesi;

    Sorgu1: TQuery;

    DataSource1:TDataSource;

    DBEdit1: TDBEdit;

    DBEdit2: TDBEdit;

    Etiket1: T Etiketi;

    Etiket2: T Etiketi;

    Düzen1: TDüzenle;

    Düğme2: T Düğmesi;

    Etiket3: T Etiketi;

    ComboBox1: TComboBox;

    Etiket4: T Etiketi;

    Etiket5: T Etiketi;

    Memo1:TMemo;

    Etiket6: T Etiketi;

    Etiket7: T Etiketi;

    Düğme3: T Düğmesi;

    prosedür Button1Click(Sender: TObject);

    prosedür Button2Click(Sender: TObject);

    prosedür Button3Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form10: TForm10;

    uygulama

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

    ($R *.dfm)

    prosedür TForm10.Button1Click(Sender: TObject);

    başlamak

    Form12.QuickRep1.Preview;

    son;

    prosedür TForm10.Button2Click(Sender: TObject);

    başlamak

    Sorgu1.Kapat;

    Query1.Prepared değilse o zaman

    Sorgu1.Hazırla;

    eğer uzunluk(edit1.text)<>0 o zaman

    Query1.Params.Value:=edit1.Text

    başka

    başlamak

    Sorgu1.Params.Değer:=0;

    edit1.Text:="Bir başlık girin!";

    son;

    Sorgu1.Aç;

    son;

    prosedür TForm10.Button3Click(Sender: TObject);

    başlamak

    Form11.göster;

    son;

    Unit 11 modülünün açıklaması

    birim Birim11;

    arayüz

    kullanır

    Windows, Mesajlar, SysUtils, Değişkenler, Sınıflar, Grafikler, Kontroller, Formlar,

    Diyaloglar, StdCtrl'ler;

    tip

    TForm11 = sınıf(TForm)

    Düğme1: TDüğmesi;

    Düğme2: T Düğmesi;

    Düğme3: T Düğmesi;

    Button4: TButton;

    Button5: TButton;

    Button6: TButton;

    Memo1:TMemo;

    Etiket1: T Etiketi;

    Etiket2: T Etiketi;

    Etiket3: T Etiketi;

    Button7: ​​TButonu;

    Etiket4: T Etiketi;

    Etiket5: T Etiketi;

    prosedür Button2Click(Sender: TObject);

    prosedür Button1Click(Sender: TObject);

    prosedür Button4Click(Sender: TObject);

    prosedür Button3Click(Sender: TObject);

    prosedür Button5Click(Sender: TObject);

    prosedür Button6Click(Sender: TObject);

    prosedür Button7Click(Sender: TObject);

    özel

    (Özel beyanlar)

    halk

    (Kamu beyanları)

    son;

    var

    Form11: TForm11;

    uygulama

    Benzer Belgeler

      Tablo oluşturma ve veri tabanı yönetim sistemlerini tasarlama. Bilgisel tasarım. İlişkisel veritabanı şeması. Sistemlerin uygulanan değeri: tedarikçiler ve onlar tarafından sağlanan mallar hakkında bir rapor. Mağazada malların mevcudiyetinin beyanı.

      dönem ödevi, 12/01/2008 eklendi

      Veritabanı yönetim sistemini kullanarak mal türleri dizini ile çalışanlar, mallar hakkında bilgi içeren bir veritabanının geliştirilmesi MySQL verileri SQL sorguları kullanarak. Konu alanının enfolojik bir modelinin geliştirilmesi. Tabloların yapısı, veritabanı alanları.

      test, 04/13/2012 eklendi

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

      dönem ödevi, 12/17/2009 eklendi

      Veritabanı ve veritabanı yönetim sistemlerinin temel kavramları. Microsoft Access veritabanlarının birlikte çalıştığı veri türleri. VTYS'nin sınıflandırılması ve temel özellikleri. İlişki sonrası veritabanları. Modern bilgi sistemleri dünyasındaki eğilimler.

      dönem ödevi, 28.01.2014 tarihinde eklendi

      Bilgisel bir model geliştirmenin ve bir yapı oluşturmanın özellikleri ilişkisel veritabanı veri. Veritabanı Tasarım Temelleri. İlgili model hakkında bilgi görüntülemek için tabloların, formların, sorguların geliştirilmesi. Veritabanları ve nesneleri ile çalışma.

      dönem ödevi, 11/05/2011 eklendi

      Araştırma özellikleri ve işlevsellik Veritabanı Yönetim Sistemleri Microsoft Office erişim. Ana nesne sınıflarının tanımı. "Ofis çalışması" veritabanının geliştirilmesi. Tabloların, formların, sorguların, raporların ve veri şemalarının oluşturulması.

      özet, 12/05/2014 eklendi

      Veritabanı yönetim sistemlerinin geliştirilmesindeki eğilim. VTYS'nin hiyerarşik ve ağ modelleri. Dağıtılmış bir veritabanı için temel gereksinimler. Dağıtılmış isteklerin işlenmesi, birlikte çalışabilirlik. Veri çoğaltma teknolojisi ve çok katmanlı mimari.

      özet, 29.11.2010 tarihinde eklendi

      Veri tabanları ile ilgili teorik bilgiler ve temel kavramlar. Veritabanı yönetim sistemleri: kompozisyon, yapı, güvenlik, çalışma modları, nesneler. OpenOffice.Org BASE'de veritabanlarıyla çalışma: Sorgu Sihirbazı'nı kullanarak tablolar, ilişkiler, sorgular oluşturma.

      dönem ödevi, 04/28/2011 eklendi

      Bilgi teknolojisi departmanına başvuruların kabulü, işlenmesi ve muhasebeleştirilmesi için bir sistem için bir veritabanı tasarlamak; infolojik ve datalojik modellerin geliştirilmesi, fiziksel bir modelin uygulanması. Veritabanı ile çalışmanın görselleştirilmesi için uygulamaların oluşturulması.

      tez, 01/25/2013 eklendi

      Bilgi nesnelerinin seçimi ve bilgisel modeli. İlişkisel bir veritabanının mantıksal yapısı. Access veritabanı yönetim sisteminde tabloların geliştirilmesi. DBMS Access'te istek, form ve raporların oluşturulması. Kullanıcı uygulama geliştirme.