Veritabanı Meta Verileri – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları
Meta Veri
Çoğu JDBC programı, belirli bir veritabanıyla ve bu veritabanındaki belirli tablolarla çalışmak üzere tasarlanmıştır; program tam olarak ne tür verilerle uğraştığını bilir. Ancak bazı uygulamaların, sonuç kümesi yapıları veya temel alınan veritabanı yapılandırmaları hakkındaki bilgileri dinamik olarak keşfetmesi gerekir.
Bu bilgilere meta veriler denir ve JDBC, bununla başa çıkmak için iki sınıf sağlar: DatabaseMetaData ve ResultSetMetaData. Bilinen bir ortamın dışına dağıtılacak bir JDBC uygulaması geliştiriyorsanız, bu arayüzlere aşina olmanız gerekir.
Veritabanı Meta Verileri
Java.sql.DatabaseMetaData arayüzü ile bir veritabanının yapısı hakkında genel bilgilere ulaşabilirsiniz. Bir program, bu sınıfı kapsamlı bir şekilde kullanarak, SQL’ini ve JDBC kullanımını anında, farklı düzeylerde veritabanı ve JDBC sürücü desteğini barındıracak şekilde uyarlayabilir.
Veritabanı meta verileri belirli bir bağlantıyla ilişkilendirilir, bu nedenle DatabaseMetaData nesneleri, Connection’ın getMetaData() yöntemiyle oluşturulur.
DatabaseMetaData, veritabanı hakkında gerçek yapılandırma bilgilerini almak için arayabileceğiniz çok sayıda yöntem sağlar. Bunlardan bazıları String nesneleri (getURL()), bazıları boolean değerleri (nullsAreSortedHigh()) ve yine diğerleri tamsayılar (getMaxConnections()) döndürür. Tam liste “Java.rmi.server Paketi” olarak verilmiştir.
Bir dizi başka yöntem, ResultSet nesnelerini döndürür. getColumns(), getTableTypes() ve getPrivileges() gibi bu yöntemler genellikle karmaşık veya değişken uzunluklu bilgileri kapsar. Örneğin getTables() yöntemi, veritabanındaki her tablonun adını ve bunun yanında çok sayıda ek bilgiyi içeren bir ResultSet döndürür.
DatabaseMetaData yöntemlerinin çoğu, basit joker karakter aramasına izin veren argüman olarak dize kalıplarını alır. Yüzde işareti (%) herhangi bir sayıda karakterin yerini alır ve alt çizgi ( _ ) tek bir karakter eşleşmesini gerektirir. Böylece %CUSTOMER%, NEW_CUSTOMERS, CUSTOMER ve CUSTOMERS ile eşleşirken, MÜŞTERİ% yalnızca CUSTOMER ve CUSTOMERS ile eşleşir. Bu kalıpların tümü büyük/küçük harf duyarlıdır.
Örnek, bazı temel veritabanı özelliklerini, tabloların listesini ve her tablodaki dizinlerin listesini görüntüleyen basit bir programı gösterir. Program, tüm DatabaseMetaData komutları için tam desteğe sahip bir JDBC sürücüsünü varsayar.
Sonuç Kümesi Meta Verileri
ResultSetMetaData arabirimi, belirli bir ResultSet’in yapısı hakkında bilgi sağlar. ResultSetMetaData tarafından sağlanan veriler, kullanılabilir sütunların sayısını, bu sütunların adlarını ve her birinde bulunan veri türünü içerir. Örnek, bir tablonun içeriğini görüntüleyen ve her sütun için veri türünü gösteren kısa bir programı göstermektedir.
Burada kullanılan anahtar yöntemler getColumnCount(), getColumnLabel() ve getColumnTypeName()’dir. getColumnTypeName() tarafından döndürülen tür adlarının veritabanına özgü olduğunu unutmayın (örneğin, Oracle bir dize değerine VARCHAR olarak başvurur; Microsoft Access buna METİN adını verir).
Metadata Nedir
Metadata bulma
Nft metadata Nedir
Metadata Örnekleri
Metadata Nedir ve iş analisti için önemi Nedir
Metadata NFT
Meta data
Metaveri Nedir
İşlemler
İşlem, atomik olarak veya tek, bölünmez bir işlemmiş gibi davranması gereken birkaç işlem grubudur. Veritabanlarıyla ilgili olarak, işlemler, bir veya daha fazla veritabanı eylemini tek bir atomik birimde birleştirmenize izin verir.
Bir hedefi gerçekleştirmek için birden fazla SQL ifadesi yürütmesi gereken bir uygulamanız varsa (örneğin, öğeleri bir ENVANTER tablosundan bir SEVKİYAT tablosuna taşıması gereken bir envanter yönetim sistemi), hedefi gerçekleştirmek için muhtemelen JDBC’nin işlem hizmetlerini kullanmak istersiniz. .
Bir işlemle çalışmak şu adımları içerir: işlemi başlatın, bileşen işlemlerini gerçekleştirin ve ardından tüm bileşen işlemleri başarılı olursa işlemi tamamlayın veya işlemlerden biri başarısız olursa işlemi geri alın. Bir işlemi geri alma yeteneği temel özelliktir.
Bu, herhangi bir SQL ifadesinin başarısız olması durumunda, tüm işlemin başarısız olduğu ve bileşen işlemlerinin hiçbiri gerçekleşmemiş gibi olduğu anlamına gelir. Bu nedenle, örneğin ENVANTER tablosunun borçlandırıldığı, ancak NAKLİYE tablosunun alacaklandırılmadığı bir duruma son vermek imkansızdır.
İşlemler ve veritabanlarıyla ilgili diğer bir sorun, veritabanındaki değişikliklerin sistemin geri kalanı tarafından ne zaman görünür hale gelmesiyle ilgilidir. İşlemler, veritabanının geri kalanından farklı düzeylerde izolasyonda çalışabilir. En izole düzeyde, tüm bileşen SQL ifadelerinin sonuçları, yalnızca işlem tamamlandığında sistemin geri kalanına görünür hale gelir. Başka bir deyişle, sevkiyat verileri güncellenmeden önce hiç kimse azaltılmış envanteri görmez.
JDBC’deki Bağlantı nesnesi, işlem yönetiminden sorumludur. JDBC ile işlemleri her zaman bir biçimde kullanıyorsunuz. Varsayılan olarak, otomatik işlem gerçekleştirme modunda yeni bir bağlantı başlar; bu, her SQL ifadesinin hemen veritabanına taahhüt edilen ayrı bir işlem olarak yürütüldüğü anlamına gelir.
Birden çok ifade kullanan bir işlem gerçekleştirmek için, afalseargument ile setAutoCommit() yöntemini çağırmanız gerekir. (Auto-commit’in durumunu getAutoCommit() yöntemiyle kontrol edebilirsiniz.) Artık işleminizi oluşturan SQL deyimlerini çalıştırabilirsiniz. İşiniz bittiğinde, işlemi gerçekleştirmek için commit() yöntemini veya geri almak için rollback() yöntemini çağırırsınız.
auto−commit false olarak ayarlandığında, her işlemin sonunda commit() (veya rollback()) öğesini çağırmayı unutmamalısınız, aksi takdirde değişiklikleriniz kaybolur.
JDBC, veritabanının işlem çakışmalarıyla nasıl ilgilendiğini, başka bir deyişle kimin neyi ne zaman gördüğünü kontrol etmenize olanak tanıyan bir dizi işlem yalıtım modunu destekler. JDBC, bazıları tüm veritabanları tarafından desteklenmeyebilecek beş mod tanımlar. Varsayılan mod, temel alınan veritabanına ve sürücüye bağlı olarak değişir. Daha yüksek izolasyon seviyeleri daha düşük performans sağlar.
Bağlantı arayüzünde tamsayı sabitleri olarak tanımlanan beş standart seçenek aşağıda verilmiştir.
TRANSACTION_NONE
İşlemler devre dışı bırakılır veya desteklenmez.
TRANSACTION_READ_UNCOMMITTED
Kirli okumalara izin veren minimum işlem desteği. Başka bir deyişle, diğer işlemler, işlem kendini taahhüt etmeden önce bir işlemin SQL ifadelerinin sonuçlarını görebilir. İşleminizi geri alırsanız, diğer işlemler geçersiz verilerle kalabilir.
TRANSACTION_READ_COMMITTED
İşlemlerin, taahhüt edilmeyen değişikliklerle satırları okuması engellenir veya başka bir deyişle kirli okumalara izin verilmez.
TRANSACTION_REPEATABLE_READ
Kirli okumaların yanı sıra tekrarlanabilir okumalara karşı koruma sağlar. Bir işlemin, daha sonra başka bir işlem tarafından değiştirilen (ve taahhüt edilen) bir satırı okuduğunu varsayalım. İlk işlem satırı tekrar okursa, ilk işlem ikinci seferde farklı bir değer almaz. Yeni veriler, yalnızca commit()’i çağırdıktan ve başka bir okuma gerçekleştirdikten sonra ilk işlem tarafından görülebilir.
TRANSACTION_SERIALIZABLE
TRANSACTION_REAPEATABLE_READ için tüm desteği sağlar ve satır eklemelerine karşı da koruma sağlar. Bir işlemin bir dizi satırı okuduğunu ve ardından başka bir işlemin kümeye bir satır eklediğini varsayalım. İlk işlem seti tekrar okursa yeni eklenen satırı görmez. Başka bir deyişle, bu yalıtım düzeyi, veritabanını işlemlere birer birer gerçekleşiyormuş gibi davranmaya zorlar.
Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır.
1) Backlink Paketi 50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)