Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
ERRO EM orm.dll.generator - BuilderAlterFieldDefinitionFixFirebird
#1
Está dando erro no ORMbr novamente. (É um bug atrás do outro) acho que o ORMbr está precisando de muitos testes para ficar bom, como eu tenho mais coisas para fazer irei dar um tempo; Preciso terminar meus projetos..

NA unit ORM.DLL.GENERATOR:

Encontrem o seguinte método:

  ----->>>> function BuilderAlterFieldDefinitionFixFirebird(AColumn: TColumnMIK): string;

Esta função é chamada deste outro método:
    
    function TDDLSQLGeneratorFirebird.GenerateAlterColumn(AColumn: TColumnMIK): string;
begin
  Result := 'ALTER TABLE %s ALTER COLUMN %s TYPE %s;';
  Result := Format(Result, [AColumn.Table.Name,
                            AColumn.Name,
                            BuilderAlterFieldDefinitionFixFirebird(AColumn)]);      <<<<<<<-------
end;

Reparem que está gerando clause errada para o firebird:

ALTER TABLE pessoa ALTER COLUMN Renda TYPE Renda NUMERIC(9,2);

Para funcionar no firebird o correto seria;

ALTER TABLE pessoa ALTER COLUMN Renda TYPE NUMERIC(9,2)
Responder
#2
(25-01-2018, 10:52 AM)willian Escreveu: Está dando erro no ORMbr novamente. (É um bug atrás do outro) acho que o ORMbr está precisando de muitos testes para ficar bom, como eu tenho mais coisas para fazer irei dar um tempo; Preciso terminar meus projetos..

NA unit ORM.DLL.GENERATOR:

Encontrem o seguinte método:

  ----->>>> function BuilderAlterFieldDefinitionFixFirebird(AColumn: TColumnMIK): string;

Esta função é chamada deste outro método:
    
    function TDDLSQLGeneratorFirebird.GenerateAlterColumn(AColumn: TColumnMIK): string;
begin
  Result := 'ALTER TABLE %s ALTER COLUMN %s TYPE %s;';
  Result := Format(Result, [AColumn.Table.Name,
                            AColumn.Name,
                            BuilderAlterFieldDefinitionFixFirebird(AColumn)]);      <<<<<<<-------
end;

Reparem que está gerando clause errada para o firebird:

ALTER TABLE pessoa ALTER COLUMN Renda TYPE Renda NUMERIC(9,2);

Para funcionar no firebird o correto seria;

ALTER TABLE pessoa ALTER COLUMN Renda TYPE NUMERIC(9,2)

bom dia
primeiro ele é aberto foi feito seu começo agora a comunidade deve ajudar e ajustar .
qual versão do firebird está a usar? tem diferenças entre a 2.5 e a 3.0

  Juliomar Marchetti
  Moderador do Projeto ORM Brasil
  ORMBr SAC - Assine e faça parte dessa história ajudando o projeto a crescer.

Responder
#3
(25-01-2018, 10:52 AM)willian Escreveu: Está dando erro no ORMbr novamente. (É um bug atrás do outro) acho que o ORMbr está precisando de muitos testes para ficar bom, como eu tenho mais coisas para fazer irei dar um tempo; Preciso terminar meus projetos..

NA unit ORM.DLL.GENERATOR:

Encontrem o seguinte método:

  ----->>>> function BuilderAlterFieldDefinitionFixFirebird(AColumn: TColumnMIK): string;

Esta função é chamada deste outro método:
    
    function TDDLSQLGeneratorFirebird.GenerateAlterColumn(AColumn: TColumnMIK): string;
begin
  Result := 'ALTER TABLE %s ALTER COLUMN %s TYPE %s;';
  Result := Format(Result, [AColumn.Table.Name,
                            AColumn.Name,
                            BuilderAlterFieldDefinitionFixFirebird(AColumn)]);      <<<<<<<-------
end;

Reparem que está gerando clause errada para o firebird:

