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. Oi, 'LuizCRP' Informe, por favor, a versão correta do seu MySQL e do ODBC.
  2. Oi,Andre Modifique somente a variável datadir para datadir=G:/mysql/data como é o seu desejo. Não modifique a variável basedir. Esta variável determina onde o mysql buscará seus executáveis e sua biblioteca. Não esqueça de parar o servidor antes de alterar a variável. Antes de fazer qualquer modificação em My.ini faça uma cópia do mesmo. Após alterar a variável, restart o servidor. Para saber se está conectado so banco, use o utilitário de linha de comando chamado mysql.exe. Execute no prompt do DOS mysql -u root -p digite sua senha e se tudo der certo aparecerá a mensagem abaixo C:\>mysql -u root Welcome to the MySQL monitor. Commands end with; or \g. Your MySQL connection id is 1 Server version: 5.0.37-community-nt MySQL Community Edition (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> No prompt do MySQL digite o comando use <nome-do-banco-de-dados>; Não esqueça do ponto-e-virgula. Ele é o sinal que informa que o comando acabou. Para sair digite quit
  3. Oi, 'Andre Custodio' O Mysql não é igual ao MS Access. A teoria de espetar o pendrive e acessar o banco é possível, mas necessitará que o MySQL esteja instalado na máquina do usuário, assim como o Access deve estar instalado no micro do usuário caso a opção fosse usar aquele SGBD. É possivel com o engine MyISAM. Mas, com o engine InnoDB não. Há a necessidade de configurar o MySQL a cada troca de base de dados. O que exige a paralização do mesmo e o restart logo depois, para que ele reconheça o novo local. Eu não recomendo. Veementemente, não recomendo. O que recomendo é o backup na máquina original e o restore na máquina do usuário com o MySQl instalado nela.
  4. Retire o primeiro SE, o último SENAO, a mensagem se erro e o último FIM SE
  5. Oi, --Diegostf --' , Você foi bem até o I. O resultado de um DIV é sempre o quociente da divisão de um inteiro. Ou seja, Se DIV(3,2) então o resultado é 1 e não 1,5. RESTO retorna o resto de uma divisão de um inteiro. Assim, RESTO (3,2) é 1 e o RESTO(4,2) é 0. Então, com base na explicação acima, o DIV(1010, 10) é 10 e não 10,1 como você colocou. Um outro problema foi que você engoliu um ")" (fechar parênteses) na descrição do exercício para L. Observe que você colocou L <- RESTO ((I*H),RZQD (H) quando deveria ter colocado L <- RESTO ((I*H),RZQD (H)). Consegue concluir o L agora? Está muito fácil.
  6. Oi, 'alineweb' Eu sei onde está o SE excedente. Cabe a você descobrir e questionar.
  7. Oi, ReDNoS! Conforme o que entendi do post anterior, sua solução seria como esta: SELECT abnormalupdate.Id , MAX(abnormalupdate.ScoreDeta) AS maior_valor FROM abnormalupdate GROUP BY abnormalupdate.Id ORDER BY abnormalupdate.Id, maior_valor DESC; Não há a necessidade de um JOIN. esta seria válida se houvesse algum atributo de "game" que necessitasse ser exibido.
  8. Complementando o que o 'jothaz' falou no post anterior. O ORDER BY em um GROUP BY só vale a pena se o atributo a ser ordenado estiver fora da ordenação própria do GROUP BY. Isto porque o GROUP BY já vem ordenado pelas cláusulas que o compõem. Exemplo: O código no post anterior trará a ordenação por YEAR(DTH_SORTEIO), MONTH(DTH_SORTEIO) mesmo sem a cláusula ORDER BY. Porém, se você quizesse a ordenação por mes e ano ou por MAX(DTH_SORTEIO), então você deveria usar o ORDER BY.
  9. Carlos, como exemplo sobre o que falei no post anterior, Veja a tabela em Produtividade dos Principais Produtos Agrícola. 1997-2006 , trazendo para uma tabela produtividade no mysql, teremos, na 2a forma normal, para os anos 1997 e 1998: Tabela produtividade "Produto" "Ano" "Produtividade" "Unidade" "Milho" "1997" "4139" "(kg/há)" "Milho" "1998" "4426" "(kg/há)" "Arroz" "1997" "3824" "(kg/há)" "Arroz" "1998" "3820" "(kg/há)" "Trigo" "1997" "2711" "(kg/há)" "Trigo" "1998" "2697" "(kg/há)" "Soja" "1997" "2157" "(kg/há)" "Soja" "1998" "2256" "(kg/há)" "Sorgo" "1997" "1325" "(kg/há)" "Sorgo" "1998" "1429" "(kg/há)" "Milheto" "1997" "758" "(kg/há)" "Milheto" "1998" "795" "(kg/há)" Tabela area_plantada "Ano" "Produto" "Area_Plantada" "unidade" "1997" "Trigo" "226262" "(1.000 há)" "1998" "Trigo" "220109" "(1.000 há)" "1997" "Arroz" "151000" "(1.000 há)" "1998" "Arroz" "151678" "(1.000 há)" "1997" "Milho" "141402" "(1.000 há)" "1998" "Milho" "139099" "(1.000 há)" "1997" "Soja " "66954" "(1.000 há)" "1998" "Soja " "70973" "(1.000 há)" "1997" "Sorgo " "44976" "(1.000 há)" "1998" "Sorgo " "42911" "(1.000 há)" "1997" "Milheto " "36161" "(1.000 há)" "1998" "Milheto " "36419" "(1.000 há)" Cada uma das tabelas, depois de convertidas para o mysql deverão passar por uma novo arranjo para que possam fazer parte de um dw. Tal como no exemplo abaixo: Dimensão Tempo (conteria os anos, meses, dias, quinzenas, semestres, etc.) Dimensão produto (conteria milho, sorvo, soja, etc.) Dimensão unidade (conteria (kg/há), (1.000 há), etc.) Tabela de fatos teria o id da dimensão produto, o id da dimensão tempo, a área plantada, um id para o tipo unidade de área pantada, a produtividade, um id para o tipo de unidade de produtividade, etc
  10. Existe, sim. Você vai ter que encontrar a formação dos campos nestes arquivos txt, criar as tabelas correspondentes no mysql, importar e avaliar como você montará seu dw.
  11. Oi, 'Andréa Carvalho' Uma outra opção, que andei buscando foi de forçar o uso de indices para o count. Veja esta matéria InnoDB Row Counting using Indexes Principalmente esta parte 31: mysql> SELECT COUNT(*) FROM test; 32: +----------+ 33: | COUNT(*) | 34: +----------+ 35: | 300000 | 36: +----------+ 37: 1 row in set (1.08 sec) 38: 39: mysql> SELECT COUNT(*) FROM test use index (int_k); 40: +----------+ 41: | COUNT(*) | 42: +----------+ 43: | 300000 | 44: +----------+ 45: 1 row in set (0.12 sec) Note que há um ganho significativo no tempo quando se usa um índice secundário em lugar do índice primário. Citando a primeira resposta ao primeiro um comment
  12. Oi, 'Diegostf' Aplicando o VisualG algoritmo "semnome" // Função : // Autor : // Data : 18/08/2008 // Seção de Declarações var A,B,C,D: real inicio D <- 9.5 B <- INT(RAIZQ(ABS(D))) C <- ((D+B-0.5) MOD 3) C <- B ^ C A <- (B*C)/2^2 // Seção de Comandos fimalgoritmo Seu algorítimo está correto.
  13. Oi, alineweb! Dizer que você está indo até o meio é bondade sua. Você está apenas no início. Então, continuando... (você traduzirá para o portugol) programa_peso ideal sexo : string altura, pesoideal: real inicio escreva("Digite o sexo (M/F): ") leia(sexo); se sexo = "M" ou sexo = "m" ou sexo = "F" ou sexo = "f" então escreva("Digite a altura: ") leia(altura); se sexo = "m" ou sexo = "M" então pesoideal <- (72,2*ALTURA)-58 senao pesoideal <- (62,1*ALTURA)-44,7 fim se escreval("Peso ideal = ", pesoideal) senao escreval("erro lendo sexo. Programa terminado") fim se
  14. Neste caso existem duas possibilidades. A primeira para uma busca dentro de um intervalo seria assim: UPDATE tabela SET campo = 0 WHERE campo = 1 AND ID BETWEEN 10 and 50; Pegaria todos os valores entre 10 e 50, inclusive. A segunda para valores em específico UPDATE tabela SET campo = 0 WHERE campo = 1 AND (ID 10 OR ID = 20 OR ID = 30 OR ID = 40 OR ID = 50;
  15. Oi, 'acdestefani' ! Leia mais sobre SQL. Leia, também, o manual do MySQL versão 4.1 (tradução em português) Capítulo 6 Sua resposta: UPDATE tabela SET campo = 0 WHERE campo = 1 AND ID = valor;Substitua : tabela, pelo nome de sua tabela campo, pelo nome do seu campo que é 0 ou 1 e valor, pelo valor que você deseja para seu ID.
  16. Oi, Andréa, Lembra quando falei sobre Views físicas (materializadas) no tópico Melhorar performance do MySQL? Verifique se a atualização dos dados query é contante. Se não for, vale a pena criar a view não como temporary table como sugeri no tópico anterior, mas como tabela física na engine MyISAM.
  17. Oi, Marcelo Bressan Você tem que decidir se é um parâmetro ou se é uma tabela.O MySQL está em dúvida sobre o que você quer.
  18. Denis Courcy

    Ajuda com foreign key

    Oi, 'pilão' Tente assim ATER TABLE hospede ADD CONSTRAINT fk_hospede_001 FOREIGN KEY (numero_apartamento) REFERENCES apartamentos (numero_apartamento); Nota: O atributo numero_apartamento deve ser do mesmo tipo e tamanho nas duas tabelas. Se o erro permanecer é porque há registros na tabela filha que não correspondem aos registros existentes na tabela mãe.
  19. Oi, CLeber Neste caso, a busca deve ser feita através dos fontes de sua aplicação. O "problema" não é do MySQL e sim de quem e como programou a aplicação.
  20. Oi, Carlos. A sugestão que dou, para os próximos passoa, é fazer o levantamento dos indicadores que serão analisados. Faça isto fazendo perguntas tipo "quanto foi o faturamento" e incluido filtros, tais como "no último ano" "na resião sul", etc. Depois de todas as perguntas feitas será necessário montar a(s) tabela(s) de fatos e as tabelas de dimensões. Coloquei a tabela de fatos no ingular e no plural pois você poderá ter uma ou mais dependendo da granularidade que você necessita. O passo segunite é montar o ETL do seus sistema OLTP para seu banco multidimensional. E o último passo da criação de um DW é a montagem de seu OLAP, dashboards, etc.
  21. Oi 'viciado'! Escreva como seria se você tivesse que fazer isso em um caderno. Tente pensar no passo a passo de como você vê estas instruções sendo cumpridas. Depois, poste aqui o resultado e juntos iremos moldando até que seu algorítimo esteja pronto.
  22. Oi, 'Samara' Primeiro exemplo: SELECT minhadata FROM tabela WHERE minhadata < NOW() Seleciona as datas menores que o dia de hoje. Segundo exemplo:SELECT minhadata FROM tabela WHERE minhadata BETWEEN '2008-07-01' AND '2008-07-31'Seleciona as datas compreendidas entre 01 e 31 de julho de 2008.
  23. Oi, Raphael Machado Complementando a reposta do 'C/C++ nuts' O VisualG está mais para DELPHI/PASCAL do que para VISUAL BASIC.
×
×
  • Criar Novo...