Looking for a Firebird book?

classic Classic list List threaded Threaded
40 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Looking for a Firebird book?

Graeme Geldenhuys-2
Hi,

Anybody know of a Firebird book I can purchase? Language needs to be in English.

I'm looking for something that covers the SQL syntax, DB tuning and
importantly, security.

The latter is one major issue I have with Firebird. It's security
model is very different to MS SQL Server, and I'm struggling to find
information on how I should implement my applications with Firebird
security.


Regards,
  - Graeme -


_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Damien Gerard

Le Apr 9, 2008 à 9:02 AM, Graeme Geldenhuys a écrit :

> Hi,
>
> Anybody know of a Firebird book I can purchase? Language needs to be  
> in English.
>
> I'm looking for something that covers the SQL syntax, DB tuning and
> importantly, security.
>
> The latter is one major issue I have with Firebird. It's security
> model is very different to MS SQL Server, and I'm struggling to find
> information on how I should implement my applications with Firebird
> security.


Does their documentation not suitable to you ?

 From MSSQL To Firefird
http://www.firebirdsql.org/manual/migration-mssql.html
Books
http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_publications


--
Damien Gerard
[hidden email]

"Intelligence is 10 million rules."
    -- Douglas Lenat





_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Michael Van Canneyt
In reply to this post by Graeme Geldenhuys-2


On Wed, 9 Apr 2008, Graeme Geldenhuys wrote:

> Hi,
>
> Anybody know of a Firebird book I can purchase? Language needs to be in English.
>
> I'm looking for something that covers the SQL syntax, DB tuning and
> importantly, security.
>
> The latter is one major issue I have with Firebird. It's security
> model is very different to MS SQL Server, and I'm struggling to find
> information on how I should implement my applications with Firebird
> security.

What's wrong with the firebird book by helen borrie ?

http://www.ibphoenix.com/

Michael.
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Graeme Geldenhuys-2
On 09/04/2008, Michael Van Canneyt <[hidden email]> wrote:
>
> What's wrong with the firebird book by helen borrie ?
>
>  http://www.ibphoenix.com/

I only found their book section now... :-)
Most books are in Portuguese, German (including yours <wink>)...  I'm
trying to find a Table of Contents for the 'Firebird Book', to see
what it covers. I'll google some more. Pity the eBook version is so
outdated with a terrible layout (as mentioned on there website). That
means I'll have to wait 3-4 weeks for the hard-copy (yes the postal
service to South Africa takes forever) as non our our book stores
actually have stock of computer books, everything is on order from USA
or UK.


Regards,
  - Graeme -


_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Graeme Geldenhuys-2
In reply to this post by Damien Gerard
On 09/04/2008, Damien Gerard <[hidden email]> wrote:
>
>  Does their documentation not suitable to you ?
>
>  From MSSQL To Firefird
>  http://www.firebirdsql.org/manual/migration-mssql.html

I did find that, but it doesn't cover security access from
applications to Firebird.

eg:
 * MSSQL has server access, database access and table access.
 * Firebird has roles, which I'm trying to figure out now, but it's
still hard to find good information. From what I can see is that if
you have a username and password to the firebird server, you can
access all connected databases! Weird? Our applications use login
prompts at startup. At the moment we simply hard-code a firebird
username and password in the application to create the connection,
then access our own 'users' table to manage access to our application.
Is that how everybody else does it with Firebird?


>  Books
> http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_publications

Thanks, I only found that link a little while ago.


Regards,
  - Graeme -


_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Michael Van Canneyt


On Wed, 9 Apr 2008, Graeme Geldenhuys wrote:

> On 09/04/2008, Damien Gerard <[hidden email]> wrote:
> >
> >  Does their documentation not suitable to you ?
> >
> >  From MSSQL To Firefird
> >  http://www.firebirdsql.org/manual/migration-mssql.html
>
> I did find that, but it doesn't cover security access from
> applications to Firebird.
>
> eg:
>  * MSSQL has server access, database access and table access.
>  * Firebird has roles, which I'm trying to figure out now, but it's
> still hard to find good information. From what I can see is that if
> you have a username and password to the firebird server, you can
> access all connected databases!

