diff options
author | Daniel Morgan <monodanmorg@yahoo.com> | 2003-01-29 16:09:12 +0300 |
---|---|---|
committer | Daniel Morgan <monodanmorg@yahoo.com> | 2003-01-29 16:09:12 +0300 |
commit | af653b483b9bf8247c85ec0fcfa984e082d1718d (patch) | |
tree | c4c29c94b57896f0e832097619cd8a94002d0cd5 /web/postgresql | |
parent | b621d08f4a418054075e53c74cef4a487cba857b (diff) |
2003-01-29 Daniel Morgan <danmorg@sc.rr.com>
* doc/postgresql
* doc/mysql
* doc/ado-net: updates to web pages
* man/sqlsharp.1: update to man page
svn path=/trunk/mono/; revision=11010
Diffstat (limited to 'web/postgresql')
-rw-r--r-- | web/postgresql | 127 |
1 files changed, 100 insertions, 27 deletions
diff --git a/web/postgresql b/web/postgresql index 5dbeb6369d2..ef1bf1e9e72 100644 --- a/web/postgresql +++ b/web/postgresql @@ -1,30 +1,79 @@ * PostgreSQL Data Provider + There are two ADO.NET data providers for <a href="http://www.postgresql.org/">PostgreSQL</a> in Mono: + <ul> - <li>Exists in namespace Mono.Data.PostgreSql and assembly Mono.Data.PostgreSql</li> + + <li><a href="http://gborg.postgresql.org/project/npgsql/projdisplay.php">Npgsql</a> + <ul> + <li>a .NET Managed Data Provider for PostgreSQL + + <li>Written in 100% C#</li> + + <li>does not require a client library</li> + + <li>works on Mono and Microsoft .NET</li> + + <li>created by Francisco Figueiredo jr. and has many developers working on it + + <li>works in the SQL# (command-line and GTK# GUI versions)</li> + + <li>in namespace Npgsql and assembly Npgsql and is found in mcs + at mcs/class/Npgsql</li> + </ul> + </li> - <li>Is a Mono Data Provider for the <a href="http://www.postgresql.org/">PostgreSQL</a> - client/server database management system.</li> + <li>Mono.Data.PostgreSQL (deprecated) + <ul> + <li>Deprecated in favor of Npgsql</li> + + <li>Exists in namespace Mono.Data.PostgreSql and assembly Mono.Data.PostgreSql</li> - <li>Written in C# and has C# bindings to the PostgreSQL C Client library pq.dll on Windows - and libpq.so on Linux.</li> + <li>Is a Mono Data Provider for the <a href="http://www.postgresql.org/">PostgreSQL</a> + client/server database management system.</li> - <li>Alternative to the PostgreSQL provider in Mono: - <ul> - <li><a href="http://gborg.postgresql.org/project/npgsql/projdisplay.php">Npgsql</a> - is a Managed PostgreSQL provider written in 100% C#, does not require a client library, - and works on Microsoft .NET and Mono. Npgsql providers works in the SQL# command-line version - and the GTK# version. - </li> + <li>Written in C# and has C# bindings to the PostgreSQL C Client library pq.dll on Windows + and libpq.so on Linux.</li> </ul> </li> - - <li>See Testing for both Mono's Mono.Data.PostgreSqlClient and Npgsql.</li> + </ul> + Below, see separate Testing sections for Npgsql and Mono.Data.PostgreSqlClient. + ** Current Status <ul> + <li>Npgsql + <ul> + <li>Builds and Runs on both Microsoft .NET and Mono.</li> + <li>Works using SQL# (command-line and GTK# versions)</li> + <li>You can send insert, update, delete queries
+ through NpgsqlCommand.ExecuteNonQuery() method.</li>
+ <li>You can send queries like, select count(*) from table, select version()
+ with NpgsqlCommand.ExecuteScalar() method.</li>
+ <li>There is logging support. (Thanks Dave Page)
+ To use it, place code like that in your program:</li>
+
+<pre>
+ // Enable logging.
+ NpgsqlEventLog.Level = LogLevel.Debug; // LogLevel.
+ NpgsqlEventLog.LogName = "NpgsqlTests.LogFile"; // LogFile.
+</pre>
+
+ <li>You can use Npgsql with Mono (Thanks Kristis Makris). It is not working perfectly.</li>
+ <li>There is a winforms test suite (Thanks Dave Page).</li>
+ <li>Clearer code in NpgsqlConnection removing *magic* numbers and constants. (Thanks Kristis Makris)</li>
+ <li>Better support of ODBC-like ConnectionString in NpgsqlConnection (Thanks Dave Page)</li>
+ <li>Thanks Ulrich Sprick for all discussion and ideas.</li>
+ + </ul> + </li> + <li>Mono.Data.PostgreSQL status + <ul> + + <li>Deprecated in favor of Npgsql</li> + <li>We are able to do simple CREATE TABLE, DROP TABLE, UPDATE, INSERT, and DELETE SQL commands using the ExecuteNonQuery method in PgSqlCommand.</li> @@ -69,9 +118,6 @@ Input Parameters are currently supported. Output, Input/Output, and Return parameters still need to be done.</li> - <li>A lot of functionality in System.Data is missing, but the - infrastructure is starting to come together.</li> - <li>A lot of Exceptions need to be thrown for various exceptions. However, PgSqlException, PgSqlErrorCollection, and PgSqlError have been partially implemented.</li> @@ -82,21 +128,48 @@ See the test mcs/class/System.Data/Test/TestSqlDataAdapter.cs to see it in action.</li> <li>Works in the SQL# command-line version - and the GTK# version.</li> + and the GTK# version on Linux. It only works in SQL# command-line version + on Windows.</li> + + </ul> + </li> + </ul> ** Action Plan + <ul> + <li>More testing and fixing bugs</li> + + <li>Better error handling</li> + + <li>More Data Types to use</li> + + <li>Any features for Npgsql should be implemented in Npgsql's main cvs repository at + gborg.postgresql.org. Most bugs should be fixed in gborg.postgresql.org's cvs. + Only bugs neccessary for building and running of Npgsql on Mono can be done in Mono cvs, + but once applied they should be sent to Npgsql's mailing list + at gborg.postgresql.org for inclusion into cvs there. Whenever there is + a release of Npgsql (determined by Francisco Figueiredo jr. or a release + of Mono (determined by Miguel de Icaza), then the Npgsql source + in gborg.postgresql.org's cvs will be used to update the Npgsql source in + Mono's cvs. + </li> + + <li>Mono.Data.PostgreSqlClient even though deprecated can still + accept bug fixes. This is because other areas, such as, ASP.NET examples + may still use this provider.</li> + + <li>Add any missing functionality to Npgsql. If this funtionality works on + .NET but not on Mono, implement the missing features or fix the bugs in Mono</li> - <p>More testing and fixing bugs... - - <p>Eventually replace the PostgreSQL data provider in Mono - with <a href="http://gborg.postgresql.org/project/npgsql/projdisplay.php">Npgsql</a>. - Npgsql is a .Net Data Provider for PostgreSQL which implements - the <a href="http://developer.postgresql.org/docs/postgres/protocol.html">PostgreSQL Frontend/Backend Protocol</a>. - Npgsql is implemented in 100% C#. This provider was created by Francisco Figueiredo jr. - and has many programmers developing the provider. + <li>Npgsql has replaced Mono.Data.PostgreSqlClient as the provider of + choice to use. However, Mono.Data.PostgreSqlClient will remain in a + deprecated state until nobody uses it anymore - then it can be removed</li> + + <li>Implement more of PostgreSQL 7.3 features in Npgsql</li> + </ul> -** Testing Mono's Mono.Data.PostgreSqlClient +** Testing Mono.Data.PostgreSqlClient <ul> * <p>In order to test Mono.Data.PostgreSqlClient, you will need to have |