Workbench türünde time sütunu nasıl oluşturulur. MySQL WorkBench görsel bir veritabanı editörüdür. Workbench, bir MySQL veritabanı oluşturmanıza yardımcı olacaktır

Bu yazının amacı, acemi bir geliştiricinin Oralce'nin MySQL Workbench görsel veritabanı tasarım aracını kullanarak hızlı bir şekilde alışmasına ve basit bir veritabanı tasarlamasına ve ER modelini ve SQL dökümünü almasına yardımcı olmaktır.

Daha az kelime ve daha fazla anlam! Dış görünüş program penceresinde, "Veri Modelleme" bölümü şöyle görünür:

Mevcut bir modeli açmak için bağlantıya tıklayın: Mevcut EER Modelini Aç, yeni bir model oluşturmak için - bir parametre seçin: Yeni EER Modeli Oluştur mevcut bir veritabanından bir varlık-ilişki modeli oluşturmak için şu seçeneğe tıklayın: Mevcut Veritabanından EER Modeli Oluşturma ve bir SQL betiğinden bir EER modeli oluşturmak için şunları seçmeniz gerekir: SQL Komut Dosyasından EER Modeli Oluşturma.
Yeni bir model oluşturmak için Yeni EER Modeli Oluştur bağlantısını kullanın, üzerine tıkladıktan sonra, parametreleri içeren bir pencere görüntülenecektir:

Öncelikle tablolar oluşturmanız gerekiyor, bunun için butona tıklayın Tablo Ekle, aşağıdaki form görünecektir:


Önce bir tablo oluşturalım kullanıcılar, kullanıcı verilerini saklayacak bilgi sistemi, alanda Tablo ismi form bölümüne tablonun adını girin sütunlar tablo alanları oluşturun:
- İlk alan İD benzersiz bir kullanıcı numarası içerecek, özelliklerini ayarlayın: Otomatik Artış, Boş Değil, Birincil anahtar Ve Eşsiz, Bölümde veri tipi tamsayı türünü seçin tamsayı.
- Depolanacak olan ikinci alan fio AD SOYAD. kullanıcı, özellik alanını ayarlayın: Geçersiz değil, Birincil anahtar, Bölümde veri tipi dize türünü seçin VARCHAR 255 .
- Üçüncü alan giriş yapmak, kullanıcının oturum açma bilgilerini içerecektir, benzersiz olmalıdır, alan gibi İD, öyleyse onun özelliğini ayarlayalım Eşsiz ve içindeki karakter sayısını ayarlayın 255 .
- Aşağıdaki alanlar: şifreşifre içeren e_posta bir adres içeren E-posta ve alan tip kullanıcı türünü içeren, özel nitelikler olmadan, bir dize türüyle olacaktır. VARCHAR uzun süre 255 son alan dışındaki karakterler tip kim bıktı 45 karakterler.
Yapılan işlemlerden sonra tablo adındaki form kullanıcılarşöyle görünecek:


Grafikte bir tablo görünecektir. kullanıcılar alanlar ve dizinlerle:

Aynı şekilde bir tablo oluşturalım. ayarlar alanları içeren IS veritabanına erişim ayarları ile İD, ev sahibi ana bilgisayar adını (sunucu adresi) belirtmek için, db- veritabanının adı, kullanıcı Ve şifre IP'yi uzak bir sunucuya yüklemek için bir kullanıcı adı ve parola ile.

Daha sonra, zaten bilinen yöntemi kullanarak, şu alanlarda mağazalarla ilgili verileri depolayacak bir mağazalar tablosu oluşturacağız: İD tip tamsayı– anahtar, sıfır olmayan, otomatik artışlı benzersiz, alan isim mağaza adı alanı adres– fiziksel adresi, alan tel- mağaza telefon numarası alan– mağazanın ve sahanın web sitesi e-postaİle e-posta adresi mağaza.

Sonra bir tablo oluşturuyoruz ürünler mağazanın ürünleriyle ilgili verileri şu alanlarda depolamak: İD tip tamsayı– anahtar, sıfır olmayan, otomatik artışlı benzersiz, mağazanın adını saklayan ad alanı, anahtar, tamsayı türünde sıfır olmayan alan shop_id mağaza numarası, alan type_idürün türleri tablosundan ürün numarası hakkında bilgi ile. Marka alanı üreticinin markasıdır, 255 karakter uzunluğundadır, alan modeli– ürün modeli, alan ile veri– ürün tipinin verileri ve özellikleri ile küçük metin, alan img 255 karakter uzunluğunda ürün resminin tam adresi ve fiyat alanında ürünün fiyatı ve garantiürünün garanti süresi ile ilgili bilgileri içeren, 45 karakter uzunluğunda.