You can access them, i.e. connect to the database, but unless the
database owner granted you access to some tables, you can't see
anything.

> Weird? Our applications use login
> prompts at startup. At the moment we simply hard-code a firebird
> username and password in the application to create the connection,
> then access our own 'users' table to manage access to our application.
> Is that how everybody else does it with Firebird?

I do it like that too, because the security model of any RDBM is ridiculous,
firebird is no exception.

Security must be specified at a functional level, never at the table level.

I tried once at the table level, and ended up giving everybody access to
everything, because it's relational and everyone at some point ended up
writing in some table. So I dumped that, and implemented a separate security
mechanism that looks at functions - what is a person allowed to do ?

What data he needs to perform these functions is then irrelevant -
worse even, it changes over time.

Ever since, I have no more worries over security.

Michael.
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Damien Gerard
In reply to this post by Graeme Geldenhuys-2

Le Apr 9, 2008 à 10:47 AM, Graeme Geldenhuys a écrit :

> On 09/04/2008, Damien Gerard <[hidden email]> wrote:
>>
>> Does their documentation not suitable to you ?
>>
>> From MSSQL To Firefird
>> http://www.firebirdsql.org/manual/migration-mssql.html
>
> I did find that, but it doesn't cover security access from
> applications to Firebird.
>
> eg:
> * MSSQL has server access, database access and table access.
> * Firebird has roles, which I'm trying to figure out now, but it's
> still hard to find good information. From what I can see is that if
> you have a username and password to the firebird server, you can
> access all connected databases! Weird? Our applications use login
> prompts at startup. At the moment we simply hard-code a firebird
> username and password in the application to create the connection,
> then access our own 'users' table to manage access to our application.
> Is that how everybody else does it with Firebird?

If I remember well (of an old time), each database uses its own file.  
But it may have changed since.

You should read this :
http://www.firebirdsql.org/manual/qsg2-config.html

and this :

http://www.firebirdfaq.org/cat7/

May be it could help



>
>> Books
>> http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_publications
>
> Thanks, I only found that link a little while ago.
>
>
> Regards,
>  - Graeme -
>
>
> _______________________________________________
> fpGUI - a cross-platform Free Pascal GUI toolkit
> http://opensoft.homeip.net/fpgui/
> _______________________________________________
> fpc-pascal maillist  -  [hidden email]
> http://lists.freepascal.org/mailman/listinfo/fpc-pascal



--
Damien Gerard
[hidden email]

"Intelligence is 10 million rules."
    -- Douglas Lenat





_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Matt Emson
In reply to this post by Graeme Geldenhuys-2
Graeme Geldenhuys wrote:

Any documentation for Interbase 5.5 or 6.0 should be fairly helpful.

TBH, the way Firebird did security last time I looked, was pretty
similar to the way SQL Server does it if you don't use integrated
security. Adding users was hell, but adding grants etc was pretty simple.

The bigger issue with Firebird was that it was so unstable (but then, so
is Interbase) and required a lot of fiddling to stop it  misbehaving
(some of which might have been the archaic components and poor code I
inherited.) I won't vent my spleen about Interbase/Firebird, except to
say: it works really well till you start writing UDF libraries in
Pascal. The Free UDF lib is buggy and also there are a number of subtly
different versions floating around and no real version control. It has
some nice features (Stored Procedures and the "for select ... suspend"
mechanism) but I would never use Interbase in production again and would
need to see pretty conclusive proof that Firebird had improved greatly.
I did read they now have a PL/SQL emulation layer... that sounds really
nice.

M

