Ir para conteúdo
Fórum Script Brasil
  • 0

Que erro esse?


marvi

Pergunta

Pessoal,

Que erro é esse?

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC SQL Server Driver][sql Server]Cannot create a row of size 8084 which is greater than the allowable maximum of 8060.

/painel/noticiasatualizando.asp, line 30

executar= "update noticias set conteudo = '"&VarDesc&"',data = '"&vdata&"',fonte = '"&vfonte&"',titulo = '"&vtitulo&"' where codigo = "&id&""

Linha 30: Set rsbusca=Conexao.Execute(executar)

O campo do banco é nvarchar com 4000

Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0
"Não é possível criar uma linha de tamanho de 8084, que é maior que o máximo permitido de 8060"

não sei, mas pode ser tamanho do campo menor que o conteudo!

dê uma olhada também no sql!

executar= "update noticias set conteudo = '"&VarDesc&"',data = '"&vdata&"',fonte = '"&vfonte&"',titulo = '"&vtitulo&"' where codigo = "&id&""
separa os campos do update!
executar= "update noticias set conteudo = '"& VarDesc &"', data = '"&vdata&"', fonte = '"&vfonte&"', titulo = '"&vtitulo&"' where codigo = "& id &""

Link para o comentário
Compartilhar em outros sites

  • 0

então, acho q o problema não é nem o tamanho do campo e sim o tamanho da linha. uma linha de uma tabela do sql não pode ter mais q 8060 bytes (se não me engano, a partir do sql 2005 ai já pode). e se o campo é nvarchar, cada caracter ocupa 2 bytes. então se são 4000 caracteres, vai passar de 8000 bytes.

o seu campo tem q ser nvarchar mesmo?? você vai armazenar caracteres unicode?? se não vai, então você poderia mudar pra varchar q ai os 4000 caracteres ocupariam somente 4000 bytes.

outra opcao então, seria mudar para tipo text onde cabem acho q ate 1 giga de dados no caso de texto em unicode.

faca outro, teste, troque a linha:

Response.Write(Len(executar))
por
Response.Write(Len(VarDesc))

e veja o tamanho apenas do campo conteudo q você ta tentando gravar. se tiver mais de 4000 caracteres ai se for em unicode, não vai caber mesmo, você vai ter q mudar pra text. se não for em unicode, você pode mudar pra varchar q ai cabe ate 8000 caracteres.

Link para o comentário
Compartilhar em outros sites

  • 0

Certo, vou fazer o teste.

O tipo de campo eu quero um campo que permita texto, imagens e até html, pois uso o formulário Fckeditor.

Aí ele tem formatação e tudo, como o formulário desse forum para postar dúvidas.

Que tipo de campo posso usar para esse tipo de conteúdo?

Sobre o Response.Write(Len(VarDesc)) deu o número: 4149 na variável VarDesc

Link para o comentário
Compartilhar em outros sites

  • 0

Pelo visto o tipo do campo é nvarchar 4000 e o conteudo está com mais de 4000, preciso achar uma maneira que o campo ganhe mais de 4000 ou outro tipo de campo que caiba mais linhas, algo assim, isso?

Pois uso sql server 2000 e só no sql server 2005 tem um tal de nvarchar max que cabe mais, mas sql server 2000 não

Link para o comentário
Compartilhar em outros sites

  • 0

então, marvi o response.write mostrou q o VarDesc esta com mais de 4000 caracteres. então tem q ser um campo maior q isso. num campo varchar você pode por tamanho de ate 8000 bytes, então, se você aumenta-lo deve resolver.

agora não entendi o q você quis dizer quanto a gravar imagens. mas um editor como esse funcionaria sim num campo varchar.

entretanto se você quiser permitir caracteres unicodes (texto em japones, por exemplo), como o nvarchar não pode passar de 4000, acho q você poderia por como do tipo text.

entretanto como você esta fazendo em html, se o cara escrever um texto com caracteres de outras linguas, os caracteres podem ser convertidos pra o codigo html dele, assim gravando o codigo, não tem necessidade de q seja em unicode, inclusive acho q é assim q funciona aqui no forum.

entretanto não sei te dar mtas informacoes de como trabalhr com isso e nem sei como o fckeditor gerencia isso.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...