Oluşturduğumuz tablolar ayarlar, mağazalar Ve ürünler Bunun gibi:

Ardından, ürün türlerini saklayan bir tabloya ihtiyacımız var. ürün tipi, benzersiz, boş olmayan bir anahtar alandan oluşur İD bir tamsayı türünde otomatik artış ve ürün türünün adını içeren 255 karakter uzunluğunda benzersiz bir ad alanı.

Tablo görünümü aşağıdaki gibidir:

Son iki tablo ise emirler Ve teslimatlar, ilki müşteri siparişleriyle ilgili bilgileri ve son olarak ürünlerin teslimatıyla ilgili verileri içerir.

Tablo alanları emirler: İD anahtar, boş olmayan, otomatik artışlı tamsayı türünde benzersiz alan, alan shop_id mağaza numarasını içeren - bir anahtar, sıfır olmayan tamsayı tipi alan ürün kimliğiürün numarasının saklanması - bir anahtar, sıfır olmayan tamsayı türü alan fio tarih sipariş tarihi ile - tip TARİH, alan miktar sipariş edilen mal sayısı ile – tamsayı türü, alan tel müşterinin telefon numarası ile - 255 karakter uzunluğunda bir dize türü ve sipariş onayı hakkında bilgi içeren bir onay alanı - bir boole türü.

Tablo alanları teslimatlar: Sipariş Kimliği sipariş numarası ile - anahtar, sıfır olmayan, otomatik artışlı benzersiz tamsayı tipi alan, alan alanı fio siparişi veren kullanıcının numarası ile - bir anahtar, sıfır olmayan tamsayı türü alan adres müşteri tarafından belirtilen malların teslimat adresinin saklanması - 255 karakter uzunluğunda bir dize türü, alan zaman Malların istenen teslimat süresinin saklanması - 255 karakter uzunluğunda bir dize türü, alan tarih siparişin müşteri tarafından verildiği tarih ile - örneğin TARİH ve bir boole alanı onaylamak malların teslimatı hakkında bilgi depolamak.

masalar emirler Ve teslimatlar Bunun gibi:

Tablo ilişkileri

Yedi tablodan oluşan bir veritabanı oluşturduk, şimdi tabloları bağlamamız gerekiyor, zaten bir tamsayı türünde anahtar alanlar oluşturduk, bunlar bağlantı için temel olacak.
Örneğin iki tabloyu bağlamak için ürünler Ve ürün tipi, ürünler tablosunun bulunduğu diyagram üzerinde farenin sol düğmesine çift tıklamanız ve sekmeyi seçmeniz gerekir. Yabancı anahtarlar(Yabancı anahtarlar), ardından alanda yabancı anahtar adı benzersiz bir yabancı anahtar adı girin, sekmeye çift tıklayın referans tablosu ve tabloyu seçin ürün tipi, ardından sağda bulunan formda ilgili alanı seçin type_id ve açılan listeden alanı seçin İD.


Böylece, tablonun her iki alanı birbirine bağlıdır, ardından tablolar arasındaki ilişkinin türünü ayarlamanız, görünen tablolar arasındaki ilişkiye tıklayarak pencereyi açmanız ve sekmeyi seçmeniz gerekir. yabancı anahtar ve bölümde kardinalite birden çoğa ilişki türünü seçin ve pencereyi kapatın. Diyagram, tabloların ilişkisini gösterecektir:


Benzer şekilde, tablolardaki tüm anahtar alanları mantıksal olarak birbirine bağlı olacak şekilde bağlarız, ardından tasarlanan veritabanının üçüncüye karşılık geldiğinden emin olmamız gerekir. normal biçim.

normal biçim- ilişkisel bir veri modelindeki bir ilişkinin, onu örnekleme veya veri değiştirmenin mantıksal olarak hatalı sonuçlarına yol açabilecek fazlalık açısından karakterize eden bir özelliği. Normal biçim, bir ilişkinin karşılaması gereken gereksinimler kümesi olarak tanımlanır.

