PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: Michael Peppler <mpeppler at MBAY dot NET>
Subject: more text questions
Date: Jan 26 1999 9:44PM

>>>>> "Steve" == Wechsler, Steven M  writes:

Steve> Why do dbpreptext/dbmoretext require the buffer size to be
Steve> specified, while dbwritetext does not?  The documentation is
Steve> unclear on this.

The $size param to dbpreptext() tells DBlib the total size of the TEXT 
buffeer that is being sent, and the $size param to dbmoretext() tells
DBlib the size of the current buffer. I realize now that the size
param to dbwritetext() could have been omitted - I could have checked
it in the procedure itself.

Steve> What is the most straightforward way to write text to a text
Steve> column?

The simplest way is to use a regular insert statement using Client
Library:

$dbh->ct_sql(qq(insert the_text values($key, "$the_text")));

THis works fine (modulo quote problems).

Otherwise calling dbwritetext() is probably the simplest, altough it's 
by definition a two step process - you need to retrieve the TEXTPTR
which is done internally by dbwritetext().

I don't know if there is any advantage (apart from memory use) of
using a multi-part insert instead of writing the whole buffer in a
single call.

Michael
-- 
Michael Peppler         -||-  Data Migrations Inc.
mpeppler@mbay.net       -||-  http://www.mbay.net/~mpeppler
Int. Sybase User Group  -||-  http://www.isug.com
Sybase on Linux mailing list: ase-linux-list@isug.com