-
Total de itens
3.089 -
Registro em
-
Última visita
Tudo que Denis Courcy postou
-
(Resolvido) Duvida Urgente De Configuracao Mysql
pergunta respondeu ao ronaldosdb de Denis Courcy em MySQL
Complementando o que o '--Daniel --' respondeu no ´post anterior deve ser executado da seguinte maneira: 1 - verifique se existe algum serviço do mysql ativo ( use a ferramenta de serviços no painel de controle para isto ) 2 - Se existir, pare o serviço (pode usar a mesma ferramenta de serviço comentada acima) 3 - na linha de comando "cmd" execute sc delete mysql conforme mencionado pelo '--Daniel --' 4 - execute novamente o utilitario do mysql para inicializar o serviço. Quem usa windows 2000 deve procurar uma máquina com windows xp e copiar o "santo" utilitário sc.exe que só apareceu a partir do xp. O motivo de ter acontecido isto pode ter sido um dos abaixo relacionados: - desinstalação incorreta de de uma versão anterior do mysql sem observar se o serviço foi desinstalado (removido). - modificação no arquivo my.ini sem observar as conseqüências da ação. - instalação duplicada do serviço do mysql - entra em conflito, principalmente se o serviço anterior estiver desativado. Glossário para os termos relacionados ao serviço windows: - desativado = o banco está fora do ar mas, o serviço permanece instalado - desinstalado = serviço não consta da lista de serviços no utilitário de serviços do windows - remoção de serviço ou serviço removido = ação de retirar o serviço do windows da lista do utilitário de serviços. -
Oi, 'Castellari' ! A resposta é: A(s) tabela(s) tem mais registros que a sua memória pode suportar. Tente limitar sua query.
-
(Resolvido) Trigger no mysql 3.23 (Ou algo parecido)
pergunta respondeu ao Spyder.RV de Denis Courcy em MySQL
Oi, 'Spyder.RV'! Infelizmente a única forma de "escutar" as alterações sofridas pelas bases do mysql na vesão que você usa é através de programação. A melhor maneira é através da sua(s) própria(s) aplicação(ões). Modificando o código. -
Lendo o arquivo word binariamente com as ferramentas clássicas do próprio delphi, tais como AssignFile, readln, closefile, pos, copy, etc.
-
Oi, 'Renato Vaz' ! Tecnicamente um arquivo word é um arquivo rtf. Usa as mesmas especificações acrescentando outras que são proprietárias. Se não estiver criptografado você conseguirá lê-lo sem problemas. Busque na net pelos comandos de inicio e fim de negrito em rtf. Leia o arquivo word binariamente comparando com os simbolos e separando o que você quer.
-
Oi, Robson! Tenho um cliente que usa Dejphi 7, MyODBC, e BDE para as máquinas cliente Windows. No servidor temos somente os serviços de DNS e o MySQL 5.0.37 instalado. O apontamento se dá pelo número do IP, com a porta padrão 3306. A autenticação é única, através de um usuário de banco com as propriedades de INSERT, UPDATE, DELETE e SELECT, somente. Verifique se o erro de conexão é por falta de direito de acesso.
-
Oi, João Paulo! Eu encontrei mais instruções neste tópico. e, também no site do Zeoslib. É a nova release candidate.
-
Oi, 'João Paulo Taraciuk'! Veja o tópico Zeos x Delphi2007, Zeos x Delphi2007 do forum Delphi que você freqüenta.
-
Consulta SQL em BD Access 2003 com DELPHI 7
pergunta respondeu ao Beto Passini de Denis Courcy em Delphi, Kylix
Beto, Trabalho com bancos de dados há muito tempo e sempre adapto minhas variáveis aos formatos que os tipos guardados nos bancos exigem. Esta posição é a mais correta, na minha visão. Siga em frente. -
Consulta SQL em BD Access 2003 com DELPHI 7
pergunta respondeu ao Beto Passini de Denis Courcy em Delphi, Kylix
Beto Passini, Em que formato o access guarda a data? -
(Resolvido) Buscar Sempre a primeira data da semana ...
pergunta respondeu ao robinhocne de Denis Courcy em Delphi, Kylix
Oi,'robinhocne'! Se no evento Oncreate do form você colocar minhadata := date - dayofweek(date)+1; Não resolve seu problema? -
Consulta SQL em BD Access 2003 com DELPHI 7
pergunta respondeu ao Beto Passini de Denis Courcy em Delphi, Kylix
Oi, 'Beto Passini'! Por que você não altera as configuraçõe de data no painel de controle para que fiquem com "dd/mm/yyyy"? Isto não resolveria seu problema com formatação de data? -
Oi, '--elvisreis --'! Recentemente li um artigo denominado Using MySQL Full-text Searching que falava de como utilizar corretamente o Full-text Search. Para a solução de seu problema creio que a simples utilização de um operador, talcomo descrito no texto do artigo, servirá para suprir o que você deseja. Se não for somente isto, poste novamente para podermos pensar em uma solução melhor.
-
Oi, 'Marcelo Alves'! Você já estudou otimização de consultas em bancos de dados? Existem várias publicações sobre mysql que tratam deste assunto. Dê uma olhada neste tópico Tutoriais e Dicas, principalmente no post do Beraldo. Se houvesse problemas com a quantidade de registros do MySQL, sites como Google, por exemplo, já teriam deixado de trabalhar com ele. Para a correção do seu código vamos usar o método dividir para conquistar. Primeiro, olhe o seu select abaixo: "Select rp.num_pedido,rp.cod_vendedor,cli.nome,rp.cod_cliente,tc.razao_social,tc.nome, rp.dt_emissao,rp.dt_entrega,rp.desconto,rp.total_bruto,rp.observacao From rec_pedidos rp Inner Join outro_banco.CLIENTE cli on rp.cod_vendedor = cli.nVendedor Inner Join rec_itens_pedido ric on rp.num_pedido = ric.num_pedido Left Join tabela_produtos tp on ric.cod_produto = tp.id_produto Left Join tabela_clientes tc on rp.cod_cliente = tc.id_cliente Where 1 = 1"; Vamos analisá-lo: 1 - Você utilizou vários joins Os atributos cli.nVendedor, ric.num_pedido, tp.id_produto e tc.id_cliente possuem índices? Os joins realizam pesquisas extensivas para encontrar o que você deseja e quando não se utiliza índices o tempo de pesquisa crescerá exponencialmente conforme cresce o tamanho da tabela. Exemplo se a tabela rp (estou usando os aliases que você colocou em suas tabelas) possuir 1000 registros e você buscar algo dentro dela, ela varrerá os 1000 registros para te fornecer a resposta (Esta condição de varrer toda a tabela é conhecida como TABLE SCAN). Mesmo se o que você quizer estiver no 1º registro somente. Acrescentando um join, por exemplo a tabela cli (imaginando que ela também possua 1000 registros e não tendo índices), sua pesquisa agora varrerá 1000 x 1000 = 1.000.000 (um milhão) de registros para encontrar o que você quer. Se você acrescenta outra tabela, por exemplo, ric (que também possua 1000 registros), sua pesquisa varrerá 1000 x 1000 x 1000 = 1.000.000.000 (um bilhão) de registros para te fornecer a resposta. E você ainda incluiu mais duas tabelas. Imagine o tempo gasto para retornar a resposta! 2 - Você colocou uma condição que não filtra nada Pelo que entendi esta condição inútil de 1 = 1 serve para que você possa usar o termo WHERE da cláusula mesmo se o usuário não escolher filtro algum. Existem outras formas de programação para controlar este problema. pense um pouco mais. 3 - Os filtros abaixo são campos indexados? rp.num_pedido, rp.cod_vendedor, dt_emissao, rp.cod_cliente, tp.id_produto, tc.razao_social, tp.descricao, cli.codEmpresa Dependendo da constância de uso de um atributo como filtro é melhor indexá-lo para que a consulta não seja convertida em TABLE SCAN. 4- Não cometa o sacrilégio do código abaixo. $filtro .= " And concat(If(length(subString_Index(dt_emissao,' ',1))=9, SubString(insert(Substring_Index(Replace((dt_emissao),'/','-'),' ',1),3,1,'-0'),7,4), SubString(Substring_Index(Replace((dt_emissao),'/','-'),' ',1),7,4)),'-', If(length(subString_Index(dt_emissao,' ',1))=9, SubString(insert(Substring_Index(Replace((dt_emissao),'/','-'),' ',1),3,1,'-0'),4,2), SubString(Substring_Index(Replace((dt_emissao),'/','-'),' ',1),4,2)),'-', If(length(subString_Index(dt_emissao,' ',1))=9, SubString(insert(Substring_Index(Replace((dt_emissao),'/','-'),' ',1),3,1,'-0'),1,2), SubString(Substring_Index(Replace((dt_emissao),'/','-'),' ',1),1,2)) ) >= '".$data."'"; O uso de funções no lado onde está o atributo a ser comparado, força o uso de TABLE SCAN mesmo se houver índice para este atributo. A razão é simples, é necessário comparar linha por linha transformando o atributo para que coincida com o seu resultado. O padrão de data do mysql é o mais organizado que existe “aaaa-mm-dd”. Modifique sua variável para que fique igual a o atributo data que você quer comparar. 5 – Você criou índices para os atributos nas cláusulas GROUP BY e ORDER BY? Os índices nestas cláusulas aceleram o tempo de resposta para agrupamento e ordenação $filtro .= " Group By rp.num_pedido,rp.dt_emissao"; switch($_REQUEST['ordenacao']){ case '1': $filtro .= " order by rp.num_pedido"; break; case '2': $filtro .= " order by rp.cod_Vendedor"; break; case '3': $filtro .= " order by cli.nome"; break; case '4': $filtro .= " order by rp.cod_cliente"; break; case '5': $filtro .= " order by e.razao_social"; break; case '6': $filtro .= " order by rp.dt_emissao"; break; case '7': $filtro .= " order by rp.dt_entrega"; break; default: $filtro .= " order by rp.dt_entrega"; break; } if($_REQUEST['ord'] != ''){ $filtro .=" desc"; } $sql .= $filtro; $sql .= " Limit ".($_REQUEST['pagina']*1).",50"; $limit = 1; $exec = mysql_db_query($_SESSION['bancoCliente'],$sql,$con);
-
Oi, 'RenatoMejias'! Creio que você errou na conta. O correto não seria? =POTÊNCIA(0,918*1,035*1,057*1,068;0,25)
-
Oi, Luis S.! Usando o método de dividir para conquistar, vamos analisar as cardinalidades para melhorar seu conhecimento. Esta é minha visão do que foi passado e não representa, ainda a totalidade do que penso sobre estas ligações. Pode não corresponder ao que seus professores esperam que você faça, mas vamos lá. Em primeiro lugar vamos falar do relacionamento entre [PESSOAS] e [CURSOS]. Supondo que você normalizou corretamente suas tabelas até a 3ª forma normal, pelo menos, podemos dizer que [PESSOAS] formaram-se em muitos [CURSOS] que foram formadores de muitas [PESSOAS]. Logo, é uma cardinalidade de muitos para muitos. Em segundo lugar vamos ver o relacionamento entre [FUNÇÕES] e [CURSOS]. [FUNÇÕES] requerem muitos [CURSOS] que são requeridos por muitas [FUNÇÕES]. Cardinalidade muitos para muitos. Em terceiro lugar vamos ver a entidade fraca [VAGAS]. Definição: Uma entidade fraca é aquela que só pode existir se houver uma outra entidade. Exemplo: Só pode haver [dependentes] em um clube se houver [titular]. Normal mente esta é uma cardinalidade de um para muitos. Seguindo o descrito acima, uma [FUNÇÕES] oferece várias [VAGAS]. Em quarto lugar está o relacionamento entre [PESSOAS] e [VAGAS] Neste caso, uma [PESSOA] pode se candidatar a muitas [VAGAS] e cada [VAGA] só pode aceitar uma [PESSOA]. Então a cardinalidade é de uma [PESSOA] para muitas [VAGAS]. Agora você tem que desenhar o esquema. As outras dúvidas só responderei depois que você analisar este post.
-
Mudar pasta de armazenamento no Outlook 2003
pergunta respondeu ao Denis Courcy de Denis Courcy em Microsoft Office
Oi, 'Bgzan'! Desculpe a demora em responder. estava tentando achar a solução e não consegui. No trabalho não temos direito de administrador em nossas máquinas, o que nos impede de chegar-mos a algumas áreas básicas da máquina. Não consegui localizar o lugar onde o Outlook2003 guarda os arquivos de email e, por isso, não pude testar sua solução. Isto é ruim pois não posso nem fazer backup dos emails que recebo. A única forma é fazer salvar como de cada mensagem. O que é muito chato. No outlook2000 eu simplesmente transferi todo o conteúdo para uma área em que posso gerenciar, mas no 2003, não. Se puder deixar o tópico em aberto, eu agradeço, pois sempre olho para saber se uma boa alma já achou alguma solução. -
como fazer um select em duas tabelas no banco de dados
pergunta respondeu ao Rafael Marinho de Denis Courcy em MySQL
Oi, 'Rafael Marinho' ! Conforme o que você colocou de exemplo abaixo Pergunto:Qual o atributo em "despesas" se refere a qual atributo em "calculos_saida"? Num relacionameno entre duas tabelas deve haver um atributo comum que se torna a "chave estrangeira" de ligação entre as duas tabelas. -
Oi, 'Luis S'! Sou Adm de Dados e estarei acompanhando este tópico e esclarecendo suas dúvidas, mas não farei o trabalho para você. Informe o que você já fêz e eu o orientarei.
-
(Resolvido) Exibindo lista de visitas por mês
pergunta respondeu ao RodrigoGomes de Denis Courcy em MySQL
Se foi atendido, não há porque mover. Tópico Fechado. -
(Resolvido) Erro no QuickReport
pergunta respondeu ao Vivendo&Aprendendo de Denis Courcy em Delphi, Kylix
Recompile sua aplicação. -
(Resolvido) TStringGrid (OnDrawCell) - Problema com CPU Usage
pergunta respondeu ao Buz de Denis Courcy em Delphi, Kylix
Oi, 'Buz' ! TStringgrid usa uma matriz de x linhas por x colunas. Qual o tamanho de sua matriz? Aí pode estar a chave da lentidão dentro de OnDrawCell. Uma matriz grande pode ocasionar stack overflow dependendo dos recursos que você estiver usando. Pode, também ocasionar lentidão no processamento, principalmente se tiver programas carregados que ocupem muita memória. -
(Resolvido) Erro no QuickReport
pergunta respondeu ao Vivendo&Aprendendo de Denis Courcy em Delphi, Kylix
Oi, 'Vivendo&Aprendendo'! Este é o mesmo tipo de erro que encontrei e relatei no tópico vcl70.bpl - erro ao executar programas que compilei, usando QReport. e a solução foi a que repassei no post anterior. O pdf creator é encontrado em sourceforge.net/projects/pdfcreator/ Como outra tentativa, mais radical, desinstale e reinstale seu Delphi. Já cheguei ao ponto de ter que reinstalar toda a máquina (windows e tudo mais). depois que achei esta solução não tive mais problemas (por enquanto). -
(Resolvido) como realizar somas e subtração
pergunta respondeu ao Arrais Júnior de Denis Courcy em Delphi, Kylix
Se o número que você usar nos edits forem inteiros, então você pode usar as conversões abaixo: var x : integer; ... x := strtoint(edit1.text) + strtoint(edit2.text); edit1.text := inttostr(x); Se o número for ponto flutuante, então as conversões são estas: var x : double; ... x := strtofloat(edit1.text) + strtofloat(edit2.text); edit1.text := floattostr(x); Não use "," (virgula) para ponto flutuante. use "." (ponto). -
(Resolvido) Erro no QuickReport
pergunta respondeu ao Vivendo&Aprendendo de Denis Courcy em Delphi, Kylix
Feche o Delphi Reconfigure sua impressora padrão. Se não tiver uma coloque uma PDF (PDF CREATOR é livre) restart o micro.