 |
|
 |
Since the password for the Firebird database is not stored in the db there is no
point of doing that. If someone copies your db she/he will be able to open it with
the default sysdba/masterkey. The user/password has a meaning and point when remote
users are connecting to a Firebird server (when you can't get physical access to the db).
I think this is how it works on Fb.
|
|
|
|
 |
|
 |
Do you have any suggestions for database protection?
So nobody can easily open the firebird database file.
Thanks,
|
|
|
|
 |
|
 |
Firebird Defaults: User = "SYSDBA" Pass = "masterkey"
You can add new users or change password sysadmin user in
+ With Firebird 1.x: security.fdb
+ With Firebird 2.x: secutity2.fdb
You can find them in Firebird Folder.
Best regards
|
|
|
|
 |
|
 |
HUm... I was trying to
string DbFilePath = @"D:\...\SampleData.FDB";
string FullConnString = this.connectionString + DbFilePath;
// FbConnection.CreateDatabase(FullConnString);
FbConnection conn = new FbConnection(FullConnString);
conn.Open();
string AlterPwdCmdSQL = "alter user SYSDBA password 'xyzabc123'";
FbCommand AlterPwdCmd = conn.CreateCommand();
AlterPwdCmd.CommandText = AlterPwdCmdSQL;
AlterPwdCmd.ExecuteNonQuery();
Upon ExecuteNonQuery -
+ ex {"unsuccessful metadata update\r\nI/O error during \"CreateFile (open)\" operation for file \"C:\\...\\EMBEDDEDFIREBIRDEXAMPLE\\BIN\\X64\\DEBUG\\SECURITY2.FDB\"\r\nError while trying to open file"} FirebirdSql.Data.Common.IscException
I'm not sure how to ALTER USER and change SYSDBA pwd programmatically... (For Embedded Firebird, not standalone server), Anyone any clue?
Seems like I'm not the first person running into this problem:
http://tech.groups.yahoo.com/group/firebird-support/message/83729[^]
Now, quoting here[^]
The Windows Embedded Server is a Superserver engine plus client rolled into one library, called fbembed.dll. It is available as a separate download package. The embedded server (introduced with Firebird 1.5) was specifically designed to facilitate deployment of applications that ship with a Firebird server included. Installation is just a matter of unpacking the DLL and a few other files to the desired location. The security database is not used at all: anyone can connect to any database, as long as the user running the application has filesystem-level access rights to the database(s) in question... The embedded server has no facility to accept any network connections. Only true local access is possible, with a connect string that doesn't contain a host name (not even localhost).
Sounds like there's nothing you can do to secure an embedded Firebird - you can only secure the Windows machine/OS on which the Firebird db resides.
REF: Firebird Quickstart Guide (Scroll to page 16)[^]
dev
modified 15 May '12.
|
|
|
|
 |
|
 |
Hi;
I need some help connecting to a regular 1.5 Firebird database using VB.Net. Here's a sample of what I have and the error I'm getting. (I should point that I'm totally new to VB.Net)
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim myConnection As FbConnection
Dim myCommand As FbCommand
.....
The errors tell me that the FbConnection and FbCommand are undefined types. I have FirebirdClient-2.0 installed. I'm obviously leaving out whatever defines FbConnection and FbCommand, however I have know idea what I'm missing and could use a bit of assistance.
Thanks
|
|
|
|
 |
|
|
 |
|
 |
I installed the demo source for this article,
Embedded Firebird: Full-Featured Embedded Database with 2 MB Runtime
By Dan Letecky.
when I build the application I get this error
Error 1 The type or namespace name 'FirebirdSql' could not be found (are you missing a using directive or an assembly reference?) C:\firebirdASP\EmbeddedFirebirdExample\Form1.cs 7 7 EmbeddedFirebirdExample
I installed the ado.net provider, the using directive is there, and the assembly reference
what am I missing?? in visual studio 2005, how should I check if the provider is properly installed?
is there another demo code somewhere with detailled steps on installing the provider?
I am new at this, and probably missing a step
can somebody please help
Daniel
|
|
|
|
 |
|
 |
You need to install the Firebird.Net provider too.
Usually it installs to C:\Program Files\FirebirdNETProvider1.7
Then you need to add a reference to the "FirebirdSql.Data.Firebird.dll" file.
It is just like using any other assembly.
|
|
|
|
 |
|
 |
Thanks for the reply
isn't
FireBirdSQL.Data.FirebirdClient not the provider for .net 2.0?
or I need to install both?
if not what is it?
Daniel
|
|
|
|
 |
|
 |
When you're adding the reference you will see something similar "Firebird .Net Data Provider" after you installed the Firebird .Net provider.
newgendb wrote: FireBirdSQL.Data.FirebirdClient not the provider for .net 2.0?
or I need to install both?
From where you got that ?
|
|
|
|
 |
|
 |
thanks
from here, it just confuse me
http://firebird.sourceforge.net/index.php?op=files&id=netprovider
Daniel
|
|
|
|
 |
|
 |
After you install from there you just need to add the reference to Firebird provider to the project.
|
|
|
|
 |
|
 |
I didn't know firebird was this good. I always thought it was one of those legacy databases that you shouldn't use anymore in the modern .NET world, but I guess I was wrong.
Having an embedded database engine makes life a lot easier when having to create a setup for an application that makes use of the engine.
WM
|
|
|
|
 |
|
 |
This demo program works on all computer but my program doesnt work any other computer. It gıves this error: Value cannot be null
parameter name keyword
Why it gives this error? there is an already embedded database and I just want to connect to it. I connect it on my comp but not in any other comp.
Please Help
Thanks
|
|
|
|
 |
|
 |
Don't know that anybody answered this, but i was trying to get this error, and did when the database i wanted to connect to was NOT in the same directory as the .exe
Just thought i'd throw that out there...
|
|
|
|
 |
|
 |
Dan,
I saw this post[^] regarding the use of FireBird in ASP.NET applications. Does this limitation still stand?
-HoyaSaxa93
|
|
|
|
 |
|
 |
Hi,
If there a way to synchronize between two firebird databases assuming that both databases have the same structure and one database has more rows (data rows in its tables) than the other ?
I'm looking for a way to do this without an additional software.
Gilad.
|
|
|
|
 |
|
 |
To be honest that shouldn't be to hard for you to do in a simple function.
"SELECT defaultkeyname FROM database"
Replacing defaultkeyname with the primary key for that table, and database with your database name.
From there, for comparing, you can either
a) pull the other database list the same way, and keep track of which items occur in one and not the other, then send a command to pull each entry from the database that has it and update the one that doesn't...
or
b) for each item you pulled with your original list,
"SELECT otherdatabaseitem FROM database WHERE defaultkeyname = 'defaultkeyname'"
If it returns something, the other database has it, if it doesn't return something it doesn't have it and you can send the information to that database to sync it.
Then do the same thing for the other database.
One takes alot more commands sent to the database, and the other takes more brainwork on your end.
Either way, you don't have to BUY software to sync them, but i don't know that there's a built in function...
|
|
|
|
 |
