evertonlb Posted July 7, 2020 Report Share Posted July 7, 2020 Pessoal.. eu li vários tópicos e dúvidas, mas não consegui dar o ponta pé inicial... Tô usando DBF em alguns softwares e MySql com SqlLib em outro, mas sempre usando comandos DBF Tenho o FW 19.05 e o xHb 1.2.3 Nessa atualização a SQLLib não funciona, então gostaria de ir de vez para acessos nativos e comandos SQL. Pelo o que entendi o xHb tem acesso com a SQLRDD (que não achei no meu hd) e parece que o FW também tem funções e comandos SQL.. To certo ou estou errado?? Procurei o comando/função de conexão ao BD.. e não achei! Bom.. to agradecendo qualquer dica!! Quote Link to comment Share on other sites More sharing options...
aferra Posted July 7, 2020 Report Share Posted July 7, 2020 Boa tarde. eu escolheria ficar nativo. nessa sua versão tem isso. dê uma olhada em todos os fontes maria*.prg, em mariainv.prg lhe dará todo o suporte necessário pra o CRUD. evertonlb 1 Quote Link to comment Share on other sites More sharing options...
Marca Posted July 8, 2020 Report Share Posted July 8, 2020 Everton. Funciona sim A versão do Five ai não tem nenhuma interferência no funcionamento da Sqllib. Quem determina isso é o xHarbour utilizado e pelo que vc postou ai é o 1.2.3 que é compatível com a sqllib. Mas utilizar os comandos nativos é sempre a melhor opção e como o Ale disse acima se esta versão já contempla o Sql nativo no Five seria melhor já utilizar o que Five esta disponibilizando já que terá que trocar sua maneira de trabalhar de dbf para Sql. aferra 1 Quote Link to comment Share on other sites More sharing options...
evertonlb Posted July 8, 2020 Author Report Share Posted July 8, 2020 8 horas atrás, Marca disse: Everton. Funciona sim A versão do Five ai não tem nenhuma interferência no funcionamento da Sqllib. Quem determina isso é o xHarbour utilizado e pelo que vc postou ai é o 1.2.3 que é compatível com a sqllib. Mas utilizar os comandos nativos é sempre a melhor opção e como o Ale disse acima se esta versão já contempla o Sql nativo no Five seria melhor já utilizar o que Five esta disponibilizando já que terá que trocar sua maneira de trabalhar de dbf para Sql. Mesmo?? Eu tentei compilar com a sqllib_xHB_121_rev6717 e me deu uma pancada de erros... Vou tentar de novo hoje.. Quote Link to comment Share on other sites More sharing options...
sygecom Posted July 9, 2020 Report Share Posted July 9, 2020 Se poder fuja do SQLRDD, use comandos SQL nativo, tem as lib do próprio xHarbour/harbour também pra uso com SQL direto, no Harbour tem o SQLMIX que aceita alguns comando xbase e o resto SQL. evertonlb 1 Quote Link to comment Share on other sites More sharing options...
evertonlb Posted July 9, 2020 Author Report Share Posted July 9, 2020 15 horas atrás, sygecom disse: Se poder fuja do SQLRDD, use comandos SQL nativo, tem as lib do próprio xHarbour/harbour também pra uso com SQL direto, no Harbour tem o SQLMIX que aceita alguns comando xbase e o resto SQL. É isso que eu quero, usar os comandos SQL.. Uso o xHb.. vou ver estes comandos... Obrigado! Quote Link to comment Share on other sites More sharing options...
zekasan Posted August 6, 2020 Report Share Posted August 6, 2020 Boa tarde eu uso assim,eu acho prático, me deram a dica aqui no grupo: Pego os dados "oLloyds:Fields("tSaoCte"):Value" , e neste caso os transfiro para uma planilha "oSheetPr:Cells(4,2):value:=oLloyds:Fields("tSaoCte"):Value" ..... ABRE_SQL() cCmdSql:="select sum(SaoCte) as tSaoCte,sum(SaoVol) as tSaoVol,sum(SaoM3) as tSaoM3,sum(SaoFrete) as tSaoFrete, "+; "sum(RioCte) as tRioCte,sum(RioVol) as tRioVol,sum(RioM3) as tRioM3,sum(RioFrete) as tRioFrete, "+; "sum(BhzCte) as tBhzCte,sum(BhzVol) as tBhzVol,sum(BhzM3) as tBhzM3,sum(BhzFrete) as tBhzFrete "+; "from LLOYDS_CTE "+; "where DtEmissao >= '"+data_sql(c1101)+"' and DtEmissao <= '"+data_sql(c1102)+"'" try oLloyds := oCon:Execute(cCmdSql) catch oErr msginfo( "Erro ao abrir Tabela LLOYDS_CTE","ATENÇÃO" ) return(.f.) end oSheetPr:Cells(4,2):value:=oLloyds:Fields("tSaoCte"):Value oSheetPr:Cells(4,3):value:=oLloyds:Fields("tSaoVol"):Value oSheetPr:Cells(4,4):value:=oLloyds:Fields("tSaoM3"):Value oSheetPr:Cells(4,5):value:=oLloyds:Fields("tSaoFrete"):Value oSheetPr:Cells(5,2):value:=oLloyds:Fields("tRioCte"):Value oSheetPr:Cells(5,3):value:=oLloyds:Fields("tRioVol"):Value oSheetPr:Cells(5,4):value:=oLloyds:Fields("tRioM3"):Value oSheetPr:Cells(5,5):value:=oLloyds:Fields("tRioFrete"):Value oSheetPr:Cells(6,2):value:=oLloyds:Fields("tBhzCte"):Value oSheetPr:Cells(6,3):value:=oLloyds:Fields("tBhzVol"):Value oSheetPr:Cells(6,4):value:=oLloyds:Fields("tBhzM3"):Value oSheetPr:Cells(6,5):value:=oLloyds:Fields("tBhzFrete"):Value ... FECHA_SQL() function ABRE_SQL() * Server = nome do servidor ou seu IP * Database = nome do seu BD * Uid = usuário * Pwd = senha cConnection := "driver={SQL Server};Server=xxx.xxx.xxx.xxx;Database=NONAME;Uid=nonane;Pwd=noname" try oCon:=tOleAuto():new("ADODB.Connection") oCon:Open( cConnection ) CATCH oError MsgInfo( "Problema com a conexão ao banco de dados!" +CRLF+ ; "Error: " + Transform(oError:GenCode, nil) + ";" +CRLF+ ; "SubC: " + Transform(oError:SubCode, nil) + ";" +CRLF+ ; "OSCode: " + Transform(oError:OsCode, nil) + ";" +CRLF+ ; "SubSystem: " + Transform(oError:SubSystem, nil) + ";" +CRLF+ ; "Mensaje: " + oError:Description, "Atenção" ) return(.f.) end return(.t.) function FECHA_SQL() oCon:close() return(.t.) Quote Link to comment Share on other sites More sharing options...
rochinha Posted September 1, 2020 Report Share Posted September 1, 2020 Amiguinhos, Aqui tem algumas dicas sobre uso do ADO com banco de dados. Vale frisar que ADO necessita de driver ODBC compativel com o banco de dados a ser usado. Bom trabalho. 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.