Felipe,

        Eu tenho uma aplica��o, que gera textos no word e grava em banco de dados 
em formato texto, atualmente estou usando os bancos Oracle, SQLBase, 
Informix e SQLServer 6.5 e 7.0, para voc� conseguir realmente grava dados de 
textos longos no SQLServer, siga os passoa a seguir:

        1) o Campo no Server tem que ser do tipo 'image'.
        2) Crie uma Constante na Global Declarations -> Constants -> Users com o 
nome de Number: DBP_LONGBUFFER = SAM_User + 200, coloque 200 de n�o existir 
outra constante com esse n�mero, se existir, coloque um n�mero maior que n�o 
exista.
        3) Antes da Conec��o dos seus handles, execute esse comando
Call SqlSetParameterAll( hSql, DBP_LONGBUFFER, 5000000, '', TRUE )
Onde hSql e o nome do handle, fa�a isso para todos os seus handles, e 
5000000 e o tamanho do seu longbuffer, esse tamanho funciona para todos os 
bancos, menos para o informix que o valor aceit�vel foi 1000000.
        4) Na grava��o do Campos proceda como segue abaixo.
        atribua uma var�avel qualquer de acordo com o tipo de banco que voc� 
escolher, os Bancos Oracle, SqlBase e Informix atribua o N�mero 22 e 
SQlServer 23
        Exemplo:
                If Banco = 'SQLSERVER'
                        Set ngSetLongBind = 23
                If Banco = 'ORACLE'
                        Set ngSetLongBind = 22
                .....
        Depois vamos para a grava��o
        SqlPrepare(hSql, 'Insert into tabela (CODIGO,TEXTO) Values(1000,:sTexto)')
        Call SqlSetLongBindDatatype( 2, ngSetLongBind )
        Sendo o n�mero 2 a posi��o do Campo longo no insert ou update.
        Call SqlExecute( hSql)
        Call SqlCommit (hSql )

        Aten��o: Esse exemplo servir� para todos os quatros bancos listados acima, 
e nunca poder� ser usado o SqlPrepareAndExecute, pois somente funcionar� 
como demostrado acima. E esque�a o longbuffer do sql.ini para inserir campos 
texto em bancos de dados, ele perder� a funcionalidade.

                                                                                       
         Um Abra�o.
                                Qualquer d�vida entre em contado.

                                Carlos Jorge A. Batista
                                LinkData Inform�tica



>From: Felipe Montenegro Arag�o <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: <[EMAIL PROTECTED]>
>Subject: [sqlwin] SOCORRO - Ser� que alguem pode me ajudar
>Date: Mon, 12 Mar 2001 08:31:26 -0300
>
>
>
>   Prezado Amigos.
>
>   Esta aplica��o ja esta funcionando com outros banco de dados (Oracle,
>SQLBase).
>   Tive ontem um problema com oracle que o Lairton me mandou aumentar o
>LongBuffer no SQL.ini.
>   No oracle funcionou, agora estou com o mesmo problema mas com o 
>SQLServer
>7.0.
>   Minha aplica��o guarda no banco documentos word.
>   Ap�s exportar o documento do banco para o meu disco r�gido a aplica��o
>abre o documento normalmente.
>   Caso o documento seja maior que 33 kb este arquivo � danificado.
>   No SQL.INI o padr�o � longbuffer=32000, mas quando aumento o tamanho 
>nada
>acontece.
>
>
>   Desde ja agradece a todos,
>
>
>   Felipe M. Arag�o
>
>     -----Mensagem original-----
>     De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]Em
>nome de Vinicius Lago de Lima
>     Enviada em: Friday, March 09, 2001 1:41 PM
>     Para: [EMAIL PROTECTED]
>     Assunto: Re: [sqlwin] prolbema com campo do tipo text em sqlserver7.0
>
>
>     Bom Felipe, depende de onde voc� quer trazer esse texto!
>     Se voc� quer recuper�-lo em uma MultiLine, nas propriedades dela, mude 
>o
>tipo do campo de String para LongString, com certeza ir� trazer os dados.
>
>     Beleza?
>
>     Abra�os Vinicius!
>       ----- Original Message -----
>       From: Felipe Montenegro Arag�o
>       To: [EMAIL PROTECTED]
>       Sent: Friday, March 09, 2001 1:28 PM
>       Subject: [sqlwin] prolbema com campo do tipo text em sqlserver7.0
>
>
>       Prezados Amigos,
>
>        Estou usando centura 1.5.1 com sqlserver 7.0 e percebi o seguinte
>problema
>       :
>
>       - quando gravo documentos do tipo word maior que 33K  em campo do 
>tipo
>text
>       , n�o mais consigo abri-lo ap�s extra�-lo do banco.
>       -Agrade�o a quem possa solucionar este problema.
>
>
>       At., Marcelo Guimar�es
>
>
>
>
>
>
>
>       Esta � aconfigura��o do sql.ini que estou usando.
>
>
>
>
>       comdll=sqlapipe
>
>       [dbnt1sv.apipe]
>
>       [win32client]
>       clientname=Win32Client
>
>       [win32client.dll]
>       comdll=sqlodb32
>
>       [win32client.apipe]
>       [odbcrtr]
>       odbctrace=off
>       odbctracefile=
>       longbuffer=700000
>       enablemultipleconnections=off
>       [win32client.ws32]
>       [win32client.wsspx]
>
>       [win32client.ntnbi]
>
>       [win32client.spx32]
>
>
>
>
>       ==============================================
>       Lista de Centura SQLWindows
>       Administrador : [EMAIL PROTECTED]
>       [ http://www.centuraexplorer.com ]
>       Para sair desta lista mande mensagem para:
>       [EMAIL PROTECTED] sem nada no Subject e
>       com o comando a seguir no corpo da msg:
>       "unsubscribe sqlwin" (sem as aspas)
>       ==============================================

_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.

==============================================
Lista de Centura SQLWindows
Administrador : [EMAIL PROTECTED]
[ http://www.centuraexplorer.com ]
Para sair desta lista mande mensagem para:
[EMAIL PROTECTED] sem nada no Subject e
com o comando a seguir no corpo da msg:
"unsubscribe sqlwin" (sem as aspas)
==============================================

Responder a