-
Total de itens
3.089 -
Registro em
-
Última visita
Tudo que Denis Courcy postou
-
(Resolvido) Backup Banco de Dados MySQL - Versão de Windows
pergunta respondeu ao rombesso de Denis Courcy em MySQL
Procure sobre mysqldump aqui no forum. (É free e vem com a instalação do mysql) -
O erro apresentado informa que você está tentando inserir dados duplicados em um determinado atributo que possui uma chave única. Chaves únicas não deixam entrar registros duplicados.
-
Corrigindo sua query, temos: INSERT INTO POSICAO_GPS (SQ_POSICAO_GPS,CD_EMPRESA,DT_POSICAO,SQ_VEICULO,NR_ANTENA_RASTREAMENTO,NR_LAT,NR_LOG,DS_POSICAO,ID_IGNICAO) VALUES(UUID(),12,'1969-12-30 21:00:03',5219,5154871,'0','0','','D');
-
Forçando Linha no topo do resultado de um Select.
pergunta respondeu ao Kryone de Denis Courcy em MySQL
Oi 'Kryone', Uma solução seria: SELECT if(id=4598,0,1) AS ordem, tabela.* FROM tabela order by ordem ASC, published_at desc, id desc -
Selecione colunas da tabela Nomedatabela, o resultado desta pesquisa ordene descendentemente e pequ apenas o primeiro registro. Exemplo sua tabela tem a coluna xxx com o conteúdo a,b,c ordenando descendentemente você terá c,b.a pegando o primeiro registro deste resultado você terá c.
-
Remodelar tabela - separar alguns campos em outras tabelas
pergunta respondeu ao Roger75 de Denis Courcy em MySQL
respondendo seus questionamentos : 1)Sim 2)Não O que você está querendo é generalização/especialização Você terá uma atabela pai (usuários) e duas filhas (usuários speed) e (Usuários email) Na tabela pai deverão estar todos os campos pertinentes as duas tabelas (speed e email) mais um campo de indicador para saber de qual usuário aquele registro pertence. Na tabela email só os dados específicos de email e Na tabela Speed só os dados específicos de speed. A relação entre estas tabelas filhas e a tabela pai é de 1 para 1. -
Normalmente os dados ficam residentes em C:\Arquivos de programas\MySQL\xxxxxxxxxxxxxx\data onde, xxxxxxxxx é o nome dá pasta com a versão do MySQL que está instalado. No meu caso é MySQL Server 5.0 Uma vez localizados os dados, Monte uma máquina de teste separada Instale o MySQL nesta máquina Pare o serviço do MySQl nesta máquina de teste, Copie os dados do seu hd problemático para a pasta de dados de destino Restart o serviço, faça backup do banco necessitado usando o o mysqldump Leve o backup para a máquina nova e restaure o backup
-
Posso criar indices em tabelas já povoadas?
pergunta respondeu ao Marcelo_Planet de Denis Courcy em MySQL
Sim, pode. Consulte o manual do MySQL para saber a sintaxe correta. -
Restaurar arfquivos físicos do banco.
pergunta respondeu ao Rodrigo Azevedo Lima de Denis Courcy em MySQL
Oi, Rodrigo! Sua única esperança está nos passos abaixo. 1 Pare o serviço do servidor e banco mysql. 2 Copie toda a pasta data para outro lugar (se não der certo a sequencia das instruções você poderá voltar com estes dados. 3 Copie o conteúdo que seu amigo gerou para a pasta data. 4 Reinicie o serviço do banco e verifique se tudo está de acordo. 5 Se houver erro pare o serviço do banco novamente e copie os arquivos gerados na instrução 2 deste post. e reinicie o serviço do mysql. -
Oi 'andrel.afonso', Tente assim: select * from transportes t1 where km = (select max(km) from transportes t2 where t2.carro = t1.carro) group by carro; Se a tabela for grande, não esqueça de criar um indice por carro
-
(Resolvido) Query complexa usando GROUP BY
pergunta respondeu ao luisguzzardi de Denis Courcy em MySQL
O caso acima também gerará TABLE SCAN., pois para cada registro lido em a, se não houver um índice correspondente em a e b então haverá uma varredura completa em b para depois informar o resultado em a Crie indice, na tabela ocorrências, por cod_cliente, cod_ocorrencia, data_entrada. Crie um segundo índice por cod_ocorrencia, na mesma tabela. -
(Resolvido) Query complexa usando GROUP BY
pergunta respondeu ao luisguzzardi de Denis Courcy em MySQL
Luis, Na verdade o mysqladmin não estava travado. ele estava fazendo um super table scan. Se a query que você está usando foi esta select codigo_cliente, codigo_ocorrencia, data_entrada, zona from ocorrencias o where codigo_ocorrencia = 'E401' and data_entrada = ( select max(data_entrada) from ocorrencias where codigo_cliente = o.codigo_cliente ) passada pelo 'Kakao', então crie este(s) índice(s): CREATE INDEX `ak_ocorrencia_001` ON `ocorrências`(data_entrada, `código_ocorência`) CREATE INDEX `ak_ocorrencia_002` ON `ocorrências`(`código_cliente`, data_entrada) A performance da consulta melhorará muito. -
COALESCE é uma função que retorna o primeiro elemento não NULL de uma lista. Assim, de acordo com o exemplo que você passou Se o COUNT de id_aluno retornar NULL, então o 0 informado na função COALESCE tomará o lugar do NULL.
-
Correto. O LeoQuintella deverá selecionar o banco de dados antes de iniciar o script.
-
Poderia, por favor, informar a estrutura das tabelas?
-
Oi, 'BobNelson' Não existe dúvida de Mongol. Dúvida é dúvida. Antes de continuar a responder, por favor me informe como foi realizado a extração deste arquivo .txt. Foi com mysqldump? Se não foi, peça nova cópia extraida com mysaldump ou poderemos ter problemas sérios para restaurar o banco em outra máquina.
-
Oi 'Andreia Regina', Faltam dados para que possamos te ajudar. O que você escreveu está muito amplo.
-
Enviar para dois e-mails diferentes, dados diferentes de um mesmo form
pergunta respondeu ao RonaFreitas de Denis Courcy em MySQL
Oi 'RonaFreitas' , O assunto que você abordou não perternce a BD e sim a programação, apesar de qualquer informação persistene ficar guardada, de preferência, em bancos da dados. Que linguagem de programação você usa? Para que eu possa transferir este tópico para a seção correta. -
Oi, 'mhasselein' ! Comece a fazer e depois nos informe suas dúvidas no fórum apropriado. Aqui, discutiremos somente os assuntos relacionados ao banco MySQL.
-
Descupe não fui específico. Ao rodar o Mysql.exe na linha de comando , você deverá estar no mesmo diretório que seu arquivo de backup. O backup vai caregar conforme o banco que você determinou e conforme as instruções que você passou. Dependendo da forma como você criou o backup ele vai criar um novo banco ou vai dropar o banco atual e criar novamente. Siga estas instruções para proceder a restauração: Após o comando cmd na linha de comando do DOS digite: D: cd\ c:\arquivos de programas\mysql\mysql server 5.1 \bin\mysql -u root -p Na linha de comando do MySQL digite: source backup.sql Ao final digite: quit para encerrar o MySQL e digite: exit para encerrar o cmd
-
Siga seu passo 1, depois digite o comando: mysql -u root -p No prompt do mysql digite: source nomedoseuarquivo.sql espere terminar e digite quit
-
Oi 'shakall' , Há algum tempo venho trabalhando em uma solução para seu problema. Depois de muito rodar montei o índice abaixo que deu um bom tempo de resposta. explain SELECT DISTINCT DS_POSICAO FROM POSICAO_GPS USE INDEX(EMPRESA_LAT_LOG) WHERE CD_EMPRESA=20 AND (NR_LAT BETWEEN -12.92493 AND -12.91493) AND (NR_LOG BETWEEN -49.43828 AND -49.40828) AND DS_POSICAO IS NOT NULL ORDER BY DT_POSICAO DESC; CREATE INDEX EMPRESA_LAT_LOG ON posicao_gps (`CD_EMPRESA` ASC,`NR_LAT` ASC,`NR_LOG` ASC,`DT_POSICAO` DESC,`DS_POSICAO`(2) ASC);Tenta aí.
-
Olá, Denis, obrigado pela resposta. Na realidade a tabela não foge do padrão. O banco no qual estou querendo fazer essa consulta é o banco de um fórum IPB exatamente igual a esse usado aqui na scriptbrasil e o campo em questão (post) é o mesmo campo, da mesma tabela onde fica armazenado o que estamos escrevendo aqui agora. Se trata de um campo VARCHAR. A especificidade do banco que tenho em mãos é que se trata de um fórum de cinema e alguns posts (na realidade o tópico principal) é criado baseado em bbcodes que fazem com que, ao ser visualizado no fórum, o post apresente uma formatação pré-definida. Por isso você vê ali a formatação que coloquei no primeiro post. O que está entre "[" e "]" é bbcode que o fórum transforma em html na hora de exibir o post. Um abraço. Leia sobre índices do tipo full-text. Talvez seja uma saída.
-
Preciso pegar somente o Gênero, por exemplo, então, no exemplo acima, meu select tem que retornar somente a substring Documentário. 'parkyns' , Desculpe a demora e a franqueza na resposta. A forma como esta tabela foi montada indica que ela foge a qualquer padrão de organização de banco de dados. Este campo string de tipo texto está guardando uma tabela dentro de outra. As pesquisas deste tipo serão extremamente lentas, fazendo uma varredura completa a cada vez que for executada. A solução é complicada, pois necessitaria de programação. Sugiro que você normalize o banco criando uma nova tabela que guardará, de forma correta, os registros deste campo.
-
Oi, 'Diogo Henrique Fragoso' Leia sobre a Sintaxe de LOAD DATA INFILE no manual do mysql de sua versão.