-
Total de itens
3.089 -
Registro em
-
Última visita
Tudo que Denis Courcy postou
-
Espelhar determinada tabela do banco de dados
pergunta respondeu ao Wendell Christian de Denis Courcy em MySQL
Exemplo: Criando os bancos e as tabelas: create database original; create database espelho; use original; create table minhatabela( id int, nome varchar(20), primary key(id))engine=myisam; use espelho; create table minhatabela( id int, nome varchar(20), primary key(id))engine=myisam; use original; Criando o trigger de insertDELIMITER $$; DROP TRIGGER `original`.`tin_minhatabela`$$ CREATE TRIGGER `original`.`tin_minhatabela` AFTER INSERT on `original`.`minhatabela` FOR EACH ROW BEGIN insert into `espelho`.`minhatabela`(id, nome) values (new.id, new.nome); END$$ DELIMITER;$$ Criando o trigger de updateDELIMITER $$; DROP TRIGGER `original`.`tup_minhatabela`$$ CREATE TRIGGER `original`.`tup_minhatabela` AFTER UPDATE on `original`.`minhatabela` FOR EACH ROW BEGIN update `espelho`.`minhatabela` set nome = new.nome where id = new.id; END$$ DELIMITER;$$ Criando o trigger de delete:DELIMITER $$; DROP TRIGGER `original`.`tdel_minhatabela`$$ CREATE TRIGGER `original`.`tdel_minhatabela` BEFORE DELETE on `original`.`minhatabela` FOR EACH ROW BEGIN delete `espelho`.`minhatabela` where id = old.id; END$$ DELIMITER;$$ -
Consulta com 5 tabelas não repitir dados [urgente]
pergunta respondeu ao Leandro H Mendes de Denis Courcy em MySQL
Laia sobre "pivot table" já comentado aqui no forum. -
Espelhar determinada tabela do banco de dados
pergunta respondeu ao Wendell Christian de Denis Courcy em MySQL
'Wendell Christian' Se estiverem na mesma instância, crie a estrutura da tabela no outro banco de dados e alimente-a através de triggers na tabela de origem. -
Não seria mais fácil você ter apenas 2 colunas nesta tabela? Exemplo: Create table Jogo codigo int, num int, primary key(codigo,num), unique key(num,codigo));
-
Lentidão em consulta em tabela com grande número de registro
pergunta respondeu ao Danilo C de Denis Courcy em MySQL
A falha do join é porque ele esta gerando um TABLE SCAN (busca linear sequencial em cada tabela do join). Isto acontece essencialmente po falta de índice que amarre uma tabela a outra. -
Re li seu primeiro post. Se você consegue se conectar com localhost no servidor é sinal que sua instalação está correta. Voce precisa criar um usuário "usuario@%", pois o que foi criado nativamente é do tipo "usuario@localhost" e não é acessivel por outras máquinas(estações) (isto inclui qualquer ip diferente do 127.0.0.1 que é o localhost). Primeiro, use o programa mysql para se conectar ao servidor como o usuário root do MySQL: shell> mysql --user=root mysql mysql> GRANT ALL PRIVILEGES ON *.* TO meunovousuario@'%' IDENTIFIED BY 'alguma_senha' WITH GRANT OPTION; Na instrução acima foi concedido todos os privilégios de acesso ao usuário meunovousuario que pode acessar de qualquer estação '%'. Para saber mais privilégios você deverá ler o manual do mysql de sua versão. Você também pode criar usuario com as instruções abaixo.(tem que executar as duas) mysql> INSERT INTO mysql.user VALUES('%','meunovousuario',PASSWORD('alguma_senha'), 'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y'); mysql> FLUSH PRIVILEGES;
-
Primeiro passo: no servidor remova a senha do root. Leia este artigo: http://scriptbrasil.com.br/forum/index.php...st&p=543812 Segundo passo: Crie um usuário usuario@% para ser acessado de uma estação (não esqueça de dar grant de select para poder testar) Terceiro passo: Reestabeleça as conexções de usuários e suas seguranças. Incluindo o root.
-
Porque não esta aceitando zero na frente
pergunta respondeu ao Marcelo França de Denis Courcy em MySQL
Uma outra possibilidade é modificar o atributo para que contenha a cláusula ZEROFIL. Zerofil preenche zeros a esquerda de números inteiros. -
Lentidão em consulta em tabela com grande número de registro
pergunta respondeu ao Danilo C de Denis Courcy em MySQL
O primeiro passo é criar um índice por data descendente e modificar sua consulta para fazer o abaixo: SELECT a, b, c FROM tabela use index (nome-do-indice-com-data-invertida) LIMIT 12 As demais perguntas responderemos se esta ação não for suficiente. -
Porque não esta aceitando zero na frente
pergunta respondeu ao Marcelo França de Denis Courcy em MySQL
Campos numericos com ZERO na frente são representações de bases numéricas diferentes. Neste caso base OCTAL. A representação de números em bases decimais se faz SEM zeros na frente. Outra coisa, o número 5.405 não é 5mil 405. é 5,405. -
A sintaxe correta seria: SELECT tbpedido_venda.codped , tbcliente.nome , tbpqp.produto , tbpqp.qtde , tbpedido_venda.valt , formpag.fomap , formpag.valp FROM tbpedido_venda INNER JOIN tbcliente ON tbcliente.codcli = tbpedido_venda.fk_cliente_codcli INNER JOIN tbpqp ON tbpqp.fk_pedido_venda = tbpedido_venda.codped INNER JOIN formpag ON formpag.fk_pedido_venda = tbpedido_venda WHERE tbpedido_venda.dataped='20121127';
-
Não é questão de salvar de forma correta ou errada. Da mesma forma que um HD precisa de manutenção (desfragmentação, verificação de erros e backups), um banco de dados também precisa. Quando registros são apagados tanto os índices como os dados ficam "inchados" (ficam acunas) (seus espaços não são cobertos até que haja uma otimização). (equivale a defragmentação). Quando uma tabela se corrompe uma ação de correção é necessária (assim como uma verificação de erro do disco) Os backups devem ser realizados constantemente (tanto do HD como do banco de dados).
-
Consulta sql em 2 tabelas retornando valor errado
pergunta respondeu ao claudiojr de Denis Courcy em MySQL
A sintaxe correta é: select codcliente,nome,codplano,tipo,vdown,vup,ldown,ilimitado,valor from cliente c inner join plano p ON p.codplano = c.codplano where tipo = 'simples' order by nome Nesta caso imagino que codplano é um campo em cliente para informar que o cliente possui um determinado plano. -
Desinstale o mysql após desinstalar vá ao prompt (se você estiver sando o win xp ou superior) de comando (iniciar/executar) digite cmd na tela do prompt digite SC DELETE MySQL (sendo MySQL o nome do serviço que você usou na primeira vez (inetalação padrão)) feche a tela do prompt reinstale o mysql
-
Dependendo do tipo de dado contido no campo blob não há como pesquisar seu conteúdo.
-
Dependendo de como foi criptografada não há como retornar ao original.
-
Forum errado. Movendo MySQL-->>PHP
-
Procure por pivot table. Já publiquei alguns tópicos a respeito.
-
Engana ele. Um select sempre retorna como uma "tabela". então pode ser tratado da mesma forma: SELECT * FROM(Select apl_pub_img.publicacao_idx,apl_pub.nome,apl_pub_img.imagem, ranking From apl_publicacao apl_pub Inner Join apl_publicacao_paginas apl_pub_img On apl_pub.publicacao_idx = apl_pub_img.publicacao_idx Where apl_pub.publicacao_idx=11 Group By apl_pub_img.publicacao_idx ) minhatabeladeretorno ORDER BY ranking ASC
-
Leia sobre log binário
-
Diversas são as razões para seu sistema estar lerdo. A principal é que suas consultas devem estar gerando table scan (varredura completa na(s) tabela(s) para achar registro(s).) e isto se deve a alguns fatores, tais como, falta de indices, pesquisas com like ou substring ou outra que varra um determinado campo, etc. Você vai ter que estudar e depurar cada uma das rotinas de acesso a banco em seu sistema para poder melhorar a performance dele. Meu sistema trabalha com mais de 1000 inputs por dia e não nega fogo porque está bem azeitadinho.
-
Movendo MySQL -->>PHP
-
(Resolvido) Erro ao criar Foreing key
pergunta respondeu ao Marcelo Cardoso de Denis Courcy em MySQL
Na instrução ALTER TABLE IMOVELNET.IMOVEL ADD (FOREING KEY (DCVENDEDOR) REFERENCES IMOVELNET.VENDEDOR (CDVENDEDOR)); Não existe o campo DCVENDEDOR na tabela IMOVELNET.IMOVEL -
Sim é possível.
-
Estude sobre storage procedure.(Ver manual do mysql de dua verão)