Search  
Friday, May 25, 2012 ..:: Forum ::.. Register  Login
 Forum Minimize
Pentru a putea posta mesaje trebuie să vă înregistraţi.
Notă: Mesajele cu conţinut jignitor sau ilegal (inclusiv cereri de soft piratat) nu sunt acceptate şi vor fi şterse imediat .

Pentru a primi raspunsuri rapide si corecte, scrieti in mesaj ce intentionati sa faceti, ce mesaj de eroare primiti, in ce context si in urma caror actiuni. De asemenea, mentionati versiunea de FoxPro in care lucrati!
Dacă nu specificați versiunea, se consideră VFP 9.0 SP2.

SearchForum Home
  Visual FoxPro  Client/Server  Incorrect data ...
 Incorrect data value
 
 7/19/2011 11:27:31 PM
User is offlinestefan_JKSL
62 posts


Incorrect data value
 (N/A) Modified By stefan_JKSL  on 7/19/2011 11:30:37 PM)
Salutare!

Va rog sa ma ajutati cu o mica problema :
doresc sa import datele din Visual FoxPro in MySQL si primesc mesajul de mai sus - Incorrect data value pentru o coloana de tip date.
atat in MySQL cat si in Fox coloana respectiva este setata ca data type.
Primesc acest mesaj numai pentru inregistrarile care au data goala.
Exista vreo problema de compatibilitate pentru data blank?
In MySQL am setat defaul = null pentru coloana data.

Multumesc anticipat pentru orice parere.
 7/20/2011 2:23:09 AM
User is offlineDaniel Buduru
2335 posts
1st




Re: Incorrect data value
 (N/A)
Data blank exista numai in fox.
Fie completezi datele astea cu o valoare (ex 1900-01-01), fie cu NULL.
Pentru null trebuie sa setezi corespunzator campul din tabela vfp si coloana din mysql (allow null sau nullable).


Daniel Buduru
 7/20/2011 8:42:13 AM
User is offlinestefan_JKSL
62 posts


Re: Incorrect data value
 (N/A)
Multumesc pentru raspunsul dumneavoastra. D-l Daniel este prompt ca de obicei.

Am facut in fox urmatoarele setari :
SET NULL ON
SET NULLDISPLAY TO ""

structura tabelului am modificat-o : la toate coloanele de tip data am bifat NULL.

in baza de date am creat o vedere la distanta a tabelului din MySQL actualizabila.
in MySQL coloanele de tip data sunt setate pe default value NULL

cand execut pe remote view comanda append from -tabelul meu din fox- primesc acelasi mesaj : incorrect data value

sa inlocuiesc in fox datele empty cu 1900-01-01... nu este o solutie care sa convina.
 7/20/2011 9:52:20 AM
User is offlineDaniel Buduru
2335 posts
1st




Re: Incorrect data value
 (N/A)
Mai trebuie si UPDATE tabela_vfp SET data=null WHERE EMPTY(data), altfel data ramane tot blank

Daniel Buduru
 7/20/2011 10:47:03 AM
User is offlineDaniel Buduru
2335 posts
1st




Re: Incorrect data value
 (N/A)
Pentru importul de date eu prefer un insert sql, care permite adaptarea datelor de la formatul sursei la formatul destinatiei:

INSERT INTO view (field1, field2, ...) SELECT CAST(EVL(field1, null) as datetime), CAST(field2 as ...) ... FROM sursa s

Daniel Buduru
 7/28/2011 7:09:32 AM
User is offlinestefan_JKSL
62 posts


Re: Incorrect data value
 (N/A) Modified By stefan_JKSL  on 7/28/2011 7:14:15 AM)
da, asta era solutia. multumesc. merge struna... insa a aparut alta problema : diacritice
tabela mea din fox este setata pe nCodePage = 1250
tabela din mysql este setata la fel pe character set = cp1250
la importul datelor primesc mesajul : Incorect string value for column adresa.
valoare cu pricina este "Borduşani"
daca adaug manual in mysql "Borduşani" merge insa cand fac interogare in fox apare "Bordu?ani"
nu sunt compatibile nCodePage = 1250 din fox si character set = cp1250 din mysql?
 7/28/2011 9:36:43 AM
User is offlineDaniel Buduru
2335 posts
1st




Re: Incorrect data value
 (N/A)
Vezi ce cod ascii are caracterul ş in tabela si ce cod ascii are in campul adus in vfp, atunci cand este afisat '?'

Daniel Buduru
 7/28/2011 9:47:03 AM
User is offlinestefan_JKSL
62 posts


Re: Incorrect data value
 (N/A)
?ASC("ş") = 186
?ASC("?") = 63
 7/28/2011 9:56:04 AM
User is offlineDaniel Buduru
2335 posts
1st




Re: Incorrect data value
 (N/A)
Nu in VFP. In MySQL.
Pune ș intr-un camp direct in mysql, apoi SELECT CHR(camp) si vezi ce cod ascii a pus mysql acolo.



Daniel Buduru
 7/28/2011 10:22:01 AM
User is offlineDaniel Buduru
2335 posts
1st




Re: Incorrect data value
 (N/A) Modified By Daniel Buduru  on 7/28/2011 10:27:53 AM)
Sorry
SELECT ASCII(camp)
Sau, din VFP
SQLEXEC(nconnhandle,[SELECT ASC('ș')],[crsresult])


Daniel Buduru
 7/28/2011 11:47:38 AM
User is offlinestefan_JKSL
62 posts


Re: Incorrect data value
 (N/A) Modified By stefan_JKSL  on 7/28/2011 11:47:51 AM)