İlişkisel bir modelde, ilişki kavramının tanımı gereği, bir ilişki her zaman ilk normal biçimdedir. Çeşitli tablolara gelince, ilişkilerin doğru temsili olmayabilirler ve buna bağlı olarak ilk normal formda olmayabilirler. Bir ilişki değişkeni, ancak ve ancak birinci normal biçimdeyse ve anahtar olmayan her öznitelik, aday anahtarına indirgenemez (işlevsel olarak eksiksiz) bağımlıysa ikinci normal biçimdedir. Bir veritabanı, ikinci normal forma dönüştürülürse ve anahtar olmayan her sütun birbirinden bağımsızsa, üçüncü normal formda olacaktır.

Böylece, tabanımız üçüncü normal formdadır, çünkü anahtar olmayan her sütun birbirinden bağımsızdır. Bu, veritabanımızın şemasında açıkça görülmektedir:


Tabloların dışında çoğu tablo bire çok ilişki içindedir. teslimatlar Ve emirlerçünkü bire bir ilişkide teslim edildi, yalnızca bir sipariş olabilir, yani Bir siparişin yalnızca bir teslimatı vardır. Bağlantıların geri kalanı yukarıda açıkça belirtilmiştir.

Şimdi veritabanımızı sunucuya yükleyelim. Bunu yapmak için, bağlantıya tıklayarak veritabanına yeni bir bağlantı oluşturun. Yeni bağlantı programın başlangıç ​​penceresinde:

Ardından açılan penceredeki alanları doldurun:


Alanda bağlantı adını belirtin bağlantı adı, listeden bağlantı yöntemini seçin Bağlantı Yöntemi, sekmede ana bilgisayar adını ve bağlantı noktasını ayarlayın parametreler, varsa kullanıcı adı ve şifreyi belirtiniz ve OK butonuna tıklayınız. Ardından sekmeyi açın EER Diyagramı, paneldeki öğeyi seçin veri tabanı ve seçeneğe tıklayın İleri Mühendis:

Pencere göründükten sonra, düğmesine tıklayın "Sonraki", parametreyi seçin MySQL Tablo Nesnelerini Dışa Aktarma ve düğmeye basın "Sonraki":

Butona bastıktan sonra karşınıza SQL kodlu bir sekme gelecek, butonuna basarak kaydedebilirsiniz. Dosyaya kaydet gerekirse ve ardından düğmesine tıklayın "Sonraki". Bağlantı parametrelerini içeren bir pencere görünecektir:


Bağlantı parametrelerinin doğru olup olmadığını kontrol edin ve düğmesine tıklayın "Uygulamak", SQL kodu hata içermiyorsa, kodun yürütülmesinden sonra tabloların listesini içeren bir pencere göreceğiz, aksi takdirde bir hata mesajı görüntülenecektir. Artık veri tabanımız sunucuya yüklenmiştir.

İlginiz için teşekkür ederiz, programın kendisini indirin.


Veritabanı geliştiricisi ne olursa olsun: yeni başlayan (özellikle) veya sakallı bir profesyonel, ne üzerinde çalıştığını, ne geliştirdiğini hayal etmesi onun için her zaman daha kolay ve daha görseldir. Şahsen ben kendimi birinci kategoriye koyuyorum ve malzemeyi anlamak için tasarladığım/geliştirdiğim şeyleri görsel olarak görmek isterim.

Bugüne kadar, var çeşitli programlar ve benzer bir görevle başa çıkan araçlar: bazıları daha iyi, bazıları daha kötü. Ancak bugün biraz MySQL WorkBench hakkında konuşmak istiyorum - veritabanı tasarımını, modellemesini, oluşturulmasını ve operasyonunu, FabForce'tan DBDesigner 4'ün halefi olan MySQL veritabanı sistemi için tek bir kusursuz ortamda birleştiren görsel bir veritabanı tasarım aracı.( C) Vikipedi. MySQL WorkBench iki türde dağıtılır: OSS-Topluluk Sürümü(LGPL altında dağıtılır) ve GD - Standart Sürüm- geliştiricilerin para istediği sürüm. Ama birçokları için yeterli olacağını düşünüyorum ve ÖSS sürümleri (özellikle yeni başlayanlar ve yazılım için ödeme yapmayı istemeyen veya uygunsuz bulanlar ve ayrıca açık programların taraftarları için) kaynak kodu), Özellikle OSS sürümü zengin işlevselliğe sahip olduğundan.

