MySQL et WD12

Le
I.G.LOG
Bonjour,
J'essai de creer un script de duplication d'un base. Pour ça je génère un
ficher texte contenant tous les CREATE TABLE nécessaires.
J'utilise le code suivant:

POUR x = 1 a y
SQLExec("show create table " + NOMFIC[X],"ReqS")
SI SQLFetch("ReqS") = 0 ALORS
lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ")
// lcond = SQLLitCol("ReqS",2)
fEcritLigne(lNumFic,lCond)
FIN
SQLFerme("ReqS")
FIN

Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux
( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent
ces caractères ?

Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
I.G.LOG
Le #20409641
Trouvé: il s'agit de LF (caract(10)
Donc avec

Remplace(SQLLitCol("ReqS",2),Caract(10)," "+RC)

le problème est résolu.


"I.G.LOG" 4ae1d04b$0$930$
Bonjour,
J'essai de creer un script de duplication d'un base. Pour ça je génère un
ficher texte contenant tous les CREATE TABLE nécessaires.
J'utilise le code suivant:

POUR x = 1 a y
SQLExec("show create table " + NOMFIC[X],"ReqS")
SI SQLFetch("ReqS") = 0 ALORS
lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ")
// lcond = SQLLitCol("ReqS",2)
fEcritLigne(lNumFic,lCond)
FIN
SQLFerme("ReqS")
FIN

Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux
( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent
ces caractères ?

Merci





Goof
Le #20425791
Comme dit précédemment, c'est le caractére 'LF' (line feed)
l'explication:
Les programmes issues du monde unix on l'habitude de signaler les fins
de lignes uniquement par 'LF'.
Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return)
et 'LF' pour signaler la fin de ligne.
Noté 'CRLF' normalement,
en C/C++/Java/PHP/... il est noté "rn"
en windev il est noté 'RC'

Et tout ça vient de la .... machine a écrire mécanique.
Elles avaient une touche pour passer a la ligne. (LF)
Et éventuellement une autre pour faire le retour en début de ligne (CR),
quand le retour en début de ligne n'était pas manuel.

A++
Goof

PS : je sais la solution a été donné, mais j'aime bien expliquer le
pourquoi aussi car la raison est utile au moins autant que la solution.


I.G.LOG a écrit :
Bonjour,
J'essai de creer un script de duplication d'un base. Pour ça je génère un
ficher texte contenant tous les CREATE TABLE nécessaires.
J'utilise le code suivant:

POUR x = 1 a y
SQLExec("show create table " + NOMFIC[X],"ReqS")
SI SQLFetch("ReqS") = 0 ALORS
lCond = Remplace(SQLLitCol("ReqS",2),Caract(9)," ")
// lcond = SQLLitCol("ReqS",2)
fEcritLigne(lNumFic,lCond)
FIN
SQLFerme("ReqS")
FIN

Ce code fonctionne mais dans le fichier texte j'ai des caractères spéciaux
( petits rectangles ) que je n'arrive pas a enlever. A quoi correspondent
ces caractères ?

Merci





Eric Demeester
Le #20426121
dans (in) fr.comp.developpement.agl.windev, Goof ecrivait (wrote) :

Bonjour,

Les programmes issues du monde unix on l'habitude de signaler les fins
de lignes uniquement par 'LF'.
Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return)
et 'LF' pour signaler la fin de ligne.



Pour être tout à fait complet, les fins de lignes sous MacOs sont
signalées par <CR>.

--
Eric
Goof
Le #20426501
merci du complément, je ne connaissais pas personnellement le cas d'Apple.

Eric Demeester a écrit :
dans (in) fr.comp.developpement.agl.windev, Goof ecrivait (wrote) :

Bonjour,

Les programmes issues du monde unix on l'habitude de signaler les fins
de lignes uniquement par 'LF'.
Alors que les programmes DOS/Windows utilisent 'CR' ( Carriage Return)
et 'LF' pour signaler la fin de ligne.



Pour être tout à fait complet, les fins de lignes sous MacOs sont
signalées par <CR>.



Publicité
Poster une réponse
Anonyme