cString := "CREATE TABLE CLIENTES ( " + ;
CampoMySql( "CODIGO", "I" , 11, 0, .F., "AUTO_INCREMENT" ) + ;
CampoMySql( "NOME", "V", 100, 0, .T., "DEFAULT ''" ) + ")"
FUNCTION CampoMySql( cName, cType, nLen, nDec, lNull, cCompl )
LOCAL cText := ""
cText += cName
DO CASE
CASE cType == "C"; cText += "CHAR"
CASE cType == "D"; cText += "DECIMAL"
CASE cType == "I" ; cText += "INT"
CASE cType == "V", cText += "VARCHAR"
ENDCASE
cText += " (" + Ltrim(Str(nLen)) + iif( nDecimal == 0, "", ", " + Ltrim( Str(nDecimal) ) ) + ") "
cText += " " + iif( lNull, "NULL", "NOT NULL" )
IF ! Empty( cCompl )
cText += cCompl
ENDIF
RETURN cText
Só pra deixar as partes alinhadas, sem encher de string no EXE.
Mesmo assim, parece que não compensa.