|
 |
Dan,
It appears that you’re quite well versed in Firebird, what are the differences between Firebird and SQLite? Or are they comparable?
I have an up coming small db project and would like to try something new…
Thanks for your time...
|
|
|
|
 |
|
 |
SQLite is much more lightweight. What would be my list to consider:
- SQLite is file-system based (it provides much worse concurrency when under load because it locks the database)
- SQLite doesn't support stored procedures (essential for clean database design IMHO)
- Firebird ADO.NET provider has an excellent support provided by its author, Carlos Guzmán Álvarez.
- Firebird allows you to reuse your code and knowledge for both client-server and embedded scenarios.
While SQLite is a replacement for XML files, parsing plain text, etc. Firebird is rather a replacement for something like MSDE.
--
My sites for smart .NET developers:
DayPilot - Open-source Outlook-like calendar control for ASP.NET
DotLucene - The fastest open source fulltext search engine for .NET
Seekafile Server - Flexible open-source search server
DotNetFirebird - Using Firebird SQL in .NET
|
|
|
|
 |
|
 |
Cool, Thanks for the information.
I wasn't aware SQLites scope was so small.
|
|
|
|
 |
|
 |
Is the embedded server ability available on Linux?
|
|
|
|
 |
|
|
 |
|
 |
Thank you for your clarification, it helped alot.
|
|
|
|
 |
|
 |
Hi,
I want to use an imbedded DB technology
from an old application written in C++ MFC using ODBC.
The application is running over win2003
Can I use Firebird in my case,
Also the application is muli-thread so that I should also
my connection (from within the same process) to the database ?
Are you aware to the performance of Firebird comparing to other in-memory technologies like timesTen and AntsDB ?
Many thanks
|
|
|
|
 |