Why not just use an Object Database?
In some cases, an Object Database is a good choice for Smalltalk persistency.
However, Object Databases in general are proprietary - it may be difficult to
access your data from tools or languages other than your own Smalltalk
application. Conversely, Access to Relational Databases (via SQL and ODBC) is industry
standard, making your Smalltalk objects immediately available to powerful tools
such as Crystal Reports and
Using a Relational databases also makes available sophisticated querying capabilities that can be difficult to achieve with
an Object Database. ReStore makes these easily available to you
via regular Smalltalk methods - See How Do I Retrieve an Object?
Can I use ReStore to interface to an existing
Possibly. However, using an existing Relational Database design as the basis of your Smalltalk
object model may not be a good idea - if the relational design does not map
well to Smalltalk objects, the resulting code can be inefficient, awkward to develop and
difficult to maintain. This is why ReStore takes your Smalltalk code as
the starting point, and generates the database schema from there. This results in a
clear, consistent structure that is both intelligible as a relational database
and maps well to a Smalltalk object model.
Having said that, ReStore is configurable in a number of ways
beyond its default behaviour, and has been developed
with future extensibility in this direction in mind. If you have specific
requirements in this direction, please contact
What Databases are suitable for use with
In general, you can use any relational database that is accessible via an
ODBC driver. However, although there are various standards for SQL, most
databases diverge from these to a greater or lesser extent. Fortunately ReStore
has a flexible SQLDialect object - this can be configured in various ways
to accommodate most databases. Out-of-the-box, ReStore comes
with a 'standard' configuration, plus variants for
- MS Access
- MySQL (with transactional tables)
- SQL Server
- Oracle 7.x
- Oracle 8.x
We are always happy to help in refining or developing a configuration for your
Solutions Software Ltd.
Index | Prev | Next