binding problem

"Alan Humphrey" <[email protected]> Fri, 20 Nov 2009 10:15:50 -0800
Newsgroups gmane.comp.lang.perl.modules.dbi.sybase
Message-ID <[email protected]>
Hi =96

I'm having a problem where text in a varchar column is being silently
truncated on UPDATE.  The trace below shows what's happening.  The line
starting "bind :p1" under "prepare_cached" shows the truncated text that
gets written to the database.  However, the bind :p1 under "execute" show=
s
the complete text.

Additional info - database is MSSQL, code is generated via DBIx::Class,
connection is made through FreeTDS on a NetBSD system.

Many thanks for any ideas/insights!

- Alan=20

UPDATE birding_sites SET site_description =3D ? WHERE ( id =3D ? ): 'Bott=
le
Beach State Park, a 3/4-mile stretch of waterfront along the south shore =
of
the bay of Grays Harbor in the Pacific Northwest Coast ecoregion, is a
Washington State Important Bird Area. Bottle Beach has an interesting
history. The site was platted as the town of Ocosta in 1889, when the
railroad designated Ocosta as their coastal terminus for shipments to the
Orient and San Francisco. In 1894, when the terminus was relocated in
Tacoma, Ocosta's population began to dwindle. Today, all that remains of
this town is a Victorian mansion, pilings of the old dock, and the brick
foundation of the railroad turntable (still visible along the beach). Hor=
ses
and geese now feed in the fields that once housed the town of Ocosta.', '=
1'
=A0=A0=A0 -> prepare_cached for DBD::Sybase::db (DBI::db=3DHASH(0xbec6b90=
)~0xbec6b00
'UPDATE birding_sites SET site_description =3D ? WHERE ( id =3D ? )'
HASH(0xbff63e0) 3) thr#986e008
=A0=A0=A0 syb_st_prepare() -> inUse =3D 0
=A0=A0=A0 dbd_preparse parameter :p1 ()
=A0=A0=A0 dbd_preparse parameter :p2 ()
=A0=A0=A0 dbd_preparse scanned 2 distinct placeholders
=A0=A0=A0 dyn_prepare: ct_dynamic(CS_PREPARE) for DBD5
=A0=A0=A0 syb_st_prepare() -> set inUse
1=A0=A0 <- prepare=3D DBI::st=3DHASH(0xbff7b10) at DBI.pm line 1684 via=A0=
 at DBI.pm
line 2240
=A0=A0=A0 <- prepare_cached=3D DBI::st=3DHASH(0xbff7b10) at DBI.pm line 2=
240 via=A0 at
DBI.pm line 606
=A0=A0=A0 -> bind_param for DBD::Sybase::st (DBI::st=3DHASH(0xbff7b10)~0x=
bf0cd60 1
'Bottle Beach State Park, a 3/4-mile stretch of waterfront along the sout=
h
shore of the bay of Grays Harbor in the Pacific Northwest Coast ecoregion=
,
is a Washington State Important Bird Area. Bottle Beach has an interestin=
g
history. The site was platted as the town of Ocosta in 1889, when the
railroad designated Ocosta as their coastal terminus for shipments to the
Orient and San Francisco. In 1894, when the terminus was relocated in
Tacoma, Ocosta's population began to dwindle. Today, all that remains of
this town is a Victorian mansion, pilings of the old dock, and the brick
foundation of the railroad turntable (still visible along the beach). Hor=
ses
and geese now feed in the fields that once housed the town of Ocosta.'
HASH(0xbff6590)) thr#986e008
bind :p1 <=3D=3D 'Bottle Beach State Park, a 3/4-mile stretch of waterfro=
nt
along the south shore of the bay of Grays Harbor in the Pacific Northwest
Coast ecoregion, is a Washington State Important Bird Area. Bottle B'
(attribs: HASH(0xbff6590))
=A0=A0=A0 <- bind_param=3D 1 at DBI.pm line 1316 via=A0 at DBI.pm line 61=
6
=A0=A0=A0 -> bind_param for DBD::Sybase::st (DBI::st=3DHASH(0xbff7b10)~0x=
bf0cd60 2 1
HASH(0xbff6590)) thr#986e008
bind :p2 <=3D=3D '1' (attribs: HASH(0xbff6590))
=A0=A0=A0 <- bind_param=3D 1 at DBI.pm line 1316 via=A0 at DBI.pm line 61=
6
=A0=A0=A0 -> execute for DBD::Sybase::st (DBI::st=3DHASH(0xbff7b10)~0xbf0=
cd60)
thr#986e008
=A0=A0=A0=A0=A0=A0 bind :p1 () <=3D=3D 'Bottle Beach State Park, a 3/4-mi=
le stretch of
waterfront along the south shore of the bay of Grays Harbor in the Pacifi=
c
Northwest Coast ecoregion, is a Washington State Important Bird Area. Bot=
tle
Beach has an interesting history. The site was platted as the town of Oco=
sta
in 1889, when the railroad designated Ocosta as their coastal terminus fo=
r
shipments to the Orient and San Francisco. In 1894, when the terminus was
relocated in Tacoma, Ocosta's population began to dwindle. Today, all tha=
t
remains of this town is a Victorian mansion, pilings of the old dock, and
the brick foundation of the railroad turntable (still visible along the
beach). Horses and geese now feed in the fields that once housed the town=
 of
Ocosta.' (size 730/732/0, ptype 8, otype 0)
=A0=A0=A0=A0=A0=A0 bind :p2 () <=3D=3D 1 (size 1/4/0, ptype 8, otype 0)
=A0=A0=A0 cmd_execute() -> ct_send() OK
=A0=A0=A0 cmd_execute() -> set inUse flag
=A0=A0=A0 st_next_result() -> ct_results(4047) =3D=3D 1
=A0=A0=A0 st_next_result() -> ct_results(4046) =3D=3D 1
ct_results(4046) final retcode =3D -205
=A0=A0=A0 st_next_result() -> lasterr =3D 0, lastsev =3D 0
=A0=A0=A0 st_next_result() -> got CS_CMD_DONE: resetting ACTIVE, moreResu=
lts,
dyn_execed, exec_done
=A0=A0=A0 clear_sth_flags() -> resetting ACTIVE, moreResults, dyn_execed,
exec_done
=A0=A0=A0 clear_sth_flags() -> reset inUse flag
=A0=A0=A0 <- execute=3D -1 at DBI.pm line 1322 via=A0 at DBI.pm line 616