ALTER TABLE pessoa ALTER COLUMN Renda TYPE Renda NUMERIC(9,2);

Para funcionar no firebird o correto seria;

ALTER TABLE pessoa ALTER COLUMN Renda TYPE NUMERIC(9,2)

Olá Willian

Você está generalizando o BUG para todo o projeto ORMBr (Atualizar estrutura de banco)
Nem o Aurelius que é uma framework PAGO, faz esse recurso que vc está questionando.
O ADD criar novos campos é muito fácil ta funcionando legal.
ALTER, mudar campo do banco não é tão fácil assim, eu realmente tentei fazer, até separei os frameworks para ê se consegui ajuda da comunidade, mas como sempre NUNCA tive nada.

E como vc mesmo disse, vc tem mais o que fazer, e eu tambem, em estar lendo posts como esse, de pessoas como vc, que não trará nada de proveitoso para o projeto, mas estou acostumado, vc deve ser usuário do ACBr tb, la vivenciei com muita gente desse tipo.

Obrigado pelo relato, e agradecido por parar de testar o projeto, me fez um favor.

  Isaque Pinheiro
  Fundador do Projeto ORM Brasil
  ORMBr SAC - Assine e faça parte dessa história ajudando o projeto a crescer.

Responder
#4
(05-06-2018, 10:50 AM)Isaque Pinheiro Escreveu:
(25-01-2018, 10:52 AM)willian Escreveu: Está dando erro no ORMbr novamente. (É um bug atrás do outro) acho que o ORMbr está precisando de muitos testes para ficar bom, como eu tenho mais coisas para fazer irei dar um tempo; Preciso terminar meus projetos..

NA unit ORM.DLL.GENERATOR:

Encontrem o seguinte método:

  ----->>>> function BuilderAlterFieldDefinitionFixFirebird(AColumn: TColumnMIK): string;

Esta função é chamada deste outro método:
    
    function TDDLSQLGeneratorFirebird.GenerateAlterColumn(AColumn: TColumnMIK): string;
begin
  Result := 'ALTER TABLE %s ALTER COLUMN %s TYPE %s;';
  Result := Format(Result, [AColumn.Table.Name,
                            AColumn.Name,
                            BuilderAlterFieldDefinitionFixFirebird(AColumn)]);      <<<<<<<-------
end;

Reparem que está gerando clause errada para o firebird:

ALTER TABLE pessoa ALTER COLUMN Renda TYPE Renda NUMERIC(9,2);

Para funcionar no firebird o correto seria;

ALTER TABLE pessoa ALTER COLUMN Renda TYPE NUMERIC(9,2)

Olá Willian

Você está generalizando o BUG para todo o projeto ORMBr (Atualizar estrutura de banco)
Nem o Aurelius que é uma framework PAGO, faz esse recurso que vc está questionando.
O ADD criar novos campos é muito fácil ta funcionando legal.
ALTER, mudar campo do banco não é tão fácil assim, eu realmente tentei fazer, até separei os frameworks para ê se consegui ajuda da comunidade, mas como sempre NUNCA tive nada.

E como vc mesmo disse, vc tem mais o que fazer, e eu tambem, em estar lendo posts como esse, de pessoas como vc, que não trará nada de proveitoso para o projeto, mas estou acostumado, vc deve ser usuário do ACBr tb, la vivenciei com muita gente desse tipo.

Obrigado pelo relato, e agradecido por parar de testar o projeto, me fez um favor.

Aff, você trabalha duro no projeto, perde horas de sono e de estar junto com sua familia, desenvolve uma baita ferramenta disponibiliza de GRAÇA e daí vem um cara e fala essas baboseira ao invés de tentar descobrir a forma de solucionar o problema. Infelizmente sempre teremos esse tipo de pessoas que não dão valor no serviço dos outros..., Parabéns pelo trabalho Isaque acredito que tem muitos que estão se beneficiando desse projeto, eu sou um deles.
Responder


Saltar Fórum:


usuários a ver este tópico: 1 Visitante(s)