Yani, adından da anlaşılacağı gibi, bu araç, MySQL veritabanları veçok sayıda destekler çeşitli tipler MySQL modelleri (aşağıdaki ekran görüntüsüne bakın) ve yeni başlayanlar için ilişkisel veritabanlarını (özellikle MySQL) daha iyi anlamak ve incelemek için vazgeçilmez bir araç olacaktır:

Böylece, herhangi bir MySQL geliştiricisi ihtiyacı olanı bulacaktır. Ayrıca MySQL Çalışma Tezgahı mevcut bir veritabanını bağlamanıza, SQL sorgularını ve SQL komut dosyalarını yürütmenize, veritabanı nesnelerini düzenlemenize ve yönetmenize olanak tanır, ancak ilişkisel veritabanlarında uzmanlaşmaya yeni başlayanlar için, bence en ilginç olanı, oluşturma yeteneğidir. EER Modelleri Veri tabanı. Başka bir deyişle, bu, veritabanınızdaki tablolar arasındaki tüm ilişkilerin görsel bir temsilidir ve gerektiğinde kolayca bir SQL betiği olarak sunulabilir, düzenlenebilir veya yeni bir görünüm oluşturulabilir. Ama bunun hakkında daha sonra. İlk olarak, ana gözün nasıl göründüğüne bir bakalım. MySQL Çalışma Tezgahı(5.2.33 revizyon 7508):
Veritabanınızın bir EER modelini oluşturmak için " Yeni EER Modeli Oluştur". Sonuç olarak, diyagramlar, tablolar, görünümler, prosedürler ekleyebileceğimiz / oluşturabileceğimiz; kullanıcılar için çeşitli erişim hakları ayarlayabileceğimiz; SQL komut dosyalarını kullanarak bir model oluşturabileceğimiz bir sekmemiz olacak. Bu sekme şöyle görünür:
Tablolar ve veritabanları oluşturma sürecini dikkate almayacağız çünkü burada her şey basit. Bitmiş modelin yalnızca son halini vereceğim (aşağıdaki ekran görüntülerine bakın). Ayrıca, tabloların bağlantı satırının (kesikli çizgi) üzerine gelirseniz, "bağlantı", birincil anahtar ve yabancı anahtar farklı bir renkle vurgulanır. Bir tablonun üzerine gelirseniz, tablonun kendisi ve seçilen tabloya ait tüm bağlantılar vurgulanır.

Tabloyu düzenlemek için ihtiyacımız olan tabloya sağ tıklayın ve " Tabloyu Düzenle...". Sonuç olarak, pencerenin altında tablo adını, sütunları, yabancı anahtarları ve çok daha fazlasını değiştirebileceğiniz ek bir tablo düzenleme alanı görünecektir. Bir tabloyu bir SQL'e dışa aktarmak için komut dosyası, ihtiyacımız olan tabloya sağ tıklayın ve " SQL'i Panoya Kopyala" ve ardından panodan istenen konuma / programa / dosyaya yapıştırın.

Ve şimdi doğrudan hakkında kurulum MySQL Çalışma Tezgahı. Doğal olarak, önce MySQL WorkBench'i indirmeniz gerekiyor. Bunu yapmak için, sayfanın altındaki açılır listeden MySQL WorkBench indirme sayfasına gidin, ihtiyacımız olanı seçin işletim sistemi. Sonuç olarak, birkaç indirme seçeneği sunulacak:

  • işletim sistemi için pencereler MSI yükleyicisini, programın zip arşivini ve ayrıca kaynak kodlu arşivi indirebilirsiniz. Bu işletim sistemi için MySQL Çalışma Tezgahı yalnızca 32 bit Windows için indirilebilir;
  • kullanıcılar için ubuntu seçim, Windows kullanıcılarına göre biraz daha zengindir - indirmemiz önerilir MySQL Çalışma Tezgahı Ubuntu sürümleri 10.04, 10.10 (yazım sırasında) ve borç paketlerinin 32- veya 64-bit sürümleri için;
  • İçin rpm tabanlı dağıtımlar ve bu durumda Fedora, Suse Linux ve RedHat/Oracle Linux, MySQL Çalışma Tezgahı 32 bit ve 64 bit işletim sistemi için derlemeler sunulur;
  • Macintosh kullanıcıları da unutulmadı - onlar için yalnızca 32 bit işletim sistemi için bir derleme var;
  • ve tabii ki programın kaynak kodunu da indirebilirsiniz;

