X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=web%2Ffirebird;h=9058c97088ff5073978e7cd9c61ac3536eee947a;hb=66896ebced1d123619a97a75e3fea22cd4cd13a1;hp=035e229f541e41aba0736208d0e27654ef987d68;hpb=451af388d71c4393a779fd30ea01a3264084961b;p=mono.git
diff --git a/web/firebird b/web/firebird
index 035e229f541..9058c97088f 100755
--- a/web/firebird
+++ b/web/firebird
@@ -1,37 +1,196 @@
* Firebird and Interbase Data Provider
- - Does not exist in Mono, but is a separate project
+
- ADO.NET Data Provider for Firebird and Interbase databases
+
+ - Does not exist in Mono, but is a separate project
+
+ - 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
- - Firebird and Interbase
- Data Provider for Microsoft .NET and Mono
+
- Both the Firebird Relational Database and the Firebird .NET Data Provider can be
+ 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
+
+ - 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.
- - 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.
-* Current Status
+** Current Status
- Currently, it is able to connect to Firebird and Interbase databases
- and execute commands
+ and execute commands
- The new data
- 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. 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. This 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.
+ 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
+
+ - 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
+
+ - 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
-
-
- TODO
+
- 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
+
+
+
+
+