> Hi,
>
> Anybody know of a Firebird book I can purchase? Language needs to be in English.
>
> I'm looking for something that covers the SQL syntax, DB tuning and
> importantly, security.
>
> The latter is one major issue I have with Firebird. It's security
> model is very different to MS SQL Server, and I'm struggling to find
> information on how I should implement my applications with Firebird
> security.
>
>
> Regards,
>   - Graeme -
>
>
> _______________________________________________
> fpGUI - a cross-platform Free Pascal GUI toolkit
> http://opensoft.homeip.net/fpgui/
> _______________________________________________
> fpc-pascal maillist  -  [hidden email]
> http://lists.freepascal.org/mailman/listinfo/fpc-pascal
>
>  

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Michael Van Canneyt


On Wed, 9 Apr 2008, Matt Emson wrote:

> Graeme Geldenhuys wrote:
>
> Any documentation for Interbase 5.5 or 6.0 should be fairly helpful.
>
> TBH, the way Firebird did security last time I looked, was pretty similar to
> the way SQL Server does it if you don't use integrated security. Adding users
> was hell, but adding grants etc was pretty simple.
>
> The bigger issue with Firebird was that it was so unstable (but then, so is
> Interbase) and required a lot of fiddling to stop it  misbehaving (some of
> which might have been the archaic components and poor code I inherited.) I
> won't vent my spleen about Interbase/Firebird, except to say: it works really
> well till you start writing UDF libraries in Pascal. The Free UDF lib is buggy
> and also there are a number of subtly different versions floating around and
> no real version control. It has some nice features (Stored Procedures and the
> "for select ... suspend" mechanism) but I would never use Interbase in
> production again and would need to see pretty conclusive proof that Firebird
> had improved greatly. I did read they now have a PL/SQL emulation layer...
> that sounds really nice.

Strange that you say this. We have firebird databases in production at
more than a thousand sites, ranging from simple desktop installations to
sites with more than 500 simultaneous users. Firebird didn't fail on
us once.

I must say that we don't use UDFs at all, except the pretty trivial
BIN_AND and BIN_OR.

The only negative thing I can say about Firebird is that it can produce
a corrupt backup file.

Michael.
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Matt Emson
In reply to this post by Graeme Geldenhuys-2
Graeme Geldenhuys wrote:
> ... At the moment we simply hard-code a firebird
> username and password in the application to create the connection,
> then access our own 'users' table to manage access to our application.
> Is that how everybody else does it with Firebird?

Yes. I've seen that in a number of IB/FB apps. It is fairly common. But,
also common to create a non SYSDBA user too for that purpose. Be careful
about grants.. if you have two users, IB and FB management tools tend to
grant for that specific user by default. If someone logs on as SYSDBA,
I've seen mad things where people have made random grants for various
users because of this.

The EMS tools are pretty cool. We used to use their manager, forget what
it is called now. I did use Marathon for a while, but it was quite buggy
and unstable.
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Graeme Geldenhuys-2
In reply to this post by Matt Emson
Matt Emson wrote:
> The bigger issue with Firebird was that it was so unstable (but then, so
> is Interbase) and required a lot of fiddling to stop it  misbehaving


We have not detected any stability issues with Firebird in the last
three years that we used it. It's a simply deploy and forget RDMS.
Pretty cool.

