Executando Instruções SQL Direto no Banco de Dados com TCSQLExec em ADVPL

Tempo de leitura: 2 minutos

 

A função TCSQLExec em ADVPL é usada para executar instruções SQL diretas (como SELECT, INSERT, UPDATE, DELETE) em bancos de dados compatíveis com o TopConnect (como SQL Server, Oracle, PostgreSQL, etc.). Ela é uma das funções de acesso e manipulação de banco de dados no Protheus e tem por objetivo executar uma instrução de sintaxe SQL(Structured Query Language) diretamente no banco de dados em que está conectado.

 

Sintaxe:

TCSQLExec(<cQuery>)

 

Parâmetro(s):

 

Retorno:

 

 

Exemplo da função TCSQLExec em ADVPL:

//Bibliotecas
#Include "Protheus.ch"
#INCLUDE "TBICONN.CH"
#INCLUDE "topconn.ch"
#include "TOTVS.CH"
#include 'rwmake.ch'

/*/{Protheus.doc} fTCSExec
Exemplo da função TCSQLExec em ADVPL
@type function
@author Adilio Costa
@since 09/07/2023
@version 1.0
@?Inscreva-se no Blog ProtheusAdvpl:
https://www.protheusadvpl.com.br
@?Inscreva-se no Canal ProtheusAdvpl:
https://www.youtube.com/protheusadvpl
@?Siga-nos no Instagram:
https://www.instagram.com/protheusadvpl
@?Conheça os Cursos e Formações do ProtheusAdvpl:
https://cursos-e-formacoes-protheusadvpl.gr-site.com/


@Participe de nossas comunidades no WhatsApp:
-Comunidade Protheus Backoffice:https://chat.whatsapp.com/KMUIAjwZ6EZ6eAHsLkPTyb
-Comunidade Protheus-RH:https://chat.whatsapp.com/L5dUyAna6xU4ylG5DUgfOW
-Comunidade Protheus-Programação:https://chat.whatsapp.com/LsD6z0apdqKHlOz67bcaEn
-Comunidade Protheus-Framework:https://chat.whatsapp.com/BzUFpjaSnTC3vtsfa77jmG

|Se esse conteúdo foi útil pra você nos ajude divulgando
ele e nossas redes sociais!!|
/*/
User Function fTCSExec()
	Local aArea  := GetArea()

	Local cCodFor := "000010"
	Local cNovoNome := "Portal ProtheusAdvpl"
	Local nRet := 0
	Local cQuery := ""

	
	
	cQuery := "UPDATE "+RetSQLName("SA2") + "SA2 (NOLOCK) "
	cQuery += " SET A2_NOME:='"+cNovoNome+"' WHERE A2_COD='"+cCodFor+"' AND D_E_L_E_T_='' "

	//Executa a instrução SQL de cQuery
	nRet := TCSQLExec(cQuery)

	If(nRet < 0 )
		MsgStop("Erro na execução da query:"+TcSqlError(), "Atenção")
	Else
		MsgAlert("O UPDATE da query "+cQuery+" foi executado com sucesso!")
	EndIf



	//Restaura a área
	RestArea(aArea)
Return

Bem, finalizamos mais um post aqui no blog. Espero que você tenha entendido, qualquer dúvida nos envie um e-mail para adiliocosta@protheusadvpl.com.br. Grande abraço e fica com Deus.

Links de referência(s):

Receba as últimas atualizações do ProtheusAdvpl
Deixe seu melhor email
Nós respeitamos sua privacidade.