Bu nedenle, istediğiniz indirme seçeneğini seçin ve tıklayın İndirmek. O zaman kendimizi tanıtmamız istenecektir: kayıtlı kullanıcılar için - bir kullanıcı adı ve şifre girmek için, yeni başlayanlar için - kaydolmak için. Kendinizi tanıtmak istemiyorsanız, aşağıdaki seçeneği seçin " "Hayır teşekkürler, beni sadece indirmelere götür!" ve indirmek için en yakın yansıyı seçin. Ayrıca, yüklemeden önce, yüklediğinizden emin olun. mysqlclient,.aksi takdirde MySQL WorkBench yüklemeyi reddedecektir.

Linux kullanıcıları için hatırlanması ve bilinmesi gerekenler:

Doğal olarak, Windows'ta olduğu gibi, MySQL İstemcisini de unutmayın. Ubuntu kullanıcıları için - programın sürümünü Ubuntu'nuzun sürümüne uygun olarak indirmeniz gerekir Kurulum sırasında, varsa, büyük olasılıkla işletim sisteminizde hangi paketlerin eksik olduğunu size söyleyecek olan hata mesajlarına dikkatlice bakın. Bununla ilgili aşağıda okuyun.

Rmp tabanlı dağıtımlarda işler nasıldır maalesef bilmiyorum çünkü. Bu tür dağıtımları hiç kullanmadım, ancak bunun debian tabanlı dağıtımlarla hemen hemen aynı olduğunu düşünüyorum.

Montaj olmadığını fark etmiş olabilirsiniz. MySQL Çalışma Tezgahı işletim sistemi için Debian GNU/Linux. Ancak, uygulamanın gösterdiği gibi, sorun değil. Kurulum için MySQL Çalışma Tezgahı Debian 6.0'da (Squeeze) kullanacağız borç- için paket Ubuntu 10.04(işletim sisteminizin bitliğini unutmayın: x86 veya x64). İndirilen deb paketini kurmak için yardımcı programı kullanabileceğinizi hatırlatmama izin verin gdebi veya konsolda root olarak aşağıdaki komutu girin:

# dpkg -i mysql-workbench-gpl-5.2.33b-1ubu1004-amd64.deb Örneğin, MySQL WorkBench'i kurarken aşağıdaki hatayı aldım:
dpkg: paket bağımlılıkları mysql-workbench-gpl paketinin özelleştirilmesini engelliyor:
mysql-workbench-gpl, libcairomm-1.0-1'e (>= 1.6.4) bağlıdır, ancak:
libcairomm-1.0-1 paketi kurulu değil.
mysql-workbench-gpl libctemplate0'a bağlıdır, ancak:
libctemplate0 paketi kurulu değil.
mysql-workbench-gpl, libgtkmm-2.4-1c2a'ya (>= 1:2.20.0) bağlıdır, ancak:
libgtkmm-2.4-1c2a paketi kurulu değil.
mysql-workbench-gpl, libpangomm-1.4-1'e (>= 2.26.0) bağlıdır, ancak:
libpangomm-1.4-1 paketi kurulu değil.
mysql-workbench-gpl, libzip1'e (>= 0.9) bağlıdır, ancak:
libzip1 paketi kurulu değil.
mysql-workbench-gpl, python-paramiko'ya bağlıdır, ancak:
python-paramiko paketi kurulu değil.
mysql-workbench-gpl, python-pysqlite2'ye bağlıdır, ancak:
python-pysqlite2 paketi kurulu değil.
dpkg: mysql-workbench-gpl seçeneğini işleyemedi (--install):
bağımlılık sorunları -- yapılandırılmamış bırakın
Aşağıdaki paketler işlenirken hatalar oluştu:
mysql-workbench-gpl

Bu hatayı düzeltmek için konsola bazı paketleri yüklemek üzere bir komut yazmam yeterli oldu:

# yetenek libzip1 libcairomm-1.0-dev libctemplate0 libgtkmm-2.4-1c2a'yı yükleyin

Yukarıdaki paketleri kurmak için yöneticinin sağladığı ek paketlere ihtiyacınız olacak. uygun indirmeyi teklif edin. Gerekli tüm paketleri kurduktan sonra MySQL WorkBench sorunsuz bir şekilde kurulur.

Her şey: MySQL WorkBench başarıyla kuruldu ve nasıl çalışılacağını öğrenmeye hazır.