Ş = 197
? = 63

insa am citit aici pe forum despre o solutie, am adoptat-o si vad ca merge :
am trecut toate campurile de pe varchar pe varbinary in mysql
si in fox din character am facut character(binary)

vad ca functioneaza
 7/28/2011 11:58:27 AM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Incorrect data value
 (N/A) Modified By Grigore Dolghin  on 7/28/2011 11:59:17 AM)
Se mai discuta pe un thread chestia asta; am cerut datele de conectare la serverul respectiv, le-am primit azi dimineata, o sa ma ocup diseara de chestia asta si o sa scriu un mic articol pe tema diacriticelor in VFP9 + MySQL, ca se pare ca trebuie.

Merge si fara varbinary (stiu sigur fiindca am eu zeci de rapoarte facute in VFP 9 care se vad corect pe orice sistem, cu date in MySQL).

Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 7/28/2011 12:01:56 PM
User is offlinestefan_JKSL
62 posts


Re: Incorrect data value
 (N/A)
este vreo problema cu varbinary?
 7/28/2011 12:26:59 PM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Incorrect data value
 (N/A)

In principiu nu, dar se poate si fara.


Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 7/28/2011 12:35:58 PM
User is offlineDaniel Buduru
2335 posts
1st




Re: Incorrect data value
 (N/A) Modified By Daniel Buduru  on 7/28/2011 12:36:50 PM)
 stefan_JKSL wrote
Ş = 197
? = 63
..........

Daca esti pe XP instaleaza asta
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=16083
si fa din nou o proba.


Daniel Buduru
 7/28/2011 5:18:57 PM
User is offlinestefan_JKSL
62 posts


Re: Incorrect data value
 (N/A)
am incercat. nu-mi apare decat âăî. şţ apare cu ?
merge fara probleme daca trec campul pe binar.
 7/29/2011 11:00:52 AM
User is offlinestefan_JKSL
62 posts


Re: Incorrect data value
 (N/A)
este vreo limitare daca trec campurile character pe character binary? nu se coporta la fel? inca nu am avut timp sa fac teste.
 7/29/2011 12:04:08 PM
User is offlineDaniel Buduru
2335 posts
1st




Re: Incorrect data value
 (N/A)
 stefan_JKSL wrote
este vreo limitare daca trec campurile character pe character binary? nu se coporta la fel? inca nu am avut timp sa fac teste.

Pentru campurile declarate binare nu se mai incearca transformarea codului de pagina.
O diferenta poate fi la indexare/ cautare. Daca tii sa faci cautari pe coloanele cu diacritice, iar serverul sa ignore diacriticele - de ex, cand cauti Bordusani sa gaseasca si Bordușani si Bordusani - este necesar sa specifici codul de pagina. Numai asa serverul stie ca 's' poate fi si 'ș'.

Solutia cea mai fiabila este sa lucrezi cu campuri unicode. In unicode, fiecare caracter are codul propriu. In fonturile pe 8 biti, la acelasi cod de caracter corespund simboluri diferite, iar codul de pagina e cel care spune ce anume simbol se afiseaza pentru un cod de caracter.
Insa nici cu unicode lucrurile nu sunt simple. VFP are functii pentru stringuri unicode, insa nu le poate afisa. Functia STRCONV() face conversia intre tipurile de fonturi si coduri de pagina.

O solutie ar fi sa tii datele pe server in unicode sau caracter cu cod de pagina si sa le convertesi in varbinary doar cand le aduci in vfp.

Mai fa un test, pune in windows default language romanian si vezi cum se comporta. Desigur, in controale pui la FontCharset 238.
Iar in mysql incearca si cu cp1250_bin si pune oricum ultima versiune de driver ODBC.

Sunt sigur ca Grig va veni cu o solutie, dupa ce va face testele pe acel server.


Daniel Buduru
 7/29/2011 1:13:54 PM
User is offlineGrigore Dolghin
3590 posts
www.class-software.eu
1st






Re: Incorrect data value
 (N/A)
Eh, aseara am reusit sa ajung la 12 noaptea acasa :( Imi pare rau dar n-am mai reusit sa ma ocup de problema asta - o sa ramana pentru azi. Scuze.

Grigore Dolghin
Visual FoxPro MVP 2006 - 2010
Class Software
My blog
 8/1/2011 10:30:00 PM
User is offlinestefan_JKSL
62 posts


Re: Incorrect data value
 (N/A)
felicitari pentru faptul ca ai reusit sa ajungi acasa :D sa-mi spui si mie care-i secretul. eu daca ma apuc sa beau ma cam tine 2-3 zile. :))
cat despre Character Data Type Character (Binary) citesc la help ca :

To store alphanumeric text, such as letters, numbers, spaces, symbols, and punctuation, use the Character data type. To prevent data in Character fields from being translated across code pages, use the Character (Binary) field type.

teoretic nu ar fi nicio limitare. evident ca este de preferat sa nu folosim diacritice, insa am deja datele din fox cu diacritice si nu prea am de ales.

nu stiu care ar fi problema in mysql insa ma mai documentez si mai testez. sunt curios daca in cazul unei indexari mysql procedeaza la fel ca fox adica plaseaza diacriticile la coada listei.

testez si incerc sa va tin la curent dar mai dureaza ca abia m-am asezat la terasa sa ma racoresc cu o bere... doua, trei :D


  Visual FoxPro  Client/Server  Incorrect data ...

Search  Forum Home         

 Google Ads Minimize

    

Copyright 2002-2010 Profox   Terms Of Use  Privacy Statement