evandro Posted March 10, 2016 Report Share Posted March 10, 2016 Olá, No caso do Mysql a unica coisa ruim dele é, a licença que só é free se o sistema que está usando ele seja open source, Isto não é assim há mais de 10 anos. Ele é totalmente free. Quote Link to comment Share on other sites More sharing options...
crisvam Posted March 11, 2016 Report Share Posted March 11, 2016 Crisvam Boa noite Uma base SQL vc pode abusar das alternativas de FRONT END, com certeza existem colegas aqui mais experientes que podem te fornecer informações mais avançadas nestes termos. O SGBD vc pode instalar onde vc quiser, seja em CLOUD, em um servidor seu com todas as estruturas e recursos para os acessos dos seus clientes, no parque de informática do cliente e etc O acesso é definido por vc. Supondo que vc instale no ambiente do cliente, o acesso mais viável é local, pelo ganho na velocidade de tráfego dos pacotes, porém, este mesmo SERVER poderá estar disponível remotamente e dependerá somente da configuração do acesso no SGBD (Estou me referindo ao POSTGRES, os demais, como MSSQL, MYSQL, FIREBIRD eu não sei, mas não deve ser muito diferente). Quando vc conecta ao SERVER, os BD's (O conceito de DATABASE é um para várias tabelas, que seria mais ou menos uma pasta com vários arquivos dbf's), ficam a sua disposição, não sei qual o limite de BD's no POSTGRES e nem de tabelas, mas a coisa é monstruosa. A conexão remota, vc só precisa que seu aplicativo disque o IP de conexão e acesse o BD onde quer que vc esteja, sem precisar efetuar qualquer tipo de emulação ou aplicativos de terceiros. No meu caso, optei pela SQLRDD, devido ao meu conceito de sistemas, ou seja, eu tenho um sistema para cada cliente, com algumas rotinas ambíguas, mas no geral, são diferentes, devido aos segmentos diferentes de cada cliente, então cada um tem a sua particularidade, e se eu tivesse que utilizar o SQL NATIVO, não estaria nem falando GUGÚ DADÁ, muito menos engatinhando, pq as alterações são mínimas e após as conversões das bases, as alternativas para o SQL NATIVO fica mais fácil, pq as mesmas sentenças que vc cria utilizando a SQLRDD será a mesma para o NATIVO. Se eu tiver que falar sobre as melhorias, vou ficar aqui dias discorrendo sobre o assunto, então para TESTE, sugiro que vc instale um SGBD, faça o UP-LOAD dos seus arquivos DBF (tabelas), tal qual está a sua modelagem atual, e crie algumas rotinas de teste, no caso do POSTGRES o gerenciador PGADMIN, irá te possibilitar criar sentenças \SQL e abusar de todas as formas sem riscos de cometer alguma situação drástica no seu sistema. Se tiver com tempo, refaça a sua modelagem dos dados, pq em SQL essa é a parte mais importante, quanto melhor modelado a BASE, melhor performance vc terá. Sobre documentação em Português, na internet vc vai achar dezenas de sites sobre o assunto, mas se puder ter acesso ao EULER TAVEIRA (Postgres), este é o cara, todas as melhorias em termos de necessidades de usuários em nível Brasil, passa por ele, e quando é viável, ele inclui. Me lembro que, na palestra de Curitiba ele estava estudando alternativas de uma solução de BACK-UP em tempo real, sem alterar a performance do SGBD, pq todos eles existem esta solução, porém aumenta o tempo de resposta. Espero não ter falado muitas besteiras, mesmo pq, nem daria pra explicar td o que explanei e sempre alguma coisa fica ??? sem resposta. []s, Ok Jorge, muito grato pela atenção. Quote Link to comment Share on other sites More sharing options...
jfaguiar Posted March 11, 2016 Report Share Posted March 11, 2016 Com certeza eu irei para o PostgreSql, mas, enquanto eu respirar nessa vida, farei alguma coisa com os bons e velhos DBF´s. Quote Link to comment Share on other sites More sharing options...
evandro Posted March 12, 2016 Report Share Posted March 12, 2016 Olá, farei alguma coisa com os bons e velhos DBF´s Depois de se familiarizar com um SGDB e migrar seus sistemas, você verá que esta sua citação só é legal se for num 386, ouvindo disco de vinil num gramofone, e outras coisas de saudosistas. Agora, para produzir mesmo... Quote Link to comment Share on other sites More sharing options...
ram_bh Posted March 14, 2016 Report Share Posted March 14, 2016 Um breve relato: Estou migrando um sistema que usa DBF desde 1996 para Firebird. Mas antes de escolher qual gerenciador de banco de dados (SGBD) utilizar, refiz o modelo de dados do sistema levando em consideração a migração de DBF para SQL. Algumas relações entre tabelas foram modificadas sem prejudicar os processos. Vai te facilitar muito entender o negócio e o que você precisa fazer... Primeiro você deve entender como funciona um SGBD e como são realizadas as operações entre as tabelas (relembre as operações entre conjuntos da matemática). Só assim você vai estar preparado para o trabalho de migração e adaptação dos programas. Em relação aos programas, sem muita dificuldade. Agora trato melhor as mensagens de retorno do SGBD nas manipulações de dados, pois o SGBD vai manter a integridade das tabelas quando você sinalizar as PK, FK e índices. E por que Firebird!? Resolvi usar por ser mais leve... E até agora está dando conta do recado... E se você escrever corretamente, e com padrão, as operações com o SGBD, se precisar migrar para outro não será problema. Se precisar de ajuda, pode me procurar. Um abraço! Rodrigo Melo Belo Horizonte / MG frkiko 1 Quote Link to comment Share on other sites More sharing options...
jfaguiar Posted March 14, 2016 Report Share Posted March 14, 2016 Estou arrebentando no Mysql com Workbench. Já estou pegando raiva dos DBF´s!!! Nesta semana eu compro a sqlrdd Quote Link to comment Share on other sites More sharing options...
kleyber Posted March 15, 2016 Report Share Posted March 15, 2016 Já que você vai usar o MySQL, antes de comprar a SQLRDD dê uma olhadinha na TDOLPHIN. É uma classe gratuita e que usa MYSQL e te garanto que o tempo pra se aprender a usar a TDOLPHIN é bastante curto, além de se fazer a migração do teu sistema em um tempo menor, e já usando comandos SQL. frkiko 1 Quote Link to comment Share on other sites More sharing options...
jfaguiar Posted March 16, 2016 Report Share Posted March 16, 2016 Já que você vai usar o MySQL, antes de comprar a SQLRDD dê uma olhadinha na TDOLPHIN. É uma classe gratuita e que usa MYSQL e te garanto que o tempo pra se aprender a usar a TDOLPHIN é bastante curto, além de se fazer a migração do teu sistema em um tempo menor, e já usando comandos SQL. Olá Kleyber. Na verdade eu vou usar o PostgreSql. Estou montando uma banco em Mysql, só para dar um treino em sql. Quote Link to comment Share on other sites More sharing options...
edutraini Posted March 16, 2016 Author Report Share Posted March 16, 2016 pessoal baixei uma rotina aqui forum que faz a conexao no banco de dados conforme exemplo abaixo e ele esta dizendo que variavel CONNECT_MYSQL Quote Link to comment Share on other sites More sharing options...
edutraini Posted March 16, 2016 Author Report Share Posted March 16, 2016 Desculpa pessoal travou o teclado entao referente a variavel CONNECT_MYSQL esta dizendo que não existe. Alguem poderia me dar uma dica aonde é criado essa variavel IF ALLTRIM(cConnTipo) == "MYSQL" // SE A CONEXÃO FOR MYSQL cConString1 :="MySQL="+lower(ALLTRIM(cConnName)) + ";" + "UID="+lower(ALLTRIM(cConnUsrs))+ ";"+"pwd="+lower(ALLTRIM(cConnPass))+ ";" +"dtb="+alltrim(LOWER(cConnBase))+";PRT=3306" nCon1 := SR_AddConnection( CONNECT_MYSQL, cConString1 ) Quote Link to comment Share on other sites More sharing options...
joaosolution Posted March 16, 2016 Report Share Posted March 16, 2016 jfAguiar Boa tarde Faltou incluir a sqlrdd.ch no projeto. Att João Bosco Quote Link to comment Share on other sites More sharing options...
edutraini Posted March 16, 2016 Author Report Share Posted March 16, 2016 Puxa obrigado funcionou agora deu outro erro Desculpa por esta enchendo o saco Error description: Error BASE/1001 Undefined function: SR_MYSQL Args: Stack Calls =========== Called from: => SR_MYSQL(0) Called from: ..\source\sqlrdd0.prg => SR_ADDCONNECTION(364) Quote Link to comment Share on other sites More sharing options...
Jorge Andrade Posted March 16, 2016 Report Share Posted March 16, 2016 Edu Boa tarde Eu não sei se vai te ajudar, mas como eu quebrei a cabeça também e não acho justo as vezes, sentir-se como cachorro correndo atrás do rabo, embora não vou negar, tive muitas ajudas aqui e também sei que sem elas não conseguiria dar o pontapé inicial, mas não sei se por questões de falta de conhecimento (O que eu duvido em todos os sentidos, pois sei que o domínio sobre o assunto e o conhecimento de muitos aqui são inesgotáveis, dignos de promover cursos e palestras), falta de tempo em participar do fórum e etc... Tive que recorrer a inúmeras pesquisas e aos poucos criando alguns Frankenstein até conseguir efetuar as conexões e acessos ao Bd's sem muitas dificuldades e depois partir para a parte de manipulação dos dados. Segue aqui algumas informações: Usei os seguintes CH. #include "firebird.ch" //firebrid #include "sqlrdd.ch" //sqlrdd#include "mysql.ch" //mysql#include "sqlodbc.ch" ;;odbc#include "pgs.ch" //postgres os REQUEST: REQUEST SR_PGS // Postgres >= 7.3 native connection //REQUEST SQLRDDREQUEST SR_ODBCREQUEST SR_MYSQL REQUEST SR_ODBC /* ODBC ou Unix ODBC Connection */ IF xConexao+xDrvConex $ "MYSQLNATIVE" //MYSQL NATIVE ConnString := "MYSQL=" + xServIp + ";" + "UID=" + xUserCon + ";" + "PWD=" + xPassCon +";" + "DTB=" + xDbSql + ";" + "PRT=" + xPortCon cConnection := SR_AddConnection( CONNECT_MYSQL , ConnString ) ENDIF IF xConexao+xDrvConex $ "MYSQLSQLRDD" //MYSQL SQLRDD ConnSMysql := "MYSQL=" + xServIp + ";" + "UID=" + xUserCon + ";" + "PWD=" + xPassCon +";" + "DTB=" + xDbSql + ";" + "PRT=" + xPortCon oConMySql := SR_AddConnection( CONNECT_MYSQL , ConnSMysql ) xConSel := "MYSQLSQLRDD" ENDIF IF xConexao+xDrvConex $ "MYSQLNATIVE ADO" //MYSQL NATIVE ADO ConnString := "MYSQL=" + xServIp + ";" + "UID=" + xUserCon + ";" + "PWD=" + xPassCon +";" + "DTB=" + xDbSql + ";" + "PRT=" + xPortCon cConnection := SR_AddConnection( CONNECT_MYSQL , ConnString ) ENDIF IF xConexao+xDrvConex $ "MSSQLODBC SQLRDD" //SQL SERVER SQLRDD cConnection := "UID=" + xUserCon + ";" + "PWD=" + xPassCon + ";" + "DTB=" + xDbSql + ";" + "PRT=" + xPortCon + ";" + "DSN="+xDsnCon //MYSQL ODBC SQLRDD oCon:= SR_AddConnection( CONNECT_ODBC, cConnection ) ENDIF IF xConexao+xDrvConex $ "MSSQLODBC NATIVE CLIENT 10" //SQLSERVER NATIVE ODBC cConnection := "UID=" + xUserCon + ";" + "PWD=" + xPassCon + ";" + "DATABASE=" + xDbSql + ";" + "DSN="+xDsnCon //SQL Native Client oCon:= SR_AddConnection( CONNECT_ODBC, cConnection ) ENDIF IF xConexao+xDrvConex $ "MSSQLODBC NATIVE SERVER" //SQLSERVER NATIVE ODBC cConnection := "UID=" + xUserCon + ";" + "PWD=" + xPassCon + ";" + "DATABASE=" + xDbSql + ";" + "DSN="+xDsnCon //SQL Native Client oCon:= SR_AddConnection( CONNECT_ODBC, cConnection ) ENDIF IF xConexao+xDrvConex $ "POSTRGRENATIVE" cConnection := "driver={SqlMsServer};Server=xServIp;Database=xDbSql;Uid=xUserCon;Pwd=xPassCon;" //SQL Native Client ENDIF IF xConexao+xDrvConex $ "POSTGRESQLRDD" ConnSPrgs := "PGS=" + xServIp + ";" + "UID=" + xUserCon + ";" + "PWD=" + xPassCon +";" + "DTB=" + xDbSql + ";" + "PRT=" + xPortCon oConPrgs := SR_AddConnection( CONNECT_POSTGRES , ConnSPrgs ) xConSel := "POSTGRESQLRDD" ENDIF IF xConexao+xDrvConex $ "FIREBIRDSQLRDD" cConnection := "driver={SqlMsServer};Server=xServIp;Database=xDbSql;Uid=xUserCon;Pwd=xPassCon;" //SQL Native Client ENDIF IF xConexao+xDrvConex $ "FIREBIRNATIVE" cConnection := "driver={SqlMsServer};Server=xServIp;Database=xDbSql;Uid=xUserCon;Pwd=xPassCon;" //SQL Native Client ENDIF If cConnection < 0 ? "Erro de Conexao. Consulte o arquivo sqlerror.log para mais detalhes." //SR_EndConnection(cConnection) RETURN .F. ENDIF Daí pra frente é só acessar as tabelas e manipulá-las. No meu caso eu as criei diretamente utilizando a SQLRDD, usando o DBCREATE para criá-las e fiz os APPEND's normalmente como se estivesse utilizando em DBFNTX, DBFNTX e etc... Outra coisa, informe todas as LIB's e CH's possíveis, como o meu conhecimento é xulé, então eu coloco todos possíveis, mas acredito que as abaixo sejam obrigatórias: sqlbcc58.lib]libmysql.lib] libpq.lib]oci.lib]odbccp32.lib] []s, Quote Link to comment Share on other sites More sharing options...
jfaguiar Posted March 18, 2016 Report Share Posted March 18, 2016 Olá Amigos. Estava vendo o preço da sqlrdd em www.xharbour.com e vi que está custando $395,00. Agora vai uma dúvida: Só tem validade de 1 ano mesmo? Quer dizer que ha cada ano eu terei que comprar de novo? Quote Link to comment Share on other sites More sharing options...
joaosolution Posted March 18, 2016 Report Share Posted March 18, 2016 jfaguiar Boa tarde Não! Você compra e pode utilizar sem limite de tempo. Acho que você está se referindo a 12 meses de suporte. Att João Bosco jfaguiar 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.