Improving DBD::Sybase support, suggestion

Mark Schaal mark at
Thu Dec 16 18:16:20 EST 1999

> On 12/16/99, "Michael Peppler <mpeppler at>" wrote:
> > Adrian Blakey writes:
> >> In some offline email with Michael Peppler I was told that ct_capability()
> >> currently always returns false. The result from this is used by DBD::Sybase
> >> to determine whether things like parameterized queries are supported (?
> >> placeholders).
> >> 
> >> Is improving ct_capability on the near-term todo list? ( :-) )
> > 
> We started returning false to make DBD::Sybase test happy.  It then went on 
> the  long term todo list. Problem is I know that sybase supports some of 
> this from the server end, but I'm not exactly sure how.  If somebody sends 
> me a script that uses placeholders I can probably see what is going on, and 
> then we'll know how difficult it is.  The other approach is to simply 
> implement it all on the client side, which has the advantage of working 
> against older Sybase engines and MS SQL as well.
> Brian

I can't find anything indicating that MS SQL 6.5 supports it directly
in the server.  It has something called "local temporary procedures" 
which would serve except that it needs to know the data types of the
placeholders up front.  From the DBI docs it doesn't look like that
information is inherently available, but a clever enough client 
could determine it...the placeholder locations are restricted...
a fair bit o' work though.

[Open Client Reference Manual:
[    A placeholder can occur in the following locations:
[    - In place of one or more values in an insert statement
[    - In the set clause of an update statement
[    - In the where clause of a select or update statement

Of course if you know you are using MS SQL you can always go ahead
and use the CREATE PROCEDURE, etc, manually.

Mark J. Schaal					Phone:      (909) 620-7724
TST On Ramp					Fax:	    (909) 620-8174
System Administrator				E-Mail: mark at

More information about the FreeTDS mailing list