---
name: "Apache::Session::Store::Sybase"
section: "3pm"
platform: "linux"
package: "libapache-session-perl"
version: "1.94-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Apache::Session::Store::Sybase"
---

# Apache::Session::Store::Sybase(3pm)

Store persistent data in a Sybase database

## NAME

Apache::Session::Store::Sybase - Store persistent data in a Sybase database

## SYNOPSIS

```
 use Apache::Session::Store::Sybase;
 my $store = new Apache::Session::Store::MySQL;
 $store->insert( $ref );
 $store->update( $ref );
 $store->materialize( $ref );
 $store->remove( $ref );
```

## DESCRIPTION

Apache::Session::Store::Sybase fulfills the storage interface of Apache::Session.  Session data is stored in a Sybase database.

## SCHEMA

To use this module, you will need at least these columns in a table  called 'sessions':

```
 id        CHAR(32)     # or however long your session IDs are.
 a_session IMAGE
```

To create this schema, you can execute this command using the isql or sqsh programs:

```
 CREATE TABLE sessions (
    id         CHAR(32) not null primary key,
    a_session  TEXT
 )
 go
```

If you use some other command, ensure that there is a unique index on the id column of the table

## CONFIGURATION

The module must know what datasource, username, and password to use when connecting to the database.  These values can be set using the options hash (see Apache::Session documentation).  The options are:

- DataSource

  - UserName

  - Password

  Example:

```
 tie %hash, 'Apache::Session::Sybase', $id, {
     DataSource => 'dbi:Sybase:database=db;server=server',
     UserName   => 'database_user',
     Password   => 'K00l',
     Commit     => 1,
 };
```

Instead, you may pass in an already-opened DBI handle to your database.

```
 tie %hash, 'Apache::Session::Sybase', $id, {
     Handle => $dbh
 };
```

Additional arguments you can pass to the backing store are:

- Commit - whether we should commit any changes; if you pass in an already-open database handle that has AutoCommit set to a true value, you do not need to set this. If you let Apache::Session::Store::Sybase create your database, handle, you must set this to a true value, otherwise, your changes will not be saved

  - textsize - the value we should pass to the 'set textsize ' command that sets the max size of the IMAGE field. Default is 32K (at least in Sybase ASE 11.9.2).

  ## AUTHOR

This module was based on Apache::Session::Store::Oracle which was written by Jeffrey William Baker \<jwbaker@acm.org\>; it was modified by Chris Winters \<chris@cwinters.com\> to work with Apache::Session 1.5+ with changes from earlier version of Apache::Session::DBI::Sybase from Mark Landry \<mdlandry@lincoln.midcoast.com\>.

## SEE ALSO

Apache::Session
