Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

campo do tipo "text" no SQL Server - porque não aparece na minha página?

18 views
Skip to first unread message

Fabiano Arruda

unread,
Apr 26, 2005, 4:29:54 PM4/26/05
to
como eu faço pra exibir um campo do SQL Server, do tipo "text", na minha
pagina ASP? precisa de algum tratamento especial? pq eu to chamando o esse
campo no meu BD soh q num aparece nada...

<%=Tbprotocolo.Fields("ocorrencia")%>

com esse codigo eu consigo exibir qualquer campo do BD, menos o campo do
tipo text


EXBR.COM

unread,
Apr 26, 2005, 4:35:26 PM4/26/05
to
<%=Tbprotocolo.Fields("ocorrencia")%>
esse .Fields não tem necessidade..
Mas não é o caso de não mostrar.

<%
Set Tbprotocolo = Server.CreateObject("ADODB.Recordset")
SQL = Select * from Tabela
Tbprotocolo.Open(SQL),Conexao

reponse.write(Tbprotocolo("ocorrencia"))

Tbprotocolo.Close
Set Tbprotocolo = Nothing
Conexao.close
Set Conexao = nothing
%>

Procedimentos padrão.
Checar se existe mesmo dados no DB
Checar o nome do campo "ocorrencia" não está como "Ocorrencia" no SQL
Server não sei mas no MySQL da problema.

Se não for nada disso.
Perguntar para dona Maria do cafezinho... as vezes ela manja de ASP.

Abraços
T+

"Fabiano Arruda" <fabian...@gmail.com> escreveu na mensagem
news:d4m85e$o9l$1...@forums.macromedia.com...

Leonardo Braga

unread,
Apr 27, 2005, 4:35:27 AM4/27/05
to
Cara, tudo bem?

Pelos meus conhecimentos, um campo TEXT é armazenado no SqlServer como
um Blob, ou seja, formato binário (alguém corrija se eu estiver errado).
Então quando você resgata o campo, ele não vem para você como um objeto
string comum.
Existem várias formas complicadas de converter os dados dentro do ASP
(recomendo muito você pesquisar no Google), mas para uma solução rápida
vai ai:

select cast(NOME_DO_CAMPO_TEXT as varchar(3000)) from TABELA

Esta definitivamente NÃO É uma solução elegante, mas funciona no seu
caso. Depois de executar este select, imprima o conteúdo no ASP como
você já faz, irá funcionar. O cast irá tratar os primeiros X caracteres
do campo, ou seja, se você fizer um cast para varchar(1000), ele irá
converter os primeiros 1000 caracteres. O tamanho máximo do tipo varchar
é de 8000 (no MSSQL2000 se não me engano) portanto se você precisar
recuperar dados maiores do que 8000 caracteres do campo, terá que
recorrer a soluções mais elegantes e complexas.

Espero ter ajudado.
Leonardo Braga Nogueira

Múcio Rodrigues

unread,
Apr 27, 2005, 11:58:36 AM4/27/05
to
seguindo o raciocínio do leonardo, você pode tentar:

CStr(Tbprotocolo.Fields("ocorrencia"))


Leonardo Braga

unread,
Apr 27, 2005, 5:07:15 PM4/27/05
to
Bacana essa! Não sabia que CStr funcionava com campos TEXT...

É isso ai, sempre aprendendo!

;-)

flcs...@gmail.com

unread,
Feb 10, 2015, 3:22:43 PM2/10/15
to
Tenho o mesmo problema quando executo "select * from tabela"
Mas quando uso "select campo1, campo2, campo3,.. from tabela" os dados são apresentados sem problema.



0 new messages