Ir para conteúdo
Fórum Script Brasil

Denis Courcy

Moderadores
  • Total de itens

    3.089
  • Registro em

  • Última visita

Tudo que Denis Courcy postou

  1. Colocar botão é função de programação e não de banco de dados. Transferindo para o fórum de JAVA
  2. Corrija assim: DELIMITER // CREATE FUNCTION tt() RETURNS FLOAT BEGIN DECLARE alea FLOAT; SET alea = RAND(); RETURN alea; END // Execute assim: SELECT tt();
  3. Este cara aqui liga com quem? Este cara aqui Não tem necessidade. Em um join entre A e B, se a tabela B tiver 2 registros que correspondam ao join com A, então ela retornará os dois registros.
  4. Você não está comparando tijolo com pipoca? sorteio_cliente contem dados de cliente informados em cliente_id? Nesta ligação ( INNER JOIN cliente ON (sorteio_cliente = cliente_id) ) de onde vem respectivamente os campos sorteio_cliente e cliente_id sorteio_cliente contem dados de cliente informados em premio_id? E nesta ligação (INNER JOIN premio ON (sorteio_cliente = premio_id)) de onde vem respectivamente os campos sorteio_cliente e premio_id?
  5. Você já fez. INSERT INTO tabela (coluna1, coluna2) VALORES (22, 88), (22,90), (22,91) O resto é invenção de moda.
  6. Verifique as propriedades de collation e charset do banco e da tabela em questão. Leia o manual do mysql de sua versão.
  7. Tente assim: SELECT cd_funcionario, MAX(dt_lotacao) AS dt_lotacao FROM tabela GROUP BY cd_funcionario
  8. Tente assim SELECT t1.chapa, t1.Provento, t1.Desconto, (t1.Provento - t1.Desconto) AS saldo FROM ( SELECT t.chapa, SUM(IF(t.provdescbase="P",t.valor,0)) AS Provento, SUM(IF(t.provdescbase="D",t.valor,0)) AS Desconto FROM tabela t GROUP BY t.chapa ) t1
  9. Poderia passar a estrutura das tabelas, por favor?
  10. Você não consegue migrar usando o comando abaixo? INSERT INTO tabela_destino(campo1, campo2) SELECT c1 AS campo1, c2 AS campo2 FROM tabela_origem.
  11. Denis Courcy

    Fatal error:

    Movendo para o forum de PHP
  12. Tente fazer o que este cara aqui fez. http://www.clubepc.org/exportar-dados-do-ms-sql-server-para-mysql-22-03-2011
  13. Isto é trabalho escolar? Se quer que o façamos pra você, esqueça. Poderemos te ajudar, mas não fazê-lo do zero. Mostre o que você já entendeu ou começou a fazer e te orientaremos.
  14. Tente substituir DATEDIFF(SYSDATE(), DateLeave) por DATEDIFF(DATE(NOW()), DateLeave)
  15. Use storage procedure. Segue abaixo um exemplo de um CRUD para prestadores(médicos) e suas especialidades. Demais campos usados nestas tabelas foram suprimidos deste exemplo. Prestador e especialidade se relacionam em muitos para muitos através da tabela prestador_especialidade. O campo ação deve ser I ou A ou E, respectivamente para Inclusão, Alteração e Exclusão. O campo pidPrestador deve ser preenchido com 0 para Inclusão e com o ID do prestador para as demais ações. use assim: CALL prestador_crud("I", 0, "nomedomedico"); A resposta vem em um select que você pode usar normalmente; Espero que seja útil DELIMITER $$ USE `sase`$$ DROP PROCEDURE IF EXISTS `prestador_crud`$$ CREATE DEFINER=`root`@`localhost` PROCEDURE `prestador_crud`(IN Acao CHAR(1), IN pidPrestador INTEGER, IN pnmPrestador VARCHAR(50), IN pidEspecialidade INTEGER) BEGIN DECLARE ppnmEspecialidade VARCHAR(50); -- usado para testar se especialidade medica está previaemte cadastrada DECLARE msg VARCHAR(1000) DEFAULT "sem mensagem"; DECLARE excecao SMALLINT DEFAULT 0; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET excecao = 1; SELECT nmEspecialidade INTO ppnmEspecialidade FROM especialidade WHERE idEspecialidade = pidEspecialidade; IF ppnmEspecialidade IS NULL THEN SET excecao = 1; SET msg = "MySQL: Erro: não Localizei Especialidade ao Gravar Medico/Prestador"; END IF; IF pnmPrestador = "" OR (Acao <> "I" AND pidPrestador = 0) THEN -- os demais campos já foram validados pelo programa antes de entrar nesta peocedure SET msg = "MySQL: Erro na passagem de parametros"; SET excecao = 1; ELSE START TRANSACTION; /*Inclusao de Medico/Prestador*/ IF Acao = "I" THEN INSERT INTO prestador(nmPrestador) VALUES (pnmPrestador); IF excecao <> 1 THEN SELECT DISTINCT LAST_INSERT_ID() INTO @ppidPrestador FROM prestador; ELSE SET msg = "MySQL: Erro ao inserir na tabela de prestador"; ROLLBACK; END IF; END IF; IF excecao <> 1 THEN IF Acao <> "I" THEN SET @ppidPrestador = pidPrestador; DELETE FROM prestador_especialidade WHERE idPrestador = @ppidPrestador; IF excecao = 1 THEN SET msg = CONCAT("MySQL: Erro ao excluir prestador_especialidade. Acao = \"", Acao, "\" Prestador = ", pidPrestador); ROLLBACK; END IF; END IF; /*Alteracao de Medico/Prestador*/ IF Acao = "A" THEN UPDATE prestador SET nmPrestador = pnmPrestador WHERE idPrestador = @ppidPrestador; IF excecao = 1 THEN SET msg = "MySQL: Erro ao atualizar prestador"; ROLLBACK; END IF; END IF; END IF; IF excecao <> 1 AND Acao <> "E" THEN INSERT INTO prestador_especialidade(idPrestador, idEspecialidade) VALUES(@ppidPrestador, pidEspecialidade); IF excecao = 1 THEN SET msg = "MySQL: Erro ao inserir em prestador_especialidade na inclusao/alteracao de prestador"; ROLLBACK; END IF; END IF; /*Exclusao de Medico/Prestador*/ IF excecao <> 1 THEN IF Acao = "E" THEN DELETE FROM prestador WHERE idPrestador = pidPrestador; IF excecao = 1 THEN SET msg = "MySQL: Erro ao excluir Medico/Prestador"; ROLLBACK; END IF; END IF; END IF; END IF; /*Se tudo deu certo, ent?o finaliza confirmando a grava??o.*/ IF excecao <> 1 THEN COMMIT; IF Acao = "I" THEN SET msg = "MySQL: Medico/Prestador Incluido com sucesso"; ELSE IF Acao = "A" THEN SET msg = "MySQL: Medico/Prestador Alterado com sucesso"; ELSE SET msg = "MySQL: Medico/Prestador Excluido com sucesso"; END IF; END IF; END IF; SELECT msg AS msg; END$$ DELIMITER ;
  16. Como está seu arquivo TXT e como é a estrutura da base de dados que receberá o LOAD?
  17. O erro é o ponto e virgula após o (@linha,2,5). Coloque virgula.
  18. Tente assim: SELECT e.id,e.nome,pe.valor FROM equipamentos e INNER JOIN prop_equip pe ON e.id = pe.equip_id INNER JOIN propriedades p ON pe.prop_id = p.id WHERE (e.id = 1 AND pe.valor > 7.5) OR (e.id = 2 AND pe.valor = 220);
  19. Dependendo da tabela, a maioria dos dados contidos nela são históricos e de baixa procura. Talvez seja interessante passar para uma tabela de histórico os dados do início da tabela até determinado período, deixando na tabela principal os dados mais atuais e de maior índice de acesso.
  20. O erro está no SQL ou no seu código PHP?
  21. Qual o campo deste csv informa a colocação. é pontos? Quem é jornada?
×
×
  • Criar Novo...