Then again, the same as what Michael said. We do not use any UDF
libraries at all. Same goes for Store Procedures - but that's our design
choice to be flexible with DB backends if the need arises. Plus business
rules belong in the Business Objects where they can be unit tested (but
that's a whole other debate).  :-)


Regards,
   - Graeme -


_______________________________________________________
fpGUI - a cross-platform GUI toolkit using Free Pascal
http://opensoft.homeip.net/fpgui/


_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Graeme Geldenhuys-2
In reply to this post by Michael Van Canneyt
Michael Van Canneyt wrote:
>
> I do it like that too, because the security model of any RDBM is ridiculous,
> firebird is no exception.
>
> Security must be specified at a functional level, never at the table level.


I'm glad we are not the only ones that think like that. :-)


> I tried once at the table level, and ended up giving everybody access to
> everything, because it's relational and everyone at some point ended up
> writing in some table. So I dumped that, and implemented a separate security
> mechanism that looks at functions - what is a person allowed to do ?

We are moving over to exactly the same process. Security moves over to
the application (or middle-tier) level. Based on the users security
level, things like menu items get disabled or hidden.

I'm glad we are heading in the right direction then... ;-)

Regards,
   - Graeme -


_______________________________________________________
fpGUI - a cross-platform GUI toolkit using Free Pascal
http://opensoft.homeip.net/fpgui/


_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Graeme Geldenhuys-2
In reply to this post by Matt Emson
Matt Emson wrote:
>
> Yes. I've seen that in a number of IB/FB apps. It is fairly common. But,

Excellent!

> also common to create a non SYSDBA user too for that purpose. Be careful

Yes, we do not use the SYSDBA account in our applications. Each DB has
it's own 'owner' account.


Regards,
   - Graeme -


_______________________________________________________
fpGUI - a cross-platform GUI toolkit using Free Pascal
http://opensoft.homeip.net/fpgui/


_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Marco van de Voort
In reply to this post by Michael Van Canneyt
> On Wed, 9 Apr 2008, Matt Emson wrote:
>
> The only negative thing I can say about Firebird is that it can produce
> a corrupt backup file.

IIRC Mass insertion could bring down the db (slow to an effective DOS to
other users) unless you commit the transaction every 10000 items or so.
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Matt Emson
In reply to this post by Michael Van Canneyt
Michael Van Canneyt wrote:
> Strange that you say this. We have firebird databases in production at
> more than a thousand sites, ranging from simple desktop installations to
> sites with more than 500 simultaneous users. Firebird didn't fail on
> us once.

Interbase 7.1 and 7.5 were very bad. Interbase 6 was poor.

Firebird 1.x was bad. We stopped using Firebird when the compatibility
was lost. Like I said, Firebird was bad last time I used it - Interbase
was awful in the 2 and a half years I used it. Guilt by association? ;-)

UDF was biggest issue. The database relied heavily on using custom UDF
functions, as well as the greater amount of FreeUDFLib. It also tried to
do *everything* in stored procs, which is a really bad idea IMHO. A
server process would have solved a lot of the instanility, which were
caused mostly by implied logical second tier issues due to the design
mentioned above.

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

RE: Looking for a Firebird book?

Codebue Fabio - P-Soft
Take a look to a new Firebird 2.1 next month and probably you will change
your idea about it...
UDF: FreeAdHocUDF, a lot of internal SQL function...
and if you wanna a good book www.ibphoenix.com Helen Borrie book... a MUST!


Codebue Fabio
.-----------------------------.
  _ \       __|       _||
  __/____|\__ \  _ \  _| _|
 _|       ____/\___/_| \__|

P-Soft di Codebue Fabio & C. sas
via B.Storti, 19
24060 - Chiuduno - BG
Italy
Phone: +39.030.839435
Fax: +39.030.5100306
Mobile: +39.348.3515786
.-----------------------------.
Web  : www.p-soft.biz
EMail: [hidden email]  

-----Original Message-----
From: [hidden email]
[mailto:[hidden email]] On Behalf Of Matt Emson
Sent: Wednesday, April 09, 2008 12:48 PM
To: FPC-Pascal users discussions
Subject: Re: [fpc-pascal] Looking for a Firebird book?

Michael Van Canneyt wrote:
> Strange that you say this. We have firebird databases in production at
> more than a thousand sites, ranging from simple desktop installations to
> sites with more than 500 simultaneous users. Firebird didn't fail on
> us once.

Interbase 7.1 and 7.5 were very bad. Interbase 6 was poor.

Firebird 1.x was bad. We stopped using Firebird when the compatibility
was lost. Like I said, Firebird was bad last time I used it - Interbase
was awful in the 2 and a half years I used it. Guilt by association? ;-)

