Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Diego R. Ferreira

Tfieldtype não tem unsigned de 32-bits

Recommended Posts

Ola a todos,Estou programando uma rotina de cópia de Records entre duas DB´s em MySQL, mas encalhei numa limitação do Delphi. Em particular do TFieldtype´s que não possui um tipo "unsigned interger" de 32-bits, que eu preciso para cópia de um campo especifico com estas caracteristicas.Aqui vai um exemplo:...qryBanco1.ParamsbyName('unsignedint32').Datatype := ftinteger; ...(signed 32-bits e portanto não funciona) qryBanco1.ParamsbyName('unsignedint32').value := qryBanco2.ParamsbyName('unsignedint32').value;...Alguem sabe algum meio de contornar essa limitação?Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi direito o seu problema, mas pelo q eu entendi... não tem como você da um cast no campo pra outro tipo no select da sua query?

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi direito o seu problema, mas pelo q eu entendi... não tem como você da um cast no campo pra outro tipo no select da sua query?

Jé tentei isso, ainda assim ele copia o valor como nulo.Para explicar melhor:A property do TQuery ParamsbyName('campo') é um TField, sua property .Datatype é um TFieldType.Os TFieldType´s são limitados (veja help do Delphi), não possuindo um unsigned integer 32-bits. para que eu possa fazer a cópia de uma DB para a outra, devo setar o DataType do campo que quero selecionar.mas não tendo um unsigned integer 32-bits como opção do TFieldType, não consigo efetuar a cópia.Qualquer dúvida...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para acrescentar mais informação:with qryCopiar do begin Close; SQL.Clear; DatabaseName := banco2; SQL.Text:= 'Insert into Sinal(Nome,'+ ' Descricao,'+ ' Comentarios,'+ ' Cor'+ ')'+ ' values (:Nome,'+ ' :Descricao,'+ ' :Comentarios, '+ qrySelecionar.FieldByName('Cor').AsString+ // Modificação ')'; ParamByName('Nome').Value := qrySelecionar.fieldbyname('Nome').Value; ParamByName('Descricao').AsString := qrySelecionar.fieldbyname('Descricao').AsString; ParamByName('Comentarios').DataType := ftBlob; ParamByName('Comentarios').Value := qrySelecionar.fieldbyname('Comentarios').Value; //ParamByName('Cor').DataType := ftinteger; //??? //ParamByName('Cor').value := qrySelecionar.fieldbyname('Cor').value; end;Mesmo com a modificação não surtiu resultado e continuo tendo como resultado um campo nulo!Por Favor, Ajudem-me!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.