Mysql'de tanımlanan string alanların dbgrid'de gözükmesi

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
AliRiza
Üye
Mesajlar: 172
Kayıt: 24 Kas 2004 10:57
Konum: İstanbul/Avcılar
İletişim:

Mysql'de tanımlanan string alanların dbgrid'de gözükmesi

Mesaj gönderen AliRiza »

Arkadaşlar mysql'de varchar,char ,text tipinde tanımladığım alanlara kayıt ettirdiğim bilgileri dbgrid'de göremiyorum.O alanın olduğu kısımda memo olarak gözüküyor.Kayıtı adotable ile yapıyorum.Kayıt yapılıyor.Bunun myadmin veya mysqlcc ile göreyorum.Veritabanında ne olarak tanımlama yaparsam bu veriler gözükür veya dbgrid'de ne yapabilirim.

Acil olarak yardımınıza ihtiyacım var.

Forumda arattım bir arkadaş access'ta bu problemi yaşamış.Orada mustafa hocamın cevabı var.Calculate alan oluştur diye.Calculate alan oluşturdum ve bunu dbgrid'in fields'ine ekledim.Bu seferde o alan boş gözüküyor.
Bilginin efendisi olmak için çalışmanın uşağı olmak şarttır...
BALZAC
Bana bir harf öğretenin kulu kölesi olurum..
HZ.ALİ
Kullanıcı avatarı
feinpus
Üye
Mesajlar: 214
Kayıt: 17 Kas 2003 04:37
Konum: İstanbul
İletişim:

Mesaj gönderen feinpus »

Bu linke bak yardımcı olur sanırım....

viewtopic.php?t=308
Oldeye Software
http://www.oldeye.com
AliRiza
Üye
Mesajlar: 172
Kayıt: 24 Kas 2004 10:57
Konum: İstanbul/Avcılar
İletişim:

tip uyuşmaşlığı hatası alıyorum

Mesaj gönderen AliRiza »

Arkadaşlar veritabanına verileri programı ilk çalıştırmamda atıyorum.Program kapatılırken tip uyuşmazlığı hatası alıyorum.
tüm yolları deniyorum.
Veritabanına yazılan veri biçimi
191.1056 gibi.Ben böyle bir değere text veya varchar tipindeki alana yazdırmaya çaşlıştım.
Adotable'in üzerine gelip fields add deyip tüm alanları ekledim.
Bunun yanında da bir tane calculated alan ekleyip string tanımladım.
Adotable'in calculeted field olayında atadım..

Kod: Tümünü seç

Adotablenumara.asstring:=adotable1.fields[1].asstring;
Bunu denedim.İlk başta düzgün çalışıyor.Eklediğim kayıtlar memo olanlar gözüküyor.Tabii programın çıkışında kayıtların hepsini otomatik sildiriyorum.Bununla alakası olabilirmi.
Ayrıca 2. yol olarak fieldleri ekledikten sonra o fieldin gettext olayında
aşağıdaki gibi değeri ekliyorum..

Kod: Tümünü seç

procedure TForm1.ADOTable1orgnoGetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin
//text:=sender.asstring;
end;
Tip uyuşmazlığını bir türlü halledemedim.Yardım....
Bilginin efendisi olmak için çalışmanın uşağı olmak şarttır...
BALZAC
Bana bir harf öğretenin kulu kölesi olurum..
HZ.ALİ
Kullanıcı avatarı
feinpus
Üye
Mesajlar: 214
Kayıt: 17 Kas 2003 04:37
Konum: İstanbul
İletişim:

Mesaj gönderen feinpus »

İlk olarak yazdıklarından pek bişi belli olmuyor ancak bakbileceğin bi kaç yervar.

ilk olarak text alana ne tür kayıt girersen gir tip uyuşmazlığğı hatası vermez ancak buna veri eklerken yada çağırırken asstring olarak çağırmalısın.

Eğer burada sorun yoksa, Eşleştirdiğin 2 tablodaki alanların aynı tür olmasına dikkat et.

Ve tam olarak hangi satırda hata olduğunu bulmak için debug yap ve hata verdiği satırı belirle.

Sonra tekrar sorunu biraz daha detaylı olarak yaz :)

Kolay Gelsin...
Oldeye Software
http://www.oldeye.com
Berdem
Üye
Mesajlar: 431
Kayıt: 28 Tem 2003 12:28

Mesaj gönderen Berdem »

Arkadaşım temeldeki hata senin doğru anlamda bağlantıyı kuramamış olmandan kaynaklı.Eger myodbc kurduysan öncelikle denetim masasınsan odbc ayarlarına gir ve ordaki host name local olarak kullanıyorsan localhost ve ya uzaktaki makinada kullanıyorsan ip ver datasourch ismini yaz ve test et.Sonra adoconnection bağlatını aç ve datasourcunu yazdıgın ismi belirleyerek bağlantıyı kurarsan memo dediğin alanlar gözükmez.Ve doğru bağlantıyı kurmuş olursun.Calculate sana bu anlamda kesinlikle çözüm sağlamaz.
Cevapla