Teşekkürler Atıf CEYLAN,
Trim yapınca başta ve sondaki boşluklardan kurtuldum, hem işim görüldü hem de 
yeni komutlar öğrenmiş oldum.

 Uygar UZUNHASAN
[EMAIL PROTECTED]




________________________________
From: Atıf CEYLAN <[EMAIL PROTECTED]>
To: Özgür yazılımlarla çeşitli dillerde yazılım geliştirme 
<[email protected]>
Sent: Wednesday, November 26, 2008 4:33:12 PM
Subject: [Linux-programlama] Re: DBF to PostGreSQL

>Not: Her sutun için character(10) gibi değerleri character varying ile 
>değiştiriyorum. 
demişsiniz.
bu işlemi veriyi aktarmadan önce yapmanız gerekir. eğer buna rağmen halen 
boşluk oluyorsa aktarmada sorun var demektir. o zaman aktarma işleminden sonra
update mytable1 set field1 = trim(field1),field2 = trim(field2) 
şeklinde bir güncelleme yapabilirsiniz. araya o şekilde boşluklar vermesi 
aktarma yazılımından kaynaklanıyor.

kolay gelsin.

2008/11/26 Uygar UZUNHASAN <[EMAIL PROTECTED]>
>
>     Eski DBF veri tabanını PostGreSQL 8.3 e aktarmak için 
> http://www.whitetown.com/dbf2sql/ adresinde bulduğum programı kullanıyorum. 
> Burada çeşitli standartlar tanımlanarak 8.3 e uygun sql kodları alıyor sonra 
> onları koşuyorum. Ancak bazı sorunlar yok değil.
>     En önemlileri aktarılan verilerde bozulma ve kayıplar oluyor. örneğin 
> 'AKY123' şeklindeki bir veri 'AKY 123    ' haline geliyor. Hem hepsinin 
> sonunu boşlukla dolduruyor hem de bazen araya boşluk atıyor.  Sondaki 
> boşluklar tahminimce sutun character(10) olarak tanımlandığı için ekleniyor 
> veya belkide DBF lerin doldurulduğu yazılım dan kaynaklanıyor olabilir -ben 
> yazmadım, eski bir DOS programı-.
>      Elimdeki dört dbf tablosu 30.000 ila 100.000 arası kayıt içeriyor ve en 
> önemlisi bu bozulma tabloları bir birine bağlayan birincil anahtar-yabancıl 
> anahtar tutarsızlığı yaratıyor (aslında ortada ne PK ne FK var ama kullanış 
> amacı aynı).
>    
>     Sağlıklı bir geçiş yapabileceğim başka bir yazılım biliyor musunuz?  veya 
> bu boşluklardan nasıl kurtulabilirim?
>
> Not: Her sutun için character(10) gibi değerleri character varying ile 
> değiştiriyorum. Yalnız birisinde SELECT..FROM...GROUP BY.. şeklinde bir 
> sorgudan sonra sondaki boşluklar gidiyor ama aynı şey diğer tablolarda 
> olmuyor. index, vacuum da işe yaramadı.
>
>
>
>
>  
>
>
>  
>
> Uygar UZUNHASAN
> [EMAIL PROTECTED]
>
>
> _______________________________________________
> Linux-programlama mailing list
> [email protected]
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>



--
/**
* @author Atıf CEYLAN
*
* Software Developer
*
* http://www.atifceylan.com
*
*/



      
_______________________________________________
Linux-programlama mailing list
[email protected]
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

Cevap