Jump to content
  • ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By johnklo
      COM BASE NA TABELA HR DO ORACLE
      Preciso criar uma sub-rotina (procedure) que imprima na tela o número de funcionários (employees) agrupados por departamentos (department_id). Deve-se ordenar a saída em ordem decrescente pela quantidade de departamentos. Pode-se utilizar qualquer forma de cursor para imprimir o resultado.
    • By Marcos_imasters
      Boa tarde pessoal, primeiro queria deseja cada um de vocês um feliz natal e prospero ano novo.
       
      tou com um problema com busca de categorias
       
      exemplo da query que estou tentado usar  SELECT * FROM produtos WHERE categoria IN(1) ORDER BY nome ASC
      no campo produtos tenho a coluna categoria e ela ta salva assim com os ids da categorias "1,5,18,22,75' so que quando uso essa query ele so ler como se fosse somente o primeiro id
       
      exemplo ele so busca as categorias que temnha com  o começo 1 queria fazer que buscasse caso estivesse assim "5,8,1,19,22"
       
      alguem tem uma solução?
    • By Andinho Luiz
      Boa tarde a todos,
       
      Estou tentando criar uma Procedure no MySQL e tenho esta tabela "Cliente". 
       
      CREATE TABLE IF NOT EXISTS cliente ( id_cliente INT(5) AUTO_INCREMENT PRIMARY KEY, tipo CHAR(1) NOT NULL, rSocialNome VARCHAR(20) NOT NULL, cnpjCPF VARCHAR(30) NOT NULL, ieRG VARCHAR(30), contato VARCHAR(50), email VARCHAR(30), site VARCHAR(30), dataCadastro DATE, usuario VARCHAR(30) )ENGINE=MyISAM; Tenho outra tabela que é a "Endereço"
      CREATE TABLE IF NOT EXISTS `endereco` ( `id_endereco` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, `id_cliente` INT(11) NOT NULL, `logradouro` VARCHAR(20) NOT NULL , `rua` VARCHAR(25) NOT NULL , `numero` INT(11) NOT NULL , `complemento` VARCHAR(40) , `bairro` VARCHAR(40) NOT NULL , `cidade` VARCHAR(40) NOT NULL , `estado` VARCHAR(40) NOT NULL , `cep` VARCHAR(9) NOT NULL , PRIMARY KEY (`id_endereco`), constraint fk_endereco_cliente FOREIGN KEY (id_cliente) REFERENCES cliente (id_cliente) ) ENGINE=MyISAM  
      Para fazer o insert nas duas tabelas eu criei uma procedure, podem quando tento adicionar o MySQL da erro "ALERTA: Erro ao inserir na tabela de pessoas"
       
      DELIMITER $$ CREATE DEFINER=`dotinfoc`@`localhost` PROCEDURE `cad_cliente`( IN c_tipo CHAR(1), IN c_rSocialNome VARCHAR(20), IN c_cnpjCPF VARCHAR(30), IN c_ieRG VARCHAR(30), IN c_contato VARCHAR(50), IN c_email VARCHAR(30), IN c_site VARCHAR(30), IN c_logradouro VARCHAR(20), IN c_rua VARCHAR(25), IN c_numero INT(11) , IN c_complemento VARCHAR(40) , IN c_bairro VARCHAR(40), IN c_cidade VARCHAR(40), IN c_estado VARCHAR(40), IN c_cep VARCHAR(9) ) BEGIN DECLARE msg VARCHAR(1000) DEFAULT "sem mensagem"; DECLARE excecao SMALLINT DEFAULT 0; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET excecao = 1; START TRANSACTION; INSERT INTO cliente (tipo, rSocialNome, cnpjCPF, ieRG, contato, email, site, dataCadastro, usuario) VALUES (c_tipo, c_rSocialNome, c_cnpjCPF, c_ieRG, c_contato, c_email, c_site); IF excecao = 1 THEN SET msg = "ALERTA: Erro ao inserir na tabela de pessoas"; ROLLBACK; ELSE SELECT DISTINCT LAST_INSERT_ID() INTO @id_cliente FROM cliente; IF excecao = 1 THEN SET msg = "ALERTA: Erro ao buscar o ultimo ID inserido em clientes"; ROLLBACK; ELSE INSERT INTO endereco(id_cliente, logradouro, rua, numero, complemento, bairro, cidade, estado, cep) values(@id_cliente, c_logradouro, c_rua, c_numero, c_complemento, c_bairro, c_cidade, c_estado, c_cep); IF excecao = 1 THEN SET msg = "ALERTA: Erro ao inserir na tabela de Endereco"; ROLLBACK; END IF; END IF; END IF; IF excecao <> 1 THEN COMMIT; SET msg = "ALERTA: Registro Incluido com sucesso"; END IF; SELECT msg AS msg; END$$ DELIMITER ;  
       
    • By josePeixoto
      Olá,
       
      quando tento executar a trigger abaixo, ele me retorna 
      Erro(56,16): PLS-00306: wrong number or types of arguments in call to '||'  
      create or replace TRIGGER API_SIM_PF_ATUALIZA_DENTALIS BEFORE INSERT OR UPDATE ON PESSOA_FISICA FOR EACH ROW DECLARE type t_num is table of number; DS_EMAIL_W t_num; TELEFONE_RES_W t_num; TELEFONE_COM_W t_num; ESTADO_CIVIL_W VARCHAR2(255); ENDERECO_RES_W t_num; NUMERO_W t_num; BAIRRO_RES_W t_num; COMPLEMENTO_RES_W t_num; CIDADE_RES_W t_num; CEP_RES_W t_num; ENDERECO_COM_W t_num; NUMERO_COM_W t_num; BAIRRO_COM_W t_num; COMPLEMENTO_COM_W t_num; CIDADE_COM_W t_num; CEP_COM_W t_num; PROFISSIONAL_W VARCHAR2(255); SEXO_W VARCHAR2(255); DT_NASCIMENTO_W t_num; BEGIN SELECT DISTINCT CP.DS_EMAIL, ('('||nr_ddd_telefone||')'||nr_telefone), ('('||nr_ddd_telefone||')'||nr_telefone), (SELECT CP1.DS_ENDERECO FROM COMPL_PESSOA_FISICA CP1 WHERE CP1.CD_PESSOA_FISICA = :NEW.CD_PESSOA_FISICA AND CP1.IE_TIPO_COMPLEMENTO = 1), (SELECT CP1.NR_ENDERECO FROM COMPL_PESSOA_FISICA CP1 WHERE CP1.CD_PESSOA_FISICA = :NEW.CD_PESSOA_FISICA AND CP1.IE_TIPO_COMPLEMENTO = 1), (SELECT CP1.DS_BAIRRO FROM COMPL_PESSOA_FISICA CP1 WHERE CP1.CD_PESSOA_FISICA = :NEW.CD_PESSOA_FISICA AND CP1.IE_TIPO_COMPLEMENTO = 1), (SELECT CP1.DS_COMPLEMENTO FROM COMPL_PESSOA_FISICA CP1 WHERE CP1.CD_PESSOA_FISICA = :NEW.CD_PESSOA_FISICA AND CP1.IE_TIPO_COMPLEMENTO = 1), (SELECT CP1.DS_MUNICIPIO FROM COMPL_PESSOA_FISICA CP1 WHERE CP1.CD_PESSOA_FISICA = :NEW.CD_PESSOA_FISICA AND CP1.IE_TIPO_COMPLEMENTO = 1), (SELECT CP1.CD_CEP FROM COMPL_PESSOA_FISICA CP1 WHERE CP1.CD_PESSOA_FISICA = :NEW.CD_PESSOA_FISICA AND CP1.IE_TIPO_COMPLEMENTO = 1), TO_CHAR(:NEW.DT_NASCIMENTO,'"YYYY-MM-DD HH24:MI:SS') BULK COLLECT INTO DS_EMAIL_W,TELEFONE_RES_W,TELEFONE_COM_W,ENDERECO_RES_W,NUMERO_W,BAIRRO_RES_W,COMPLEMENTO_RES_W,CIDADE_RES_W,CEP_RES_W,/*ENDERECO_COM_W,NUMERO_COM_W,BAIRRO_COM_W,COMPLEMENTO_COM_W, CIDADE_COM_W,CEP_COM_W,*/DT_NASCIMENTO_W FROM TASY.COMPL_PESSOA_FISICA CP WHERE CP.CD_PESSOA_FISICA =:NEW.CD_PESSOA_FISICA AND CP.IE_TIPO_COMPLEMENTO = 1; SELECT V.DS_VALOR_DOMINIO INTO ESTADO_CIVIL_W FROM VALOR_DOMINIO V WHERE CD_DOMINIO = 5 AND V.VL_DOMINIO = :NEW.IE_ESTADO_CIVIL; SELECT CA.DS_CARGO INTO PROFISSIONAL_W FROM CARGO CA WHERE CA.CD_CARGO = :NEW.CD_CARGO; SELECT V.DS_VALOR_DOMINIO INTO SEXO_W FROM VALOR_DOMINIO V WHERE CD_DOMINIO = 4 AND V.VL_DOMINIO = :NEW.IE_SEXO; BEGIN SEND_DB_REQUST_PROC ('http://628186fc.ngrok.io/DentalisIntegration-1.0.0/dentalis/createuser', '{ "nome":' || :NEW.NM_PESSOA_FISICA ||','|| '"codigo_externo":' || :NEW.CD_PESSOA_FISICA ||','|| '"codigo_plano":' || 694 ||','|| '"matricula":' || :NEW.CD_PESSOA_FISICA || ',' || '"cpf":' || :NEW.NR_CPF ||','|| '"rg":' || :NEW.NR_IDENTIDADE || ',' || '"email":' || DS_EMAIL_W || ',' || '"telefone_res":' || TELEFONE_RES_W ||','|| '"telefone_com":' || TELEFONE_COM_W || ',' || '"celular":' || :NEW.NR_TELEFONE_CELULAR || ',' || '"observacao":' || :NEW.DS_OBSERVACAO || ',' || '"estado_civil":' || ESTADO_CIVIL_W || ',' || '"profissao":' || PROFISSIONAL_W || ',' || '"sexo":' || SEXO_W || ',' || '"data_nascimento":' || DT_NASCIMENTO_W || ',' || '"endereco_res":' || ENDERECO_RES_W || ',' || '"numero_res":' || NUMERO_W || ',' || '"bairro_res":' || BAIRRO_RES_W || ',' || '"complemento_res":' || COMPLEMENTO_RES_W || ',' || '"cidade_res":' || CIDADE_RES_W || ',' || '"cep_res":' || CEP_RES_W || ',' || '"endereco_com": "",' || '"numero_com":"",' || '"bairro_com":"",' || '"complemento_com":"",' || '"cidade_com":"",' || '"cep_com":""' || '}'); exception when others then raise_application_error(-20000,'Erro: '|| sqlerrm); END; END;  
      Alguém sabe o que pode ser? 
       
      Obrigado desde já pela atenção!
    • By Ederson Silva
      Olá.
       
      Estou tendo problemas com uma procedure na qual dentro dela existe uma função que busca informações de um XML. Quando executo esta função dentro do Studio Management ele funciona, só que se executo no reporting service ou diretamente no ERP o SQL Server retorna o erro abaixo:
       
      Falha em SELECT porque as seguintes opções SET têm configurações incorretas:
      'ARITHBORT'. Verifique se as opções SET estão corretas para uso com exibições indexadas e/ou índices em colunas computadas e/ou índices filtrados e/ou notificações de consulta e/ou métodos de tipo de XML e/ou operações de índice espacial.
       
      Tanto na procedure quanto nas functions eu setei as seguintes options:
       
      SET ANSI_NULLS ON
      SET ANSI_PADDING ON
      SET ANSI_WARNINGS ON
      SET ARITHABORT ON
      SET CONCAT_NULL_YIELDS_NULL ON
      SET NUMERIC_ROUNDABORT OFF
      SET QUOTED_IDENTIFIER ON
       
      Se alguém tiver alguma ideia de como corrigir isso por gentileza me dê uma luz.
       
      Obrigado!
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.