güncelleme:
Yanılmıyorsam, Ubuntu 12.04'ten beri MySQL WorkBench, dağıtımın depolarında bulunabilir. Bu nedenle, kurulum işlemi çok daha kolay ve herhangi bir koltuk değneği olmadan.
MySQL WorkBench'i kurmak için terminalde aşağıdaki komutu girmeniz yeterlidir:
sudo aptitude mysql-workbench'i kurun

MySQL veritabanı yapısı nasıl oluşturulur? MySQL tabloları nasıl oluşturulur? Program veritabanı oluşturmak için MySQL Workbench!

MySQL Workbench kullanarak bir MySQL veritabanı yapısı nasıl oluşturulur?

Kendi veritabanınızı oluşturmak istiyor ancak SQL kullanarak tablolar ve aralarındaki ilişkileri oluşturmaktan sıkıldınız mı? bedava kullan yazılım Görsel olarak veritabanları oluşturmak için oluşturulmuş MySQL Workbench.

MySQL Workbench, tabloların görsel sunumunu kullanarak bir MySQL veritabanını modellemenizi sağlar. Bu, veritabanının yapısını özenle tanımlama ihtiyacını ortadan kaldırır, SQL'de MySQL Workbench programı kodu sizin için üretecektir! Programı web sitesinden ücretsiz olarak indirebilirsiniz: http://www.mysql.com/downloads/workbench, hem kurulum sürümünü hem de yalnızca paketi açmayı gerektiren sürümü indirebilirsiniz ( mevcut sistemlerşunları içerir: Windows ubuntu linux, Fedora, Mac OS X).

MySQL veritabanı oluşturmak için bir program nasıl kullanılır?

MySQL Workbench'i açın, Dosya -> Yeni Model'i seçin veya CTRL + N tuşlarına basın. Aşağıdaki resimde veritabanı modelleme alanı gösterilmektedir:

Yapmanız gereken ilk şey, niteliklere sahip bir tablo oluşturmaktır - bu nedenle "Tablo Ekle" düğmesini tıklayın.

Uygun alanları doldurun: tablo adı, nitelikler (bunlardan birinin ana anahtar olması gerektiğini unutmayın - PK "birincil anahtar" onay kutusuyla belirtilir).

Tablolar oluşturduğunuzda, bunların birbirleriyle nasıl ilişkilendirileceğini düşünmelisiniz.

Tüm tabloları doldurduysanız, konular arasındaki ilişkiyi tanımlamak için "Diyagram ekle" düğmesine tıklayın.

Grafik Aşamasında oluşturulan tabloyu gösteren aşağıdakine benzer bir pencere göreceksiniz.

Burada sadece bir veritabanı yapısının nasıl modelleneceğini gösterdiğim için veritabanı yapımız doğru olmayacaktır. Bu nedenle çalışma alanındaki tabloları genişletebilirsiniz.

Şimdi bir ilişki oluşturmak için masaya katılın.

Diyelim ki şöyle görünüyorlar:

Kitap, bir okuyucuya ait olabilir

Okuyucu birkaç kitap ödünç alabilir

Tipik olarak, bir günlük oluşturmanıza izin veren üç seçenek vardır (1:1, çok için 1 ve çoktan çoğa):

Böylece, şekilde gösterildiği gibi bağlantılar oluşturuyoruz:

İlişkiye çift tıklarsanız, ek seçenekler belirleyebilirsiniz.

Yapıyı oluşturmayı bitirdiğinizde, tabanı oluşturabilirsiniz. SQL verileri sadece ithal ederek. Bunu yapmak için, Dosya -> Dışa Aktar -> menüsünü seçin ve istediğiniz seçeneği belirleyin, veriler esas olarak tablolar ve kullanıcılardır (varsa). Oluşturduğum dosya aşağıda gösterilmiştir.

Bir web geliştiricisi, yarattığı ve geliştirdiği projelerle büyür. Projelerin büyümesiyle birlikte, yazılım bölümünün karmaşıklığı artar, onun tarafından işlenen veri miktarı kaçınılmaz olarak artar ve ayrıca veri şeması karmaşıklığı. Diğer web geliştiricileri ile iletişim, MySQL veritabanlarının aramızda çok popüler olduğunu ve iyi bilinenlerin olduğunu gösteriyor. PHPMyAdmin. Küçük projelerden büyük projelere, cms'den çerçevelere geçerken, benim gibi birçok kişi MySQL'e sadık kalıyor. Ancak, çok sayıda tablo ve ilişki içeren karmaşık bir veritabanı tasarlamak için PHPMyAdmin'in yetenekleri son derece eksiktir. Bu yüzden bir inceleme yazmaya karar verdim MySQL Workbench, MySQL ile çalışmak için harika bir ücretsiz masaüstü programıdır.

