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)
==============================================
Re: [sqlwin] SOCORRO - Ser� que alguem pode me ajudar
Carlos Jorge Andrade Batista Tue, 13 Mar 2001 04:30:06 -0800
- Re: [sqlwin] SOCORRO - Ser? que alguem pode m... Carlos Jorge Andrade Batista
- Re: [sqlwin] SOCORRO - Ser? que alguem p... Carlos Jorge Andrade Batista
