MinhasDicas.com > Informática > Dicas & Macetes - Delphi

ERRO em campo MEMO com mais de 256 caracteres
no SQL Server 2000

Dica, e texto "inflamado", enviados por: Jeferson B. S. Junior - Programador Sênior - HSE

Quando ocorre o erro: Essa p... de erro ocorreu quando eu estava com uma tabela no SQL server 2000, com um dos campos como Varchar(500), então quando montei a "Query" para visualização tanto em "DBGrid" quanto em um Form com "DBNavigator", a m.... estava completa.

Debugando:



Em execução:



A m.... toda começou quando instanciei a minha "Query" e adicionei todos os campos no "fields editor"...

Usando os campos criados com essa "instância" nos Forms, como Qalldescricao.Asstring.

                                                

Reparem que no tipo do Object inspector o "BlobType" esta selecionado como "ftMemo", então em tese, não adiantaria nada alterar certo? Certo!!! Nem adianta mexer nessa p....!!!

Então fui na internet, onde a Borland me falou o seguinte desse erro : "É só altera o BLOB TO CACHE de 64 para 65542, que você irá resolver o seu problema..." (mais ou menos isso):



Então resolvi meu problema??? C....... nenhum, a m.... desse erro é pior que qualquer coisa que eu já havia enfrentado.... Erro do banco — segundo eu estava pensando... E é isso mesmo...

Vou explicar:

Quando você cria uma "Query" e no "fields editor" chama aquele porrão de campos para poder utilizar como quiser, de onde desejar, MAS, NUNCA EM TEMPO NENHUM pense em chamar um campo com mais de 255 caracteres, porque ESSE C...... DE BANCO DE DADOS ANSI 400 não dá suporte a documentos, ou seja, SQL, MYSQL... Não sabem tratar esse c......!!! Pelo que fiquei sabendo somente um tal de NOTES do antigo Lotus Notes...

Então separe esse c...... de mais de 255 caracteres da sua tabela e trate como objetos distintos, e sempre que for exibir, limpe a "Query".

E que a Borland e a Micro$oft vão pro C......!!!!!