<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE product SYSTEM "bag-1.0.dtd" >
<product shortname="odbcexpress">
   <name>ODBCExpress</name>
   <vendor>Korbitec</vendor>
   <currentversion>6.0</currentversion>
   <wikiname>OdbcExpress</wikiname>
   <web>http://www.odbcexpress.com</web>
   <email>support@odbcexpress.com</email>
   <internalemail>pieterm@korbitec.com</internalemail>
   <shortdescription>ODBCExpress provides access to data via ODBC,
   avoiding the overhead and limitations of the BDE. It is intended
   primarily for client/server development, but it also has excellent
   support for ODBC drivers for flatfile databases.</shortdescription>
   <sourceavailable>1</sourceavailable>
   <dataaware>TDataSet (D3+)</dataaware>
   <querylanguage></querylanguage>
   <delphivers>1 2 3 4 5 6 7</delphivers>
   <cppbvers>1 3 4 5 6</cppbvers>
   <kylixvers>2 3</kylixvers>
   <deployment>ODBCExpress compiles into your EXE; requires ODBC
   driver and manager, both of which are freely redistributable from
   Microsoft.</deployment>
   <models>
      <local primary="0">Yes</local>
      <fileserver primary="0">Yes</fileserver>
      <clientserver primary="1">Yes, ODBCExpress is intended
      primarily for client/server development.</clientserver>
      <webserver primary="1">Yes, as an ODBC-based solution
      ODBCExpress benefits from ODBC's Connection Pooling, which is
      designed to improve performance in a web server
      environment.</webserver>
   </models>
   <packages>
      <package description="Per developer" price="$299" />
      <package description="Per developer, with source"
      price="$699" />
   </packages>
   <compatibility>
      <tool name="(Delphi) Database Explorer" compatible="Unknown" />
      <tool name="Ace Reporter" compatible="Yes" />
      <tool name="InfoPower" compatible="Yes"
      notes="Yes, using included TwwOEDataSet" />
      <tool name="Orpheus (TurboPower)" compatible="Yes" />
      <tool name="QuickReports" compatible="Yes" />
      <tool name="RAVE Reports" compatible="Yes" />
      <tool name="ReportBuilder Pro" compatible="Yes" />
   </compatibility>
   <dataformats>
      <dataformat database="SQL Server" native="1"
      via="ODBC = native" notes="Works very well." />
      <dataformat database="Oracle" native="0" via="ODBC"
      notes="Microsoft Oracle ODBC driver work very well." />
      <dataformat database="Sybase SQL Anywhere" native="1"
      via="ODBC = native" notes="Works very well." />
      <dataformat database="Sybase Server Enterprise" native="0"
      via="ODBC" notes=" " />
      <dataformat database="Informix" native="0" via="ODBC"
      notes=" " />
      <dataformat database="DBF" native="0" via="ODBC/Jet"
      notes="Support FoxPro DBF. Requires MS Jet Engine." />
      <dataformat database="Access (MDB)" native="0" via="ODBC/Jet"
      notes="Work very well." />
      <dataformat database="ODBC" native="1" via=" " notes=" " />
      <dataformat database="Interbase" native="0" via="ODBC"
      notes=" " />
      <dataformat database="Paradox" native="0" via="ODBC/Jet"
      notes="Requires MS Jet Engine." />
      <dataformat database="Solid Server" native="1"
      via="ODBC = native"
      notes="Vendor has had positive feedback." />
      <dataformat database="SAP DB" native="0"
      via="ODBC" notes=" " />
      <dataformat database="MySQL" native="0"
      via="ODBC" notes=" " />
      <dataformat database="Cache" native="0"
      via="ODBC" notes=" " />
      <dataformat database="Teradata" native="0"
      via="ODBC" notes=" " />
   </dataformats>
   <vendordescription>
      <p>
         <u>What is ODBC?</u>
      </p>
      <p>ODBC is an acronym for 'Open DataBase Connectivity'. It is a
      standard first developed by Microsoft for accessing data in
      both relational and non-relational database management systems,
      based on the X/Open and ISO/IEC Call-Level Interface (CLI)
      specifications for database APIs and the Structured Query
      Language (SQL) specification for database access languages. The
      ODBC standard is widely used by all major database vendors.
      Databases driven by database engines include Oracle, Microsoft
      SQL Server, Sybase, Informix and DB2, while you also get a lot
      of so-called 'flat-file' databases with no stand-alone database
      engines, such as Microsoft Access, dBase, Paradox and BTrieve.
      All these and other databases can be accessed via ODBC.</p>
      <p>Why was ODBC created? You need a way to communicate with a
      database and transfer data to and from a database, as well as
      perform some queries on the data in the database. The problem
      is that each database vendor has his own set of methods (called
      an API) to perform all these functions. So, if you write an
      application which for example uses the Oracle API, that same
      application can&#8217;t be used to access a SQL Server
      database, since the API&#8217;s of Oracle and SQL Server are
      different. So you have to duplicate all your code if you want
      to access two different databases from the same application.
      Imagine if you want to access 5 or 10 different databases!</p>
      <p>Now this is where ODBC comes into the picture and makes life
      a whole lot easier for you. ODBC is an API that allows you to
      talk to any database you want. Instead of writing a data access
      application using a specific database API, such as
      Oracle&#8217;s, you can now write your application using the
      ODBC API, which can perform virtually any function that you can
      do with the Oracle API. The best part is that now you can use
      the same code to access any other database too! How is this
      possible? Well, ODBC is basically a very thin layer between
      your application and the database API. It makes use of an ODBC
      driver to access a specific database. An ODBC driver is
      basically a DLL which maps each function in the ODBC API to
      similar functions in the API of the specific database the
      driver was written for. For example, the Oracle ODBC driver
      maps the ODBC API into the Oracle API. Each database has its
      own ODBC driver or drivers, written either by the database
      vendor or a third-party ODBC driver vendor.</p>
      <p>
         <u>What is ODBCExpress?</u>
      </p>
      <p>Even though you now only have to write to one API to access
      any database, the ODBC API isn&#8217;t a simple API by any
      means. It has to cater for almost any functionality that any
      database out there can support, so you can imagine that the
      ODBC API is quite complex. ODBCExpress wraps the ODBC API into
      a set of easy-to-use classes for Delphi and C++Builder, so that
      you don&#8217;t even have to know much (if anything) about the
      low-level ODBC API to fully make use of ODBC in your
      applications! However, the application programmer still has
      access to all low level ODBC functions, giving the programmer
      the flexibility of the ODBC API.</p>
      <p>ODBCExpress provides you with access to the entire ODBC API.
      Source code availability gives you full control over the
      database middleware and allows you to trace down as far as the
      low-level ODBC call. This transparency means you can avoid the
      pains of impenetrable database engines during debugging. In the
      BDE for example ODBC calls are hidden by the BDE, which adds
      another layer adding complexity and problems to your database
      interface. So if you for example hit a problem when using
      BDE-ODBC you have no idea if the problem
      <br />lies with the BDE or with your ODBC driver.</p>
      <p>ODBCExpress compiles completely into your executable, which
      means no distribution of an external database engine is
      necessary. You will need to distribute the ODBC driver or
      drivers used by your application, and of course you need ODBC
      installed on the client's machine, however this is normally
      distributed with the operating system, and is also freely
      available for download from various web locations. Because
      ODBCExpress talks directly to ODBC, and ODBCExpress's
      architecture is optimized for performance, there is no other
      database middleware for Delphi which can match the speed of
      ODBCExpress. ODBCExpress was designed for the express purpose
      of writing large and responsive industrial-strength data access
      applications.</p>
      <p>
         <u>Some of the new features in latest release:</u>
      </p>
      <p><ul>
        <li>IDE tools to assist with the development of your database application</li>
        <li>Many performance enhancements</li>
        <li>Much more database and TQuery compatibility</li>
        <li>Additional data type support</li>
        <li>Full TDataSetProvider support</li>
        <li>Front-end cache sorting capabilities</li>
      </ul></p>
   </vendordescription>
   <ourcomments>
	   <p>A few years ago, some users reported a lack of response
		   from this vendor, but they appear to be alive and
		   active, have updated the product to support
		   current IDE versions, etc.</p>
      <p>ODBCExpress is intended primarily for client/server
      development, but is also has full support for ODBC drivers for
      flatfile database. This is very useful for people want to ship
      two versions of their applications: a client/server and a
      single-user version.</p>
      <p>As with all middleware-based solutions, ODBCExpress will
      work very well or no so well based on the ODBC driver. For
      example, the ODBC drivers for MS SQL Server and MS Access work
      very well with ODBCExpress; It is not surprising that
      Microsoft's products work best with an ODBC-based solution,
      since Microsoft makes ODBC itself.</p>
      <p>ODBC itself is still in wide use, though Microsoft's focus
	      shifted to ADO and OLE-DB some time back, and more recently
	      to ADO.NET and .NET providers.  Some DBMSs still have more
	      ODBC support than OLE-DB/ADO, so an ODBC solution is still
	      a valuable tool to have.  In addition, some users have
              found that OBDC offers high performance than ADO for
              certain high-volume operations.</p>
   </ourcomments>
   <internalnotes></internalnotes>
   <lastupdated></lastupdated>
   <lastupdatedby>Kyle Cordes</lastupdatedby>
   <active>1</active>
</product>
