› Fóruns › Banco de dados Oracle › Texto grande no Oracle
- Este tópico contém 6 respostas, 3 vozes e foi atualizado pela última vez 18 anos atrás por
Delaruvi.
-
AutorPosts
-
2 de maio de 2008 às 10:01 pm #81763
Delaruvi
ParticipanteAe galera td certo?
To precisando de uma ajuda aqui, tipo preciso ter alguns artigos em uma tabla do oracle só que esses artigos são muito grande em média de 8 folhas cada um.
Vi em um tutorial que o Tipo de Dados CLOB aguenta até 4 gb de informações então to tentando enviar esse texto do artigo para um campo com esse tipo de dados só que não estou conseguindo ele da esse erro quando tento fazer um insert ou update dos artigos:
ORA-01704: literal de string extenso demaisEstou fazendo o Insert ou Update normal sem nenhum tipo de tratamento antes de tentar inserir no campo CLOB, acho q tem que ter algum tipo de tratamento ou conversão.
Alguem pode me ajudar a fazer esse tratamento, construir uma Procedure ou Trigger para isso.
Obrigado.
2 de maio de 2008 às 10:11 pm #81764Ishii
ParticipanteOlá,
Para isso você terá que fazer uma procedure mesmo. Com a proc, você cria uma variável tipo CLOB e alimenta o dado na variável e depois faz o insert da variável… Num insert simples somente se não for com mais de 4000 caracteres…
[]s Ishii
2 de maio de 2008 às 10:44 pm #81765Delaruvi
Participanteestou fazendo o cadastro pela procedure abaixo:
CREATE OR REPLACE PROCEDURE UNIFEV.NUI_PROC_CAD_ARTIGO
(p_titulo IN VARCHAR2, p_desc IN VARCHAR2, p_texto IN CLOB, p_autor IN VARCHAR2, p_data IN VARCHAR2, p_vizualizacao IN VARCHAR2) IS
BEGIN
INSERT INTO UNIFEV.NUIARTIGO (TITULO, DESCRICAO, TEXTO, AUTOR, DATA, VISUALIZACAO) VALUES (p_titulo, p_desc, p_texto, p_autor, p_data, p_vizualizacao);
END NUI_PROC_CAD_ARTIGO;esta dando aquele erro, não sei como alterar essa procedure para ela inserir mais de 4000 caracteres vc pode me ajudar?
2 de maio de 2008 às 10:52 pm #81766Marcio68Almeida
ParticipanteDependendo do tipo de aplicativo qe você está usando (Delphy, VB, etc) existem ferramentas que auxiliam na hora de manipular esse tipo de dados, não pode ser tratado simplesmente como se fosse texto comum.
Se for do tipo LOB, (eu acho que) ainda dá para inserir como texto comum, mas está descontinuado.2 de maio de 2008 às 10:59 pm #81767Delaruvi
ParticipanteEstou utilizando oracle com PHP para web, estou procurando algum tipo de tratamento nas funções do php para essa inclusão.
Mas acho que só de alterar esse procedure ja vai resolver, so nao sei como kkk
2 de maio de 2008 às 11:42 pm #81768Delaruvi
Participantealguem pode me ajudar to correndo atrs disso a tempos
5 de maio de 2008 às 8:17 pm #81771Delaruvi
Participantehelp
-
AutorPosts
- Você deve fazer login para responder a este tópico.
› Fóruns › Banco de dados Oracle › Texto grande no Oracle