User: jbu Date: 06/01/22 07:48:18 Modified: /dba/www/drivers/postgresql/ index.html
Log: releasing 0.7.0 File Changes: Directory: /dba/www/drivers/postgresql/ ======================================= File [changed]: index.html Url: http://dba.openoffice.org/source/browse/dba/www/drivers/postgresql/index.html?r1=1.29&r2=1.30 Delta lines: +190 -111 ----------------------- --- index.html 28 Feb 2005 13:30:04 -0000 1.29 +++ index.html 22 Jan 2006 15:48:15 -0000 1.30 @@ -27,22 +27,24 @@ <li> <a href="#intro">Introduction</a> </li> + <li> <a href="#requirements">Requirements </a></li> + <li> <a href="#download">Download</a></li> <li> - <a href="#install">Installation</a> + <a href="#install_1.1">Installation and usage in OO1.1.x</a> </li> - <ul> - <li> - <a href="#datasource">Adding a datasource</a></li> <li> - <a href="#url">Url format</a></li> - </ul> + <a href="#install_2.0">Installation and usage in OO2.0.x</a> + </li> + <li> - <a href="#features">Features</a></li> + <a href="#features">Features and know bugs</a></li> <li> <a href="#api">Using the driver via the API</a></li> <li> <a href="#source">Building from source</a></li> <li> + <a href="#report">Reporting bugs</a></li> + <li> <a href="#author">Author</a> </li> </ul> @@ -53,84 +55,32 @@ postgresql database</a> from OpenOffice.org without any wrapper layer such as odbc or jdbc. - <p> The current versions 0.6.x contain some major improvements compared to 0.5.0, - but it can still be considered to be in a alpha state. About 80 % of the features - a professional driver should have, are implemented now. Beside the missing features, - there are some <a href="#known_bugs">known bugs</a>. - - <p> The main purpose of this - version is to collect input from the community in an early development stage. - <strong>Treat this driver with care, it is not thouroughly tested yet and - might (in the worst case) destroy your data. It should not be - used in a production environment (or it must have been thouroughly tested - for its concrete purpose before).</strong> - <p> So if you want a driver, that - just works, you should wait some more time. On the other hand, you have the - chance to have some influence on the current development, so that a final - driver may support the features you need. + + <p> The current version 0.7.0 can be considerded as beta quality ( + with some <a href="#known_bugs">known issues</a> and missing features). + + </p> <p> - The driver is aimed at the 1.1 OpenOffice.org versions, it should not + The driver is aimed at the 1.1 OpenOffice.org and OpenOffice.org 2.0 versions, it does not work with OOo1.0.x trees. - <i> Important notice: The driver also works with current developer - builds for upcoming OOo2.0, but it may have a problem that it - shows jdbc-connection setup dialog. In this case, simply - put the postgresql connection string - (eg. host=localhost dbname=myfavouritedb) into the Data source url - text field and fill into the jdbc class name a 'foo' and continue. - </i> </p> <p> The final aim is to have an easier to use, faster, more feature rich database driver than the jdbc-odbc solution. The current version should already allow this in most places (though I actually have never compared them feature by feature). - <a name="changes"><h2>Changes</h2></a> - <ul> - <li>Version 0.6.2<br> - <ul> - <li> Tables created by OOo should now appear immediatly in the list of available - tables e.g. in the beamer window. Structural changes to tables (e.g. the addition - of a column) are now shown after reselecting the table in the beamer window. In - earlier versions, one had to a reconnect on the data source to see the changes. - <li> The driver now supports arrays, however, as the OOo framework itself currently does - not display arrays correctly, they are still reflected as plain strings as in earlier - versions. You can only make use of this new feature by using the driver via the API. - <li> An annoying bug has been fixed, that led to 'Input Error' pop up windows in forms. Under - certain circumstances, the 'not null' column property could be transported transported - incorrectly to OOo. - </ul> - <li>Version 0.6.1<br> - <ul> - <li> Data type handling<br> - Some postgresql data types are not yet correctly suppported by the driver ( - arrays, blobs and 'esoteric types' such as circle, point, etc.). In prior version, - values of this type were not displayed by the driver at all. Now, they are shown in their - default string representation, which also allows modification of the values. - <p> All these types get currently mapped to the OOo Memo type, this is recognizable - in the Edit-table window, where they are grouped together in the type selection box. - </li> - <li> Named parameters in prepared statements (or subform support)<br> - In prior versions, only a '?' as a placeholder in prepared statements was supported, - which did not work out properly with subforms. Now additionally named parameters - (e.g. ':x' or ':myvar') are supported, which allows full subform support. - </li> - </ul> - </li> - </ul> - + <h2 id="requirements">Requirements</h2> + Install a postgresql server if you haven't one already. The current driver + version was tested using postgresql-7.3.2. It does not work with + postgresql 7.2.x server version. It should work with all other currently available including 8.x versions. - <h2>Installation</h2> - </a>Install a postgresql server if you haven't one already. The current driver - version was tested using postgresql-7.3.2, 7.3.3 and 7.4.2. It does not work with - postgresql 7.2.x server version. It should work with other inbetween versions, though I have - not tested this. Let me know <em>success stories</em> so that I can add them here. - </p> - <p> - Install a OpenOffice.org1.1.1 or newer if you have not done so already. - </p> <p> - Download the binary version of the driver. + Install OpenOffice.org 1.1 or OpenOffice.org 2.0 (recommended). + + <h2 id="download">Download</h2></a> + + Download the binary version of the driver. <strong> Follow below installation instructions </strong> <table border="5"> <tbody> <tr> @@ -143,7 +93,17 @@ md5sum</th> </tr> <tr> - <td> <strong>0.6.2 (recommended)</strong></td> + <td> <strong>0.7.0 (recommended)</strong></td> + <td> + Windows, Linux x86 (multi platform package) + </td> + <td> + <a href="postgresql-sdbc-0.7.0.zip">http://dba.openoffice.org/drivers/<wbr>postgresql/postgresql-sdbc-0.7.0.zip</a> + </td> + <td></td> + </tr> + <tr> + <td> 0.6.2</td> <td> Windows, Linux x86 (multi platform package) </td> @@ -196,13 +156,72 @@ </tbody> </table> </p> - <p> If your platform does not appear in the above list, you can build the driver from source. + <p> If your platform does not appear in the above list, you can build the driver from <a href="#source"> source</a>. + + <h2 id="install_2.0"> Installation with OOo 2.0 </h2> + <table> + <tr><td bgcolor="lightgrey"> OOo 2.0</td><td> <p> Before continuing, make sure to shutdown OpenOffice.org (even the quickstarter on windows must be closed, see the system tray at the bottom right of your desktop). </p> + <p> Start a shell and switch to /path/to/openoffice/program. + <p> <strong>Check, whether you have installed an older version of the driver.</strong> + + <pre> + unopkg list + </pre> + + In case there is an older version, remove it e.g. by invoking + + <pre> + unopkg remove postgresql-sdbc-0.6.2.zip + </pre> + + . Then install the new version with the following command: + + <pre> + unopkg add /path/to/your/download/postgresql-sdbc-0.7.0.zip + </pre> + + . Using the --shared option will install the driver for all users. + + <p> + Then start the database program ./sbase. In the upcoming dialog choose + the option <strong> connect to an existing database</strong>. In the + combobox should appear <strong>postgresql</strong> (if the it is not there, + the installation of the driver has failed). + + <p>In the upcoming dialog, you can enter space separated name/value pairs describing + the database connection. Note that there must not be a leading nor a trailing space + surrounding the attributes. At the simplest level, this string can be empty + ( which means connecting to the user's database instance running on the same machine ). + A typical url e.g. is + + <pre> + dbname=pqtest host=mydatabaseserver + </pre> + . A full list of possible options can be found on the <a href="http://www.postgresql.org/docs/7.3/static/libpq-connect.html">postgresql site</a> + + . User/password can be given in the following dialog (so that the password does not appear + in plain text). + <p> You can press the Test Connection button to verify, that your settings work. + + Then press the Finish button, and you can work with your postgresql database. + + <p> + Tip: Open the Tools/Table Filter dialog afterwards and deselect the schemas and tables, you don't want to work with (typically + you won't want to work with the pg_catalog (postgresql intern) schema. + </td></tr></table> + + + <h2 id="install_1.1"> Installation with OOo 1.1.x </h2> + + <table> + <tr><td bgcolor="lightgrey"> OOo 1.1</td><td> + <p> <strong> In case you have used an older version of this driver, you have to deinstall the old one before</strong>. This can simply be done by deleting the postgresql-sdbc-$(VERSION).zip (e.g. 0.5.0 or 0.6.0) file from the OpenOffice1.1.0/user/uno_packages folder. @@ -282,10 +301,9 @@ Select the schemas you want to work with (in general, you won't want to work with the pg_catalog schema). <a name="features"> + </td></tr></table> + <h2>Supported and missing features</h2> - </a>The driver currently is implemented using the - 'straight-forward-easy-to-implement' strategy. The driver supports : - </p> <ul> <li> Integration into OpenOffice GUI via DataSources @@ -301,27 +319,38 @@ <a name="known_bugs">The</a> following features work with some limitations one needs to keep in mind: <ul> - <li> Data modifcation </li> + <li> Renaming tables<br> + OOo 2.x offers you to both change schema and table name, however there is no postgresqlcommand + to move a table from one schema to another (let me know, if this is not correct). When you change + the schema name, the table remains in its original schema and gets a table name NewSchema.NewTableName. + + OO1.1.x does not have this problem. + </li> + <li> Data modifcation <br> Modification of data in tables via the UI (e.g. via the beamer window) is only possible, when <strong>your table has a primary key</strong> and the primary key is part of the used select statement (otherwise the OOo framework has no possibility to find the row again to write the modification). + </li> <li> The serial datatype (and default values)<br> Support for serial (= auto increment ) datatype is difficult to implement, - because a) it is not really a type in postgresql and b) because it is - not easily possible to retrieve the generated value after an insertion. - <p> This is currently achieved with the help of oids, so it is currently - a requirement, that <strong>the table was created with postgresql - oids</strong>. The default is to have oids, but tables can be created with the - option WITHOUT OIDS, you will get errors after inserting data into these tables. The - data is inserted but not sufficiently reflected in UI. - This behaviour may be optimized in future. - <p> Additionally you can create tables with serial columns. Therefor you have + because a) it is not really a type in postgresql. + + <p> You can create tables with serial columns. Therefor you have to choose a int or big int as data type of the column and set the autoincrement flag to true. Note, that you can only do this during creation of the table - (before you press the save button the first time), as postgresql does not + (before you press the save button the <strong>first</strong> time), as postgresql does not support serials in ALTER TABLE statements. + + <p> Additionally it is difficult to to retrieve the generated value after an insertion in + such a table. The driver follows a two strategies here. When the table supports + posgresql oids, it uses oid to find the just inserted row again. In case it does not, + it queries for the structure of the primary key of the table and uses the curr_val() + function to retrieve the last increment of the serial in this session. + <p> This is a little slow (because these reflection queries are executed for + every insertion). It might be sped up with cashing the reflection data when + too many people complain. </li> <li> Updateable resultsets<br> Updateable resultsets are currently implemented for selects on simple @@ -360,10 +389,9 @@ implemented in the driver. The loglevel can be set by editing a .ini or rc file in the extracted package. The file is located in the following path : - OOo-root/user/uno_packages/cache/uno_packages/postgresql-sdbc-0.6.2.zip.1086437099/postgresql-sdbc.unorc + ~/openoffice.org2/uno_packages/cache/uno_packages/postgresql-sdbc-0.7.0.zip.1086437099/postgresql-sdbc.unorc , where the number is different on your system. The file - can be edited with a texteditor (note: this might not work - on OOo2.0 source tree). The logevel can be set to + can be edited with a texteditor. The logevel can be set to NONE (no logging), ERROR (only errornouss situations are logged), INFO (some more verbose output) and SQL (every SQL statement sent to the server is logged including access time in milliseconds ). @@ -376,12 +404,8 @@ executed multiple times (this must be done in the OOo framework). </li> <li> User Administration <br> - User administration is currently very poorly implemented - inside the driver. You'll realize this lack with the - new OOo2.0 database application, which offers a fine - dialog for user admin. Most stuff can be implemented - without a problem, it is - just a question of time ... + Priviliges are not shown and cannot be modified in the user administration dialog. + </li> <li> Knwon issues</li> <table> @@ -416,10 +440,9 @@ service. You can use the driver also from within a python process or with a standalone java/C++ program. - <h2> - Building from source - </h2> - Build in a OO1.1 environment. + <h2 id="source">Building from source </h2> + Build in a OO1.1 environment (this is needed to keep up compatibility with OOo1.1). I have actually + never checked, whether the driver builds in OOo2.0 env also. <p> Download the postgresql module from <a href="postgresql.zip">here</a>, it contains the makefiles to build postgresql client API. You must place the @@ -444,7 +467,7 @@ connectivity/workben/postgresql<br> cvs update -r OO_PQSDBC_0_6_1 connectivity/source/drivers/postgresql connectivity/workben/postgresql </p> - <p>. Build connectivity/source/drivers/postgresql. You will then find a <code>postgresql-sdbc-0.6.1.zip</code> + <p>. Build connectivity/source/drivers/postgresql. You will then find a <code>postgresql-sdbc-0.x.y.zip</code> uno-package in the bin or lib output directory. </p> <h3> @@ -474,7 +497,63 @@ </p> <p> - <h2>Authors</h2> + <a name="changes"><h2>Changes</h2></a> + <ul> + <li>Version 0.7.0<br> + <ul> + <li> raised driver from alpha to beta state ( + no serious bugs have been reported for the earlier versions) + <li> fixed several issues with the former driver version and OO2.0.x ( + problems with table creation, table renaming and crashes in user administration + have been fixed) + <li> data can now be inserted into tables without oids and the addition gets correctly + reflected in the UI. This also holds for tables with auto increment values in the + primary key. In former versions, this was only the case for tables with oids. + However the current solution requires some additional reflection queries, which + makes it a little slow and resource consuming. + <li> fixed a crash when executing native sql (see + <a href="http://qa.openoffice.org/issues/show_bug.cgi?id=52352">i52352</a>). + The bug itself is not fixed though, native sql statements still return empty resultsets only. + <li> adding/deleting users and password change is now supported. Privilege administration + is still not supported. + </ul> + <li>Version 0.6.2<br> + <ul> + <li> Tables created by OOo should now appear immediatly in the list of available + tables e.g. in the beamer window. Structural changes to tables (e.g. the addition + of a column) are now shown after reselecting the table in the beamer window. In + earlier versions, one had to a reconnect on the data source to see the changes. + <li> The driver now supports arrays, however, as the OOo framework itself currently does + not display arrays correctly, they are still reflected as plain strings as in earlier + versions. You can only make use of this new feature by using the driver via the API. + <li> An annoying bug has been fixed, that led to 'Input Error' pop up windows in forms. Under + certain circumstances, the 'not null' column property could be transported transported + incorrectly to OOo. + </ul> + <li>Version 0.6.1<br> + <ul> + <li> Data type handling<br> + Some postgresql data types are not yet correctly suppported by the driver ( + arrays, blobs and 'esoteric types' such as circle, point, etc.). In prior version, + values of this type were not displayed by the driver at all. Now, they are shown in their + default string representation, which also allows modification of the values. + <p> All these types get currently mapped to the OOo Memo type, this is recognizable + in the Edit-table window, where they are grouped together in the type selection box. + </li> + <li> Named parameters in prepared statements (or subform support)<br> + In prior versions, only a '?' as a placeholder in prepared statements was supported, + which did not work out properly with subforms. Now additionally named parameters + (e.g. ':x' or ':myvar') are supported, which allows full subform support. + </li> + </ul> + </li> + </ul> + <h2 id="report">Reporting bugs</h2> + Please read through the <a href="#known_bugs"> known bugs section</a> before reporting bugs. Create an issue + and assign the issue to myself ([EMAIL PROTECTED]).Questions should be raised + in [email protected] mailinglist. Please don't fire usage questions directly at myself. + + <h2 id="author">Authors</h2> The driver has been implemented and is maintained by Joerg Budischewski (<a href="mailto:[EMAIL PROTECTED]">[EMAIL PROTECTED]</a> ) in my spare time. </div> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