UDF was biggest issue. The database relied heavily on using custom UDF
functions, as well as the greater amount of FreeUDFLib. It also tried to
do *everything* in stored procs, which is a really bad idea IMHO. A
server process would have solved a lot of the instanility, which were
caused mostly by implied logical second tier issues due to the design
mentioned above.

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Matt Emson
In reply to this post by Marco van de Voort
Marco van de Voort wrote:
>> On Wed, 9 Apr 2008, Matt Emson wrote:
>>
>> The only negative thing I can say about Firebird is that it can produce
>> a corrupt backup file.
>>    
>
> IIRC Mass insertion could bring down the db (slow to an effective DOS to
> other users) unless you commit the transaction every 10000 items or so.

Yep, we definitely saw that. We ended up going a little insane with
committing transaction (bad original design relied on keeping
transactions open slightly too often.) Even so, the Delphi controls we
used (Delphi 5, whatever the latest IBExpress Borland shipped) were
appalingly buggy wrt transactional stuff. I always liked the other ones,
IBObjects, personally - even if they were quite odd. IBExpress could not
handle the server disconnecting - totally unrecoverable. IBO did handle
it quite well.

M
_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Graeme Geldenhuys-2
In reply to this post by Graeme Geldenhuys-2
Damien Gerard wrote:
> However needs are not the same so I wanted to know when it would be a
> good choice to use Firebird if someone asks me.

Considering we are still using MS Access (1) which currently handles
20-40 connections - any upgrade to a 'real' database server is a big
plus for us developers! :-)

Easy deployment and low maintenances is huge in our case. We deploy in
franchises where we still need to explain to them when to left click or
right click the mouse. :-(


Regards,
   - Graeme -

(1):  until the next release of our product which is Q3 this year

_______________________________________________________
fpGUI - a cross-platform GUI toolkit using Free Pascal
http://opensoft.homeip.net/fpgui/


_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Tom York
In reply to this post by Codebue Fabio - P-Soft
On Wed, Apr 9, 2008 at 5:53 AM, Codebue Fabio - P-Soft <[hidden email]> wrote:
Take a look to a new Firebird 2.1 next month and probably you will change
your idea about it...
UDF: FreeAdHocUDF, a lot of internal SQL function...
and if you wanna a good book www.ibphoenix.com Helen Borrie book... a MUST!


Will 2.1 have a true auto increment attribute?  A boolean field perhaps?  Those are the only things that I miss when using FB.  I am aware that all of these issues can be resolved by using generators/triggers and a validating domain.  That is what I like about MySQL, MSSQL and others that are missing from FB.

Do not misunderstand though.  I've used FB for 8+ years with great success in embedded, small and large transactional systems without flaw.  Never had a corrupt DB.  AFAIK, never had a corrupt backup.  Most of the time, I deploy FB on Linux servers and backup using gbak.

Tom

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Reply | Threaded
Open this post in threaded view
|

Re: Looking for a Firebird book?

Joost van der Sluis
In reply to this post by Graeme Geldenhuys-2
Op woensdag 09-04-2008 om 09:02 uur [tijdzone +0200], schreef Graeme
Geldenhuys:

> Hi,
>
> Anybody know of a Firebird book I can purchase? Language needs to be in English.
>
> I'm looking for something that covers the SQL syntax, DB tuning and
> importantly, security.
>
> The latter is one major issue I have with Firebird. It's security
> model is very different to MS SQL Server, and I'm struggling to find
> information on how I should implement my applications with Firebird
> security.

I have this book: http://ibexpert.biz/ibe/index.php?n=Main.IBExpertBook

And when I bought it I had two options: printed or PDF. So prabably
that's suefull for you too if you don't trust the postmen

It's based on IBExpert but also contains a full sql-manual.

Joost

_______________________________________________
fpc-pascal maillist  -  [hidden email]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal
12