İncelemenin ilk bölümünde, programla çalışmanın temellerini ele alacağım, böylece bu makaleyi istediğiniz gibi kullanabilirsiniz. acemi kullanım kılavuzu.İkinci bölüm, uzak bir sunucuyla çalışırken Workbench'i savaşta kullanmaya ayrılacak. İçinde temel vereceğim talimatlar ve bir sunucu bağlantısı kurma ve bununla senkronizasyon için öneriler.

MySQL Çalışma Tezgahı- bir veritabanının tasarımını, modellemesini, oluşturulmasını ve çalıştırılmasını MySQL veritabanı sistemi için tek bir kusursuz ortamda birleştiren görsel bir veritabanı tasarım aracı.

Programın gerçekten harika olduğunu söylemeliyim. Hızlı ve zevkle atmanıza izin verir proje veri şemaları, tasarım varlıklar ve ilişkiler aralarında acısız değişiklikleri uygulaşemaya ve aynı hızla ve acısız bir şekilde senkronize etmek bir uzak sunucu ile. A grafik editörü EER diyagramları komik hamamböceklerini andıran bu araç, veri modelinin genel resmini görmenizi ve hafifliğinin ve zarafetinin tadını çıkarmanızı sağlar :) İlk denemeden sonra bu araç, web programcısının savaş cephaneliğinde vazgeçilmez bir yardımcı olur.

MySQL Workbench'i İndirin

MySQL Workbench dağıtımı bu sayfada mevcuttur. Bu yazının yazıldığı sırada programın en son sürümü Sürüm 6.1. İndirmeden önce aşağıdaki platformlardan birini seçmelisiniz:

Bir platform seçtikten sonra, sizden Oracle'a kaydolmanız veya oturum açmanız istenir. İstemezseniz aşağıda link var. "Hayır teşekkürler, sadece indirme işlemime başla"- üstüne tıkla ;)

işin başlangıcı

Programın başlangıç ​​ekranı, işlevselliğinin ana alanlarını yansıtır - veritabanı modellerinin tasarımı ve yönetimi:

Ekranın üst kısmında bağlantıların bir listesi bulunur. MySQL sunucuları projeleriniz ve ekranın alt kısmında son açılan veri modellerinin bir listesi. İş genellikle ile başlar veri şeması oluşturma veya MySQL Workbench'te mevcut bir yapıyı yükleme. Hadi çalışalım!

Veri modeli oluşturma ve düzenleme

Bir model eklemek için "Modeller" başlığının yanındaki artı işaretine tıklayın veya "Dosya → Yeni Model" (Ctrl + N):

Bu ekranda veritabanının adını girin, varsayılan kodlamayı seçin ve gerekirse yorum alanını doldurun. Tablo oluşturmaya başlayabilirsiniz.

Tablo ekleme ve düzenleme

Proje veritabanlarının listesi ve veritabanı içindeki tabloların listesi sekmesinde yer alacaktır. "Fiziksel Şemalar". Bir tablo oluşturmak için üzerine çift tıklayın. "+Tablo Ekle":

Alanların listesini ve özelliklerini düzenlemek için uygun bir arayüz açılacaktır. Burada alan adını, veri türünü belirleyebilir ve alanlar için çeşitli nitelikler ayarlayabiliriz: bir alan atayın birincil anahtar (PK), işaretle Boş Değil (NN), ikili (BIN), benzersiz (UQ) ve diğerleri, saha için ayarlanmış otomatik artış (AI) Ve varsayılan değer.

Endeks Yönetimi

Sekmede tablo indekslerini ekleyebilir, silebilir ve düzenleyebilirsiniz. "Dizinler" tablo yönetimi arayüzü:

Dizinin adını giriyoruz, türünü seçiyoruz ve ardından bu dizine katılan alanların listesini gerekli sırayla işaretliyoruz. Alanların sırası, onay kutularının işaretlendiği sıraya karşılık gelir. Bu örnekte, alana benzersiz bir dizin ekledim Kullanıcı adı.

