The Queen 0 Denunciar post Postado Março 24, 2008 TENHO ESTA STORED PROCEDURE NO ORACLE E GOSTARIA DE RECRIÁ-LA EM MYSQL ... ESTOU COMEÇANDO AGORA A USAR ESTE SGBD E NÃO ENTENDO MUITO. SE ALGUÉM PUDER ME AJUDAR FICO FELIZ. AH, SE ALGUÉM TIVER UMA DICA DE LIVRO, APOSTILA, TUTORIAL SOBRE ADMINISTRAÇÃO E COMANDOS SQL PARA MYSQL ,TRUQUES, TUNNING ETC EU FICARIA IMENSAMENTE AGRADECIDA. PROCEDURE SP_OCOR_OBT_MOTIVO ( pNR_MOTIVO_ATEND IN NUMBER := NULL , pDS_MOTIVO_ATEND IN VARCHAR2 := NULL , pST_ATIV IN VARCHAR2 := NULL, pST_NECESSITA IN VARCHAR2 := NULL, pRES IN OUT PKG_NTC_OCOR_VIP.T_CURSOR ) IS -- CAMPOS STRSQL VARCHAR2(2000); /* Obtem todos ou apenas um motivo de acordo com o parametro */ BEGIN STRSQL := 'SELECT TP.NR_MOTIVO_ATEND AS CODIGO, '; STRSQL := STRSQL || ' TP.DS_MOTIVO_ATEND AS DESCRICAO, '; STRSQL := STRSQL || ' TP.ST_ATIV AS STATUS, '; STRSQL := STRSQL || ' TP.ST_NECESSITA AS NECESSITA '; STRSQL := STRSQL || ' FROM NTC_OCOR_MOTIVO_ATEND TP '; STRSQL := STRSQL || ' WHERE TP.NR_MOTIVO_ATEND > 0 '; IF pNR_MOTIVO_ATEND IS NOT NULL THEN STRSQL := STRSQL || ' AND TP.NR_MOTIVO_ATEND = ' || CHR(39) || pNR_MOTIVO_ATEND || CHR(39); END IF; IF pDS_MOTIVO_ATEND IS NOT NULL THEN STRSQL := STRSQL || ' AND TP.DS_MOTIVO_ATEND = ' || CHR(39) || pDS_MOTIVO_ATEND || CHR(39); END IF; IF pST_ATIV IS NOT NULL THEN STRSQL := STRSQL || ' AND TP.ST_ATIV = ' || CHR(39) || pST_ATIV || CHR(39); END IF; IF pST_NECESSITA IS NOT NULL THEN STRSQL := STRSQL || ' AND TP.ST_NECESSITA = ' || CHR(39) || pST_NECESSITA || CHR(39); END IF; OPEN pRES FOR STRSQL; END SP_OCOR_OBT_MOTIVO; Compartilhar este post Link para o post Compartilhar em outros sites
Eclesiastes 2 Denunciar post Postado Março 25, 2008 Olá, você tem conferido a documentação? http://dev.mysql.com/doc/refman/5.1/en/sto...procedures.html Caso tenha dúvidas no uso de algum comando, pergunte. :-) Compartilhar este post Link para o post Compartilhar em outros sites
The Queen 0 Denunciar post Postado Março 25, 2008 Confiro a documentação do Mysql a questão é essa: geralmente no mysql executamos uma consulta sem usar cursor, no oracle é obrigatório o uso de cursor para dar saida em uma consulta. Sendo assim já q a exeucução é imediata assim q coloco o select, como faço para montar um select (dependendo de várias condições) e depois excutar. Montar uma string e depois executar como comando como no oracle Confiro a documentação do Mysql a questão é essa: geralmente no mysql executamos uma consulta sem usar cursor, no oracle é obrigatório o uso de cursor para dar saida em uma consulta. Sendo assim já q a exeucução é imediata assim q coloco o select, como faço para montar um select (dependendo de várias condições) e depois excutar. Montar uma string e depois executar como comando como no oracle? Compartilhar este post Link para o post Compartilhar em outros sites
giesta 29 Denunciar post Postado Março 26, 2008 pra começar nao existe "PL/MySQL" e a linguagem de procedures do MySQL eu acho meio fraca d+ o ideal seria você usar uma linguagem de programaçao pra fazer seu batch-bacalhau . Porem entretanto todavia podemos te ajudar a traduzir as procedures especificas se você estiver em dificuldades... Abraço! Compartilhar este post Link para o post Compartilhar em outros sites
Eclesiastes 2 Denunciar post Postado Março 26, 2008 Para executar uma string da query: http://dev.mysql.com/doc/refman/5.0/en/sqlps.html Compartilhar este post Link para o post Compartilhar em outros sites
The Queen 0 Denunciar post Postado Março 26, 2008 Valeu gente funcionou Compartilhar este post Link para o post Compartilhar em outros sites