2 de octubre de 2007

VFP9 a MySQL5 - Eliminacion de Procedimientos y Funciones

Ha veces puede ser necesario o resultarnos util borrar todas las funciones, y procedimientos que tenemos almacenados en nuestra base de datos. Bien sea por limpieza de la misma o para volver a recrearlos a través de un Script de MySQL. (Archivo de texto con con instrucciones propias de MySQL).

Los procedimientos están almacenados en una tabla de las base de datos principal de MySQL (mysql.proc). Y las funciones están almacenadas en la tabla (mysql.func). Simplemente lo único de debemos hacer es un "ZAP" de dichas tablas.

Utilizaremos la sentencia de MySQL "TRUNCATE" que es equivalente al "ZAP" de Visual FoxPro.

Vamos ha hacerlo como siempre desde nuestro querido FOX.
******************************************************
* ZAP(eliminacion)   de Funciones y Procedimientos de MySQL
******************************************************

LOCAL CSQL, NH, CCADENA
CSQL=””
NH=0
CCADENA=””
CSQL= "DRIVER={MySQL ODBC 3.51 Driver};" + ;
"SERVER=127.0.0.1;" + ;
"PORT=3306;" + ;
"UID=usuario;" + ;
"PWD=pasword;" + ;
"DATABASE=mybasededatos;" + ;
"OPTIONS=2049;"

NH=SQLSTRINGCONNECT(""+CSQL, .T.)
IF NH>0
        SQLSETPROP(NH,'Asynchronous', .T.)
        SQLSETPROP(NH,'BatchMode', .T.)

        ** ZAP de Funciones
        TEXT TO CSQL TEXTMERGE NOSHOW
                TRUNCATE TABLE MYSQL.FUNC
        ENDTEXT
        SQLPREPARE(NH,""+CSQL)
        SQLEXEC(NH)

        ** ZAP de Procedimientos
        TEXT TO CSQL TEXTMERGE NOSHOW
                TRUNCATE TABLE MYSQL.PROC
        ENDTEXT
        SQLPREPARE(NH,""+CSQL)
        SQLEXEC(NH)

        SQLDISCONNECT(NH)
 
ENDIF

RELEASE CSQL,NH,CCADENA

*************************************************************
Una vez eliminados los procedimientos y Las funciones podemos recrearlos a través de un Script de MySQL

Desde la linea de comandos del MySQL podemos ejecutar:
SOURCE C:\SCRIPT.SQL
Donde SCRIPT.SQL es un archivo de texto que contiene instrucciones MySQL específicas que puede ser creado perfectamente con el NOTEPAD de Windows.

Antonio L. Montagut
www.ontarioxb.es


No hay comentarios. :

Publicar un comentario