Vbasic 6.0 Database
-
Database nasıl oluşturulur, nasıl bağlantıları yapılır, nasıl kullanılır, vs nasıl yapılır elimden geldiği kadar açıklayacam. Anlatacaklarım data nesnesine göredir.
İlk önce veritabanını oluşturalım. Burada en çok dikkat etmemiz gereken kural türkçe karakter kullanmamak;
Menü'den Add->Ins->Visual Data Manager tıklanır.Visual Data penceresinden; File->New->Microsoft Accsess->Versiom 7.0 seçilir. Veritabanımızın yolunu belirleyip ve bir isim verilip kaydete tıklanır. Biz örnek olarak databasemize " tbt " ismini verelim. Tekrar Visual Data penceresine gelip Properties'e sağ tıklayıp new table'ye tıklarız. Table Name kısmına tablomuzun ismini gireriz. Örnek olarak " kayit " diyelim. Add Field butonuna tıkayıp alan isimlerini gireriz. Tıkladığımızda gelen sayfanın name kısmına alan adını gireriz. Biz örnek olarak " isim " girelim. Type kısmını ise kullanacağımız alan adına göre değiştirmemiz lazım. Çoğunu açıklayım;
Boolean ----> Sadece true ve false değeri alır. Genelde checkbox veya option button'da kullanılır.
Byte ---> 0 ve 255 sayıları arasındaki değerleri kapsar.
Integer ---> –32.768 ile +32.767 arasındaki değerleri saklayabilir.
Long ---> -2.147.483.648 ile +2.147.483.647 sayıları arasındaki değerleri kapsar.
Currency ---> 14 haneli sayılara kadar veri kapsar ve virgülden sonrada 4 haneli değer alabilir.
Single ---> Küsürlü sayılar için kullanılır. mesela: 3,2546 + 4,6989 gibi...
Double ---> En büyük sayısal veri tipidir. 16 haneye kadar hassastır. Sonrasında yuvarlatılır.
Date/Time ---> Tarih ve saat fonksiyonlarını databaseye tarih ve saat formatında kaydetmek için kullanılır. Normalde text veri tipindede tarih veya saat kayıt edilir. Ama tarih veya saat'le işlem yapmaya kalkıştığınız zaman hata mesajı alırsınız. çünkü o tarih ve saati text biçiminde kayıt etmiştir. String(karakter) ifade olarak görür. Date/time'da tanımladığınız zaman saat ve tarihlerde istediğiniz gibi işlem yapabilirsiniz.
Text ---> Metin türü bilgileri saklamak için kullanılır.
Binary ---> Veritabanına resim eklemek için kullanılır.
Biz isim kaydeteceğimiz için text'i seçip " ok " butonuna tıkladığınızda alan adının eklendiğini görürüz. Birde " soyisim " olarak text tipinde bir alan adı daha oluşturalım. ok dedikten sonra AddField menüsünü " close " butonuyla kapatıp Table Structure Sayfasınada Build the Table diyoruz ve tablomuzu ve alanlarımızı oluşturuyoruz.
Şimdi form'mumuza data nesnesini ekliyoruz. sağdaki Properties penceresinden database name özelliğine tıklıyoruz. Veritabanımızın yolunu gösteriyoruz ve aç diyoruz. Yine o özellik penceresinin aşağı kısımlarında RecordSource 'ye tıklıyoruz ve oluşturduğumuz alan adımızın yani bizim örneğimize göre " kayit " seçeneğinin çıkması gerekiyor ve ona tıklıyoruz. Data nesnemizi veritabanımıza bağladık.
Şimdi alanlarımıza bilgi girmek, silmek, kayıtlar arası geçiş gibi olayları anlatayım.
Text kutularını veritabanına nasıl bağlarız? cevap= formumuza 2 tane text ekleyip ikisininde datasource 'lerini " data1 " olarak ayarlarız. sonra ilk text kutusunun datafield 'ini " isim ", 2. text kutusununkini de " soyisim " olarak ayarlarız. text'lerin içeriğinide " text " özelliğinden sileriz. açtığımızda içi boş olsun.
Kayıt Ekleme
bir command buton ekleyip ismini " yeni kayıt " olarak değiştirelim. (caption özelliğinden) Çift tıkladığımızda gelen komut satırına " data1.recordset.addnew " deriz. Bu komutun anlamı; veritabanına yeni kayıt girmek.
sonra başka bir buton ekleyip ismini " Kaydet " olarak değiştirelim ve kod satırına da " data1.recordset.update " yazarız. Bu komut text'e yazılanları veritabanına kayıt eder.
Formu çalıştırdığımızda önce " kayıt ekle " butonuna tıklanır; text'lere veriler girilir; kaydet butonuna tıklandığında veriler kaydedilir. tekrar " kayıt ekle " tıklanır text'ler sıfırlanır tekrar veriler girilir; "kaydet" e tıklanır veriler kayıt edilir. bu böyle devam eder.
Kayıt silme
bir command buton ekleyip ismini " sil" olarak değiştirelim. (caption özelliğinden) Çift tıkladığımızda gelen komut satırına " data1.recordset.delete " deriz. Bu komutun anlamı; o anda veritabanında seçili olan kayıdı sil.
Kayıtlar arasında geçiş yapmak
başka bir buton ekleyip ismini " Sonraki kayıt " olarak değiştirelim. kod satırına "data1.recordset.movenext" yazılır. bu komutun anlamı; Bir sonraki kayıda git. son kayıttan sonra tekrar tıklandığında başka kayıt yok gibisinden bir hata verir program. bunu önlemek sizin programcılık kabiliyetinize kalmış
başka bir buton ekleyip ismini " önceki kayıt " olarak değiştirelim. kod satırına "data1.recordset.moveprevious" yazılır. bu komutun anlamı; Bir önceki kayıda git. yukarıdaki olay bunun içinde geçerlidir.
Data nesnesiniz özellikleri diğer compenentlerle hemen hemen aynı. font, enabled, yazı rengi filan. Farklı olanları zaten yukarıda kullandık. data nesnesindeki bildiğim komutları açıklayım;
Data1.Recordset.AbsolutePosition ---> Kayıt sırasını söyler. kullanımı, mesela; msgbox Data1.Recordset.AbsolutePosition . ama bu değer 0 dan başlar. yani ilk kayıtın numarası 0'dır.
Data1.Recordset.BOF ---> ilk kayıtta olup olmadığını denetler. iki değer alır. true ve false. true olursa ilk kayıda gelmişiz demektir.
Data1.Recordset.CancelUpdate ---> kayıt etmeyi iptal etmek için kullanılır.
Data1.Recordset.EOF ---> son kayıtta olup olmadığını denetler. iki değer alır. true ve false. true olursa son kayıda gelmişiz demektir.
Data1.Recordset.Filter ---> filtrelemek için kullanılır.
Data1.Recordset.RecordCount ---> Toplam kayıt sayısını verir. bu komutu kullanmadan önce data1.recordset.movelast komutunu yazmak daha sağlıklı olur.
Data1.Recordset.Sort ---> Sıralamak için kullanılır.
Bu bilgilerin tamamı tarafımca tahribat.com için yazılmıştır.
Projeyi gönderiyorum. istediğiniz gibi geliştirebilirsiniz. Ama veritabanını oluşturmayı unutmayın ve bağlantıları yapmayı ;)
-
kusura bakmayın çok uykum geldi projeyi eklemeyi unutmuşum. işte link;
-
Merhaba hocam bende su ise akil sardim oakdar arastirma aptim ama saglam dokuma bulamadim bir program yapmak icin ne gerekli mesela basit bir websaldiri programi diyelim adetayli bir anlatim sunramisiniz ?
-
kesinlikle her hangi bir programlama dili bilmen gerekir.hemde iyi derecede bilmen gerekir. tavsiyem vbasic veya delphi. zaten ileri düzeyde öğrendiğim zaman kendi kendine bişeyler yazıp kullanıyorsun ;)
-
Visual basic vbscript olduğu için var olan bir database'e bağlanmak için visual data manager kullanılmasa da olur..Neredeyse tamamen asp gibi
Set db = New Adodb.connection
db.open = "db yolu, mdb ya da sql server"
set rs = new adodb.recordset
sql = "select ...."
rs.open sql, db, 1, 3
şeklinde..Ancak bunu yapmadan önce projede "microsoft activex data object 2.7"i aktif yapman lazım -
paylaşımın için tesekkürler arkadasım aktfi ve akıcı sayılır.
