X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=web%2Ffirebird;h=9058c97088ff5073978e7cd9c61ac3536eee947a;hb=66896ebced1d123619a97a75e3fea22cd4cd13a1;hp=c5dd3d55de98968e7410cfbdd0ccacc685b02ab1;hpb=25fc0f820b8f22187d78fb66bf7d35ccd7fe0224;p=mono.git
diff --git a/web/firebird b/web/firebird
index c5dd3d55de9..9058c97088f 100755
--- a/web/firebird
+++ b/web/firebird
@@ -1,33 +1,30 @@
* Firebird and Interbase Data Provider
+ - ADO.NET Data Provider for Firebird and Interbase databases
+
- Does not exist in Mono, but is a separate project
- - Firebird Relational Database is
- an independent project which uses source code based on the Interbase source code released
- by Borland under the Interbase Public License.
+ - The Firebird Relational Database is
+ is an independent project which uses source code based on the Interbase source code released
+ by Borland under the Interbase Public License
- Both the Firebird Relational Database and the Firebird .NET Data Provider can be
- downloaded from here
+ downloaded from here
- The Firebird .NET Data provider has been made
- available by Carlos Guzmán Álvarez (aka "Carlos G.A."), who has also made a
- number of contributions to the OdbcJdbc code.
-
- - Stuff that works:
-
- - CommandBuilder
- - DataReader
- - SchemaTable
- - DataAdapter
- - BatchQuerys
- - ExecuteNonQuery
-
-
+ available by Carlos Guzmán Álvarez (aka "Carlos G.A."), who has also made a
+ number of contributions to the OdbcJdbc code
+
+ - Bugs with Mono or the data provider should be reported
+ in Mono's Bugzilla here. If you
+ do not have Bugzilla user account, it is free
+ and easy to
+ create one here.
-* Current Status
+** Current Status
- Currently, it is able to connect to Firebird and Interbase databases
@@ -37,21 +34,163 @@
provider/driver is written in C# and provides a high-performance native
implementation of the GDS32/API functions. This means that .Net developers
will be able to access Firebird databases without the need of Firebird
- client install.
-
+ client install
- In support of the new module, a new mailing list
firebird-net-provider has
been created. Please use this list for any
- questions that you may have about the provider.
+ questions that you may have about the provider
- - CommandBuilder works
+ - Stuff that works:
+
+ - Currently implemented classes:
+
+ - Connection and Connection Pooling
+ - Command
+ - Transaction
+ - CommandBuilder
+ - DataAdapter
+ - DataReader
+ - Error
+ - ErrorCollection
+ - Exception
+ - Parameter
+ - ParameterCollection
+ - Transaction
+
+
+
+
-* Action Plan
+** Action Plan
- - Get it to work on Mono too
-
- - Connection Pooling.
+ - Bug fixing
+ - Improving API reference documentation
+ - Full testing with Firebird 1.5
+ - Test with Mono ( http://www.go-mono.com )
+
+
+
+ - Support for array datatype
+
+ - Status : Started
+ - Comments: See Interbase API reference documentation
+ - Add new file FbArray.cs for array fields management
+
+
+
+ - Support for Stored Procs calls that have returns values
+
+ - Status : Pending.
+ - Comments: Modify the isc_dsql_prepare method of GDS implementation for
+ allow to return the output parameters.
+
+
+
+ - Implementation of FbClientPermission and FbClientPermissionAttribute
+
+ - Status : Pending
+ - Comments: See if these are really needed for Firebird
+
+
+
+ - Improve Logger implementation
+
+
+
+
+** Testing
+
+
+
+ - Need a working mono and mcs
+
+ - Need access to a Firebird Relational Database or you can download
+ it from here
+
+ - Get the Firebird .NET data provider from here as
+ firebird-net-provider. Make
+ sure the Firebird .NET data provider binary assembly FirebirdSql.Data.Firebird.dll is
+ installed in the same place as the mono class libraries.
+
+ - Has a ConnectionString format:
+
+ "Database=databasefile.gdb;User=user;Password=pass;Dialect=3;Server=hostname"
+
+
+
+
+ - C# Example:
+
+
+ using System;
+ using System.Data;
+ using FirebirdSql.Data.Firebird;
+
+ public class Test
+ {
+ public static void Main(string[] args)
+ {
+ string connectionString =
+ "Database=C:\\PROGRAM FILES\\FIREBIRD\\EXAMPLES\\EMPLOYEE.GDB;" +
+ "User=SYSDBA;" +
+ "Password=masterkey;" +
+ "Dialect=3;" +
+ "Server=localhost";
+ IDbConnection dbcon = new FbConnection(connectionString);
+ dbcon.Open();
+ IDbCommand dbcmd = dbcon.CreateCommand();
+ string sql = "SELECT * FROM employee";
+ dbcmd.CommandText = sql;
+ IDataReader reader = dbcmd.ExecuteReader();
+ while(reader.Read()) {
+ object dataValue = myReader.GetValue(0);
+ string sValue = dataValue.ToString();
+ Console.WriteLine("Value: " + sValue);
+ }
+ // clean up
+ reader.Close();
+ reader = null;
+ dbcmd.Dispose();
+ dbcmd = null;
+ dbcon.Close();
+ dbcon = null;
+ }
+ }
+
+
+ - Building C# Example:
+
+ - Save the example to a file, such as, TestExample.cs
+ - Build on Linux:
+
+ mcs TestExample.cs -r System.Data.dll \
+ -r FirebirdSql.Data.Firebird.dll
+
+
+ - Build on Windows via Cygwin:
+
+ mono C:/cygwin/home/MyHome/mono/install/bin/mcs.exe \
+ TestExample.cs \
+ -lib:C:/cygwin/home/MyHome/mono/install/lib \
+ -r System.Data.dll -r FirebirdSql.Data.Firebird.dll
+
+
+
+
+ - Running the Example:
+
+mono TestExample.exe
+
+
+
+
+