-
Total de itens
3.089 -
Registro em
-
Última visita
Tudo que Denis Courcy postou
-
Você usa tablespaces separados para cada tabela? Outras tabelas foram afetadas e você não viu? Uma das razões para acontecer isso é falha física do disco que está impedindo acesso a alguma área. Os registros sumidos são do início ou final da tabela. Se forem do início recupere o último backup. Se forem do final recupere o último backup e "senta e chora".Quem usa InnoDB sem log binário está armando uma bomba relógio para si mesmo.
-
Oi, 'AllJack'! Este assunto foi colocado em área errada. Transferindo para a área de Delphi.
-
(Resolvido) pesquisar em mais de uma tabela no mysql
pergunta respondeu ao cassianooliver de Denis Courcy em PHP
Oi, 'cassianooliver' ! A resposta para sua pergunta é sim. É possivel. É a forma de consultarmos os relacionamentos entre as tabelas. De maneira geral, fazemos isso usando JOINS O INNER JOIN retorna somente os dados que existirem nas duas tabelas do relacionamento O LEFT JOIN retorna os dados que existirem na tabela da esquerda do relacionamento O RIGHT JOIN retorna os dados que existirem no lado direito do relacionamento. O SELECT STRAIGHT_JOIN força o motor do MySQL ler o sql com join tal como foi escrito pelo programador. Sem a cláusula STRAIGHT_JOIN, o motor do MySQL escolhe o que para ele é a melhor forma de resolver a questão. O que nem sempre é verdade. Leia mais sobre este assunto no capítulo 6, seção 6.4.1.1. Sintaxe JOIN do manual do MySQl versão 4.1 em português. Convém que você estude mais sobre modelo relacional de bancos de dados e SQL. Um bom livro para tal é INTRODUCAO AO SISTEMA DE BANCO DE DADOS - DATE, C. J. ED. CAMPUS. -
Oi, '--Wibson82 --'! Pelo que você narrou, pensei no seguinte modelo de dados: Tabela de funcionarios (que contém o codigo do funcionário como chave primária que vou chamar aqui de idFuncionario) Tabela de Taloes com os seguintes atributos(campos) idTalao (identificador do talão - chave primária) Número inicial do talão Número Final do talão Último número emitido (para controlar mais facilmente cada nota emitida) Tabela TaloesUsadosPorFuncionarios com os seguintes atributos: idTalao idFuncionario (estes dois atributos farão parte da chave primária) Numero da Nota Emitida Dois índices alternativos não únicos podem ser criados na tabela TaloesUsadosPorFuncionarios para facilitar (acelerar) pesquisas: O primeiro é por idFuncionário + idTalao (para saber que funcionarios usaram que taões) O segundo é por Número da Nota Emitida (para consultar uma determinada nota e saber que funcionário utilizou e de que talão ela saiu. A tabela TaloesUsadosPorFuncionarios estabelece o relacionamento muitos para muitos entre talões e funcionários. Veja o modelo EER em anexo para melhor entendimento. Modelo_EER_Funcionarios_x_tal_es.pdf
-
Oi, 'CodeMaster'! Use o MySQL Workbench
-
Oi, '--Ramon --' ! Utilize a uses JPEG e você não terá mais que ficar convertendo.
-
Já tentou ZEOS Lib component? Já buscou melhor otimização de seu banco Mysql? Eu uso MyODBC, BDE, Delphi 7 e MySQL 5.0.37, com engine MyISAM em um dos meus clientes. São mais de 700 inserts/dia além de consultas às tabelas e não há perda de velocidade.
-
Oi, 'CodeMaster'! Não, se você usar os temos de licença GNU. Se não utilizar, deverá comprar o produto. Se a empresa ultrapassar "Usuários como Yahoo! Finance, MP3.com, Motorola, NASA, Silicon Graphics, e Texas Instruments usam o MySQL em aplicações de missão crítica." (citado do site da Mysql AB). Ou seja, atualmente não há necessidade de passar para outro banco de dados. Ainda sobre a capacidade do MySQL fonte: Manual MySQL verão 5.1 seção MySQL Standards Compliance
-
Verifica se não está faltando índices na SQL. A falta de índices reduz, exponencialmente ao crescimento da tabela, a velocidade de execução do relatório (por causa da query)
-
Oi, 'Evandro Fontes'! Primeiro, vamos corrigir um probleminha básico de nomeação de atributos. Como boas práticas na modelagem de dados não damos nomes diferentes a atributos que executam a mesma função. Assim, suas tabelas deveriam ter os seguintes nomes de atributos corrigidos: Estabelecimentos: atributo id deveria ser chamado de idEstabelecimento (ou qualquer coisa parecida) Categorias: o atributo id deveria ser chamado de idCategoria (tal como está na tabela de Estabelecimentos) Areas: o atributo id deveria ser chamado de idArea (tal como está na tabela de Estabelecimentos) Segundo, de acordo com as novas regras, a select ficaria assim: Conforme o exposto acima, UMA Area pode ter MUITAS Categorias e UMA Categoria pode ter MUITOS Estabelecimentos. Então SELECT DISTINCT E.nome AS nome, E.descricao AS descricao, E.id AS id FROM estabelecimentos INNER JOIN Categorias C ON E.idCategoria = C.idCategoria /* no seu caso seria E.idCategoria = c.id */ INNER JOIN Areas A ON C.idArea = A.idArea /*no seu caso seria C.idArea = A.id */ WHERE E.parceiro='1'
-
Salvando campos Calculados na BD Access 2003
pergunta respondeu ao Alex Freitas de Denis Courcy em Delphi, Kylix
Oi, 'Alex Freitas'! Se são campos calculados então não são campos físicos (não há o que guardar). -
'Pirambu!', enquanto penso na solução, pois não tenho nem delphi nem zeos aqui no trabalho, Você já setou a opção RequestLive para true?
-
'Pirambu!', dá um duplo clique em Zqpeca e com o botão direito selecione all fields para que ele possa preencher os nomes dos campos. depois teste novamente e reporte os erros.
-
'Pirambu!' , Para usar Edit, append, Post, etc, você deve ter configurado um componente chamado ZUpdate. Como você o configurou?
-
Oi,'Pirambu!'! Se você está usando ZQuery então deverá usar uma sql para update. Poste a SQL.
-
Oi, 'Blackleaf'! É possivel fazer um programa assim. Os meus executáveis que ficam nas máquinas clients (dos meus clientes) usam um programa dese tipo que vai ao servidor e verifica de há uma versão mais recente e, havendo, traz para a máquina client sobrepondo o anterior. Isto facilita a manutenção quando substituo uma versão foço somente no servidor e peço para todos recarregarem o executável.
-
Oi, 'Bruno Dorbação'! O sistema está reclamando que você está tentando utilizar um parâmetro que ele não foi criado. Poste o SQL referente a esta consulta (a que está com problema). Outro ponto é que você ora usa CDSmpreg para pesquisar MatriculaDoEmpregado e ora usa o mesmo CDSmpreg para pesquisar NomeDoEmpregado. Você troca a SQL ou é o mesmo parâmetro que faz ambas as consultas. Ou sqja Params[0] é o mesmo que ParamByName('NOME_EMPREG') ?
-
O que devo levar em consideração na hora de formar o preço?
pergunta respondeu ao Alex Freitas de Denis Courcy em Delphi, Kylix
Oi, Alex! Segue abaixo alguns fatores que utilizo para formar um preço. passo 1: Saber quanto vale sua hora de trabalho. Passo 2: Saber em quanto tempo (horas trabalhadas) você estima entregar o serviço. Este passo eu resolvo durante as entrevistas de avaliação. Nela eu monto alguns casos de uso e alguns outros diagramas que ma auxiliarão a determinar o tempo. Passo 3: Saber se os fontes serão ou não entregues junto com o programa executável. Entregar os fontes significa que o usuário pode se "libertar" de você e buscar outro para a manutenção so programa. Também significa mais grana para você no fim do serviço. Passo 4: Saber se você documentar todo o programa? Normalmente os sistemas que desenvolvo são elaborados em UML e só depois são codificados. Dá mais trabalho e as horas para isto também estão incluidas no preço (mais grana). A vantagem é que facilita muito para a manutenção, pois sei exatamente que impacto um novo requisito de sistema provocará no mesmo. Assim posso calcular melhor o tempo de manutenção e os custos para o cliente. Sistemas documentados antes de serem desenvolvidos facilitam muito a elaboração do preço para o desenvolvimento do mesmo (ver passo 1). Um outro requisito para a formação do preço é a distância entre você e o cliente (deslocamento toma tempo e tempo é dinheiro). Pronto. Este é o básico. -
Que tipo de erro? Como você está chamando a procedure? Lembre-se OUT e INOUT é passagem de parâmetros por referência. Onde OUT é para retorno de dados da procedure através do parâmetro e INOUT para Entrada e retorno de dados. IN (default) é passagem de parâmetro por valor. O valor entra na procedure e esta não retorna nada.
-
(Resolvido) Consulta Sql com distinct
pergunta respondeu ao Vivendo&Aprendendo de Denis Courcy em Delphi, Kylix
Este campo Codigo é primary key e/ou é unico na tabela ContasReceber? Se for, não pode entrar na função de agregação com group by. e colocar o campo Codigo na cláusula group by descaracterizará a instrução passada. O único código que poderia entrar ali seria o código identificador do cliente, se a tabela fosse normalizada. -
Oi, 'Teduardo'! Veja a instrução acima que você passou. É procedure ou função? Pois se é procedure não há return. Baixe a versão do manual do mysql que você usa e leia. Lá tem todas as instruções necessárias.
-
(Resolvido) Consulta Sql com distinct
pergunta respondeu ao Vivendo&Aprendendo de Denis Courcy em Delphi, Kylix
Oi Alexandre! Não estou vendo o atributo Codigo no select que você exibiu acima. Tem certeza que passou o sql correto? -
Oi,'Flesha'! Andei pensando em uma solução simples para este problema e não encontrei outro meio que não fosse através de programação. A lógica exige um loop que girará conforme os dias passados. Os dias passados poderão (melhor, deverão) estar em um vetor. A função do vetor é guardar dias seqüenciais ou não. Exemplo dias 1,2,3, etc; ou 1,10,15,etc. Uma tabela temporária deverá ser criada para armazenar os resultados. A cada interação do loop um select será executado e o resultado deverá ser colocado na tabela temporária. Uma cláusula where no select indicará cada dia. exemplo where dia = variavel Uma cláusula limit limitará a quantidade de registros a serem retornados pelo select. O valor limite da cláusula limit também poderá ser dinâmico (fornecido por uma variável). Após terminar o loop você poderá consultar e trabalhar com os dados na tabela temporária. Após o término deos trabalhos com a tabela temporária você deverá excluí-la para liberar a memória alocada por ela. Toda esta rotina poderá ser escrita na linguagem de programação que você usa ou através de uma stored procedure que executará as operações de criação da tabela temporária, insert e select dinâmicos. É isso.
-
Vou passar este tópico para o forum de linux (já que foge ao assunto MySQL).
-
(Resolvido) Consulta Sql com distinct
pergunta respondeu ao Vivendo&Aprendendo de Denis Courcy em Delphi, Kylix
Oi, 'Alexandre' ! Primeiro. Se suas tabelas não estão estruturadas como no exemplo do post anterior, então é melhor você estudar mais sobre normalização de banco de dados. Segundo. Vamos orientar para que a resposta dada no post anterior possa ser utilizada em sua tabela desnormalizada. Select Cliente, Sum(Valor)As Total From Contas_Receber Group by Cliente;