| Discussion Home | About | Threads By Date | Search |
Title
Stored Procedures No MySQL
Content
Eu já tinha instalado o WAMP Server (que configura automáticamente o APACHE, PHP e MySQL no Windows) e depois instalei o ColdFusion 8.
Quando eu inicializo o MySQL, via Wamp Server, as minhas páginas CFM acessam os bancos de dados normalmente, assim como as páginas em PHP.
Resolvi começar a explorar as possibilidades de Stored Procedures do MySQL 5.0.51b e criei a SP abaixo:
CREATE PROCEDURE `usuarios2`( IN chave varchar( 20 ), IN valor varchar( 20 ) )
BEGIN
if (chave = 'nomeus') THEN
Select idus as resultado from siteus where nomeus = valor;
ELSE
Select nomeus as resultado from siteus where idus = valor;
END IF;
End
A Stored Procedure acima funciona perfeitamente quando acessada via PHP, mas com o ColdFusion dá erro. Eu criei a seguinte página em cfm para acessar a rotina armazenada no MySQL:
<cfstoredproc datasource="mcr" procedure="usuarios2">
<cfprocresult name="res1">
<cfprocparam type="IN" cfsqltype="CF_SQL_VARCHAR" value="idus">
<cfprocparam type="IN" cfsqltype="CF_SQL_VARCHAR" value="2">
</cfstoredproc>
<cfoutput query="res1">
#res1.resultado#
</cfoutput>
E no navegador, recebo o seguinte erro:
The web site you are accessing has experienced an unexpected error.
Please contact the website administrator.
| The following information is meant for the website developer for debugging purposes. | ||||
| Error Occurred While Processing Request | ||||
|
||||
O que estaria acontecendo??? Eu não entendo o que pode ser e preciso de ajuda para resolver o problema, por favor.
Desde já, agradeço!
|
|
posted 04/07/09 by Marcelo4001 | Report Abuse <p>Não acredito!...</p> <p>Simplesmente tirei os espaços antes e depois dos valores para os tamanhos dos parâmetros nas colunas, que o próprio phpmyadmin colocou quando eu criei a Stored Procedure e ela passou a funcionar no ColdFusion!... Simples assim!</p> <p>Troquei "varchar( 20 )" por "varchar(20)" na criação da SP e funcionou!</p> <p>Mesmo assim, obrigado a todos que leram estas mensagens pensando em me ajudar.</p> <p>Volto a postar quando encontrar outro problema ou, caso eu possa ajudar a outra pessoa.</p> |