KMRT BSRN

"Hiç kimsenin ilgisine ihtiyaç duymadığın gün olgunlaşırsın. Hiç kimseden beklentiye girmediğin gün yara almazsın. Ve hiç kimseye bağımlı kalmazsan kazanırsın." OSHO

ADOX ile MDB ya da ACCDB Access Database Oluşturma

Yorum bırakın


Geliştirdiğiniz uygulamalarda kullanmak üzere 2010 öncesi access veri tabanı(*.mdb) ya da 2010 ve sonrası access veri tabanı(*.accdb) oluşturma ihtiyacınız olursa, aşağıdaki kodlar ile bir access veri tabanı dosyasının disk üzerinde oluşturulmasını sağlayabilirsiniz. Ayrıca oluşturmuş olduğunuz veri tabanına tablo eklemesini ve basit veri tiplerinin nasıl tanımlandığını inceleyebilirsiniz.

Öncelikle projenize eklemeniz gereken bir Interop COM Library(kütüphanesi-DLL) bulunmaktadır. Visual Studio projenizde, references kısmına sağ tıklayarak “Add References” diyerek “COM” sekmesinden “Microsoft ADO Ext. 2.8 for DLL and Security” isimli DLL’i ekleyiniz.

adox_dll

adox-dll-references

Ekledikten sonra yukarıdaki resimdeki gibi projenizde “References” kısmında “ADOX” isimli DLL görünüyor olmalıdır. Ardından açıklama satırlarını yazdığım aşağıdaki kod ile veri tabanınızı tablolarınız ile oluşturabilirsiniz.

using Interop;

// Veritabanını oluşturacak olan nesne oluşturulur.
ADOX.Catalog cat = new ADOX.Catalog();
           
// Connection string : Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\myFolder\myAccessFile.accdb;
// Connection string : Provider=Microsoft.JET.OLEDB.4.0;Data Source=C:\myFolder\myAccessFile.mdb;

// Connection string yardımı ile veritabanının oluşturulmasını sağlar.
cat.Create("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + "\\mydb1.accdb;");

// Tablo nesnesi oluşturulur.
ADOX.Table table = new ADOX.Table();
table.Name = "Kisiler";

// Örnek bir kolon oluşturma yöntemi, 
// kolon nesnesi oluşturularak özellikleri set edilir.
// Bu yöntem AutoNumber kolon ihtiyacınızda gerekecektir.
ADOX.Column col = new Column();
col.Name = "Id";
col.Type = DataTypeEnum.adInteger;
col.ParentCatalog = cat;
col.Properties["Autoincrement"].Value = true;
table.Columns.Append(col);

// Farklı ve daha basit yöntem ile kolon oluşturma..
table.Columns.Append("Ad", ADOX.DataTypeEnum.adVarWChar, 20);		// Kısa Metin
table.Columns.Append("MemoCol", ADOX.DataTypeEnum.adLongVarWChar);	// Uzun Metin(Memo)

// Tablo veritabanına eklenir.
cat.Tables.Append(table);

// Bu işlemler sonucu veritabanı açık durumda olduğundan kapatılır.
cat.ActiveConnection.Close();

MessageBox.Show("Veritabanı oluşturuldu. Bağlantı başarılı olarak kapatıldı.");
Reklamlar

Yazar: K. Murat BAŞEREN, MBA, MCP

I am a senior software developer, MCP, consultant, blogger, former chemist and software trainer. My interests range from software developer to technology. I am also interested in web development, education, and coffee.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s