Tablolar arasındaki ilişkiler

Yabancı anahtarların ayarlanması ve tabloların bağlanması yalnızca tablolar için mümkündür. InnoDB(bu depolama sistemi varsayılan olarak seçilidir). Her tabloda ilişkileri yönetmek için bir sekme vardır. "Yabancı anahtarlar":

Bağlantı eklemek için sekmeyi açın "Yabancı anahtarlar" çocuk masası, yabancı anahtarın adını girin ve seçin üst tablo. Ayrıca sütundaki sekmenin orta kısmında Kolon alt tablodan anahtar alanını seçin ve sütunda Başvurulan Sütun- üst tablodan karşılık gelen alan (alan türleri eşleşmelidir). Yabancı anahtarlar oluştururken karşılık gelen dizinler alt tabloda otomatik olarak oluşturulur.

Bölümde Yabancı Anahtar Seçenekleri karşılık gelen alan değiştiğinde yabancı anahtarın davranışını yapılandırın (GÜNCELLEMEDE) ve kaldırma (SİLME ÜZERİNE) ebeveyn girişi:

  • KISITLAMAK- ana girişi değiştirirken / silerken bir hata atın
  • ÇAĞLAYAN- ebeveyn kaydı değiştiğinde yabancı anahtarı güncelle, ebeveyn silindiğinde alt kaydı sil
  • BOŞ AYARLA- yabancı anahtar değerini ayarla HÜKÜMSÜZ bir ebeveyni değiştirirken/silerken (bayrağı ayarlanmış alanlar için kabul edilemez GEÇERSİZ DEĞİL!)
  • HİÇBİR EYLEM- hiçbir şey yapmayın, ancak aslında etki RESTRICT'e benzer

Yukarıdaki örnekte, alt tabloya ekledim Kullanıcı profili ana tabloya bağlanmak için yabancı anahtar kullanıcı. Bir alanı düzenlerken Kullanıcı kimliği ve tablodan pozisyonları kaldırmak kullanıcı benzer değişiklikler olacak otomatik olarak tablodan ilgili kayıtlara olur Kullanıcı profili.

Bir proje oluştururken, genellikle başlangıç ​​verilerini veritabanına eklemek gerekir. Bunlar kök kategoriler, yönetici kullanıcılar vb. olabilir. MySQL Workbench tablo yönetiminde bunun için bir sekme var "Ekler":

Örnekte görebileceğiniz gibi, veritabanına yazmadan önce verilere bazı MySQL işlevlerini uygulamanız gerekirse, bu sözdizimi kullanılarak yapılır. \func functionName("veri"), Örneğin, \func md5("şifre").

EER diyagramı oluşturma (varlık-ilişki diyagramı)

Veri şemasını, varlıkları ve bunların ilişkilerini grafik bir biçimde temsil etmek için MySQL Workbench bir EER diyagram düzenleyicisine sahiptir. Veritabanı yönetimi ekranının üst kısmında bir diyagram oluşturmak için simgeye çift tıklayın. "+Diyagram Ekle":

Arayüzünde tablolar oluşturabilir ve düzenleyebilir, aralarına çeşitli türlerde bağlantılar ekleyebilirsiniz. Diyagramda zaten var olan bir tabloyu diyagrama eklemek için tabloyu panelden sürüklemeniz yeterlidir katalog ağacı.

Bir veri şemasını dışa aktarmak için grafik dosyası seçme "Dosya → Dışa Aktar" ve sonra seçeneklerden biri (PNG, SVG, PDF, PostScript Dosyası).

Mevcut veri şemasını içe aktar (SQL dökümünden)

Zaten bir veri şemamız varsa, daha fazla çalışma için kolayca MySQL Workbench'e aktarılabilir. Modeli SQL dosyasından içe aktarmak için "Dosya → İçe Aktar → Tersine Mühendis MySQL Komut Dosyası Oluştur...", ardından istediğiniz SQL dosyasını seçin ve tıklayın "Yürüt >"

MySQL Workbench ayrıca veri modelinin doğrudan bir uzak sunucuyla içe aktarılmasını ve senkronize edilmesini sağlar. Bunun için oluşturmanız gerekir MySQL'e uzaktan erişim bağlantısı, bu incelemenin devamında bahsedeceğim.

Makaledeki demo projesi bu bağlantıdan indirilebilir. Size başarılar ve güzel hamamböceği şemaları diliyorum!




Tepe