-
Total de itens
3.089 -
Registro em
-
Última visita
Tudo que Denis Courcy postou
-
Oi 'Pirambu!'! A solução é um pouco grande. Vale mais se você fizer usando sua linguagem de programação. Mas, vamos lá:CONCAT('R$ ', REPLACE(REPLACE(REPLACE(FORMAT(valor, 2),'.',';'),',','.'),';',',')); Função FORMAT Formata o número X com um format como '#,###,###.##', arredondado para D casas decimais, e retorna o resultado como uma string. REPLACE Mudou o ponto decimal para ponto-e-virgula, mudou a virgula para ponto e mudou o ponto-e-virgula para virgula. Colocando o valor em formaro brasileiro. (ponto para milhar e virgula para decimal) CONCAT concatenou as strings. Aviso. Não é possível calcular com este resultado. ele é uma string
-
Converse com seu provedor. Esta é uma questão que deve estar em seu SLA.
-
Neste caso, use AFTER INSERT para a trigger, porque os valores já estarão gravados e a procedure vai conseguir "enxergar" os dados.
-
Esta não é uma questão específica para o banco de dados. Como você usa ASP vou transferir para o forum apropriado. Movendo MySQL -->> ASP
-
Não tem a haver com a ação que está sendo executada? Creio que você deverá passar os valores old.<atributos> como parâmetros para que a procedure saiba o que tem que fazer, pois acho que a procedure não está mais encontrando o registro que está para ser deletado.
-
Pode ser. Você também pode chamar a procedure dentro da trigger. A vantagem será, dependendo do que você for fazer, um único lugar para a manutenção da ação a ser executada.
-
Before: a trigger é acionada antes do evento ser executado. Exemplo: Se estou fazendo um log de update para uma tabela específica, então devo usar o before, pois me interessa guardar os valores antes que sejam modificados. Veja o exemplo: Em uma tabela de nome 'tempo', que contem o atributo 'dia', existe um registro com valor 10 para este atributo. Se executo UPDATE tempo SET dia = 25; Quando atrigger for acionada como BEFORE UDATE o valor NEW.dia será 25 e o valor de OLD.dia será 10 No caso de DELETE não há NEW.dia. Apenas OLD.dia. After: A trigger é executada após o evento ser executado. Ou seja, os valores de NEW.dia e OLD.dia serão iguais. Uma trigger é criada desta forma:(Resolvido) É possível: dois campos timestamp com default current_time
-
Oi, 'Pirambu!' Voce vai precisar criar duas triggers para cada tabela. uma para before update e outra para before delete (para cada tabela).
-
Oi,'Andre Sanches de Melo' Um CNPJ é dividido desta forma: 00.000.000/0000-00. Então, sabendo que seu campo guarda a informação assim 00000000000000, devemos formatar a instrução conforme abaixo: SELECT CONCAT(SUBSTRING(cnpj, 1,2), '.', SUBSTRING(cnpj,3,3), '.', SUBSTRING(cnpj,6,3), '/', SUBSTRING(cnpj,9,4), '-', SUBSTRING(cnpj,13, 2)) AS cnpj FROM notas
-
Oi, 'Rhaone' Use $tb_link = mysql_query ("SELECT * FROM `tabela` ORDER BY Nome WHERE Nome LIKE 'A%'");
-
Está errando onde o MySQl está dizendo pra você. Isto AUTO_INCREMENT = 1000 Não existe. Para setar o AUTO_INCREMENT a partir de um determinado valor coloque o comandoset insert_id=<numero-inicial-do-autoincrement>;antes da instrução alter table.
-
problema no resultado de consulta entre duas tabelas
pergunta respondeu ao hernandes73 de Denis Courcy em MySQL
'hernandes73', retornou somente uma linha pois só existe um registro coincidente nas duas tabelas. Lembrando das aulas de conjunto da antiga 3a série primária, o INNER JOIN é a interseção dos conjuntos representados pelas tabelas efetivo e tb_medidas. Para retornar A - B (sendo a o conjunto efetivo e B o conjunto tb_medidas) use LEFT JOIN; Para retornar B - A use RIGHT JOIN. -
Selecione a tabela e Pressione F10 ou vá ao menu Table/'Relationships/Foreign Keys' Para ver as demais chaves pressione F7 ou vá ao menu Table/Manage Indexes
-
Oi, 'The arlindo'! Veja como você declarou na tabela endereco idmun TINYINT( 3 ) UNSIGNED NOT NULL , e na tabela cidades id mediumint(8) Unsigned Not Null auto_increment, Assim este relacionamentoFOREIGN KEY ( idmun ) REFERENCES cidades( id ) ON DELETE RESTRICT ON UPDATE CASCADE Não vai funcionar. Os campos precisam ser do mesmo tipo e tamanho. Modifique a linha na tabela endereco para que fique assim:idmun mediumint(8) Unsigned Not Null default 0
-
Oi, 'Rodolfo2k10' Um detalhe que pode te ajudar nesta tua lógica é que não há a necessidade de gerar um contador de tempo para saber quanto tempo uma pessoa ficou na empresa. Voce deve pegar a hora inicial de entrada e a hora final de saída e subtrair uma da outra. Quanto a foto, basta guardar á imagem em um diretório quqlquer e no banco de dados guardar somente o caminho onde está a imagem. Fora o exposto acima, não estou vendo uma dúvida específica para o banco de dados MySQL. Apenas uma dúvida como a forma de programar. Neste caso, isto deve ser feito no fórum apropriado a área de programação que você está usando.
-
Oi, 'Fcesar', Não use INNER JOIN tbl_funcionario On tbl_projeto_func.FUNCIONARIO = tbl_funcionario.IDENTIFICADOR AND tbl_funcionario.DESATIVADO = -1 assim. tbl_funcionario.DESATIVADO = -1 Não faz parte da chave de referência, pelo que estou entendendo. Coloque esta informação na cláusula WHERE. Quem é TEMPO_EXECUCAO? De que tabela vem? Estou tentando estabelecer a necessidade de tantas tabelas neste join.
-
Este erro ocorre porque você declarou a estrutura de um campo diferente da estrutura do outro na outra tabela. Mostre a estrutura da tabela cidades
-
Veja o que você passou no primeiro post Create Table cidades( id mediumint(8) Unsigned Not Null auto_increment, id_uf tinyint(3) Unsigned Not Null, nome varchar(100) Not Null, Primary Key (id), Foreign Key (id_uf) References estados(id) On Delete Restrict On Update Cascade )Type InnoDB Default Character Set latin1 Collate latin1_general_ci; Esta ligaçãoForeign Key (id_uf) References estados(id) On Delete Restrict On Update CascadeÉ a que determina a ligação referencial da chave estrangeira Foreign Key (id_uf) com a tabela/atributo estados(id)
-
Oi, 'Thelmo Ximenes' ! As ligações entre as tabelas devem ser estabelecidas de acordo com o tipo de relacionamento que você deseja. Por exemplo: Imaginando que você criou as tabelas pessoas e carros. Então, se em seu projeto uma pessoa pode possuir mais de um carro e um carro só pertence a uma pessoa, então o relacionamento destas tabelas pessoas e carros é um para muitos entre pessoas e carros. Neste caso o identificador de pessoa (campo que você usou para identificar uma pessoa em seu banco de dados) deve ser representado na tabela carros. Ou seja a tabela carros terá diversos atributos, entre eles o identificador de pessoas. Outra visão: Se em seu projeto uma pessoa pode possuir mais de um carro e um carro pode pertencer a mais de uma pessoa, então o relacionamento destas tabelas pessoas e carros é muitos para muitos entre pessoas e carros. Neste caso você deverá ter uma terceira tabela "relacionamento_pessoas_carros" que terá dois atributos. o identificador de pessoa (campo que você usou para identificar uma pessoa em seu banco de dados) e o identificador do carro (campo que você usou para identificar um carro em seu banco de dados). Neste caso não haverá uma ligação direta entre pessoas e carros. a ligação será entre pessoas e "relacionamento_pessoas_carros" e a outra ligação será entre carros e "relacionamento_pessoas_carros". As consultas vão depender do que você quer de resultado e de que tipo de relacionamento foi definido por você. Passe a estrutura das tabelas e responda que tipo de ligação terei entre pessoas e carros e entre pessoas e endereços. Assim poderemos chegar a um modelo aceitável para você.
-
Type = palavra chave usada para controlar o engine utilizado pelo DBA quando da criação das tabelas. A partir da versão 5 passou-se a utilizar a palavra chave ENGINE no lugar de TYPE. Innodb = Engine desenvolvido originalmente pela oracle e disponibilizado no MySQL a partir da versão 3.23, se não me engano. Seu objetivo é prover uma estrutura que aceite controle de transação. A partir da versão 5 passou a aceitar controle referencial, também. Default Character Set = Palavra chave para indicar o padrão de caracteres usado para esta tabela. latin1 Collate latin1_general_c = Padrão de caracteres usado para esta tabela. (Ver manual do MySQL para saber mais).
-
Oi, 'Fcesar' ! Informe o select que você está usando, uma pequena massa de dados de cada tabela (pode ser fictício) e a parte da estrutura de cada tabela (os nomes dos campos podem ser ficticios), para que possamos testar e achar uma solução.
-
problema no resultado de consulta entre duas tabelas
pergunta respondeu ao hernandes73 de Denis Courcy em MySQL
Esta é nova pra mim. Mais um teste. Qual o engine de cada tabela? MyISAM, InnoDB, outro? Qual? O atributo re_efet na tabela tb_medidas é índice primário. Existe índice para ele? Se o engine das tabelas é MyISam você já verificou com o myisamchk se as tabelas estão consistentes? -
problema no resultado de consulta entre duas tabelas
pergunta respondeu ao hernandes73 de Denis Courcy em MySQL
Oi,hernandes73! Você já testou se os dados estão nas duas tabelas (Consultou separadamente)? Experimente trocar o INNER JOIN por LEFT JOIN para forçar que apenas um dos lados retorne a informação desejada. Os atributos tb_medidas.re_efet e efetivo.re_efet são numéricos com mesmo tipo, tamanho e sinalização? Se forem do tipo char o varchar verefique se foram escritos da mesma forma. (espaços, letras acentuadas, maiúsculas/minúsculas, etc). Existem índicers para os atributos tb_medidas.re_efet e efetivo.re_efet? Estas são algumas das perguntas que você deverá responder para achar a solução de seu problema. -
Oi, 'The arlindo' Se você está eliminando todos os registros da tabela, use truncate table <nome-da-tabela> em vez de usardelete from <nome-da-tabela>
-
Crie três tabelas. Uma para produto, outra para mercado e outra para produtoxmercado. Na tabela produtoxmercado coloque o preço. É um simples relacionamento muitos para muitos entre produtos e mercados. Pode fazer com qualquer banco de dados. a estrutura será sempre a mesma.