Firebird   database that does not burn your data
Upcoming SlideShare
Loading in...5
×
 

Firebird database that does not burn your data

on

  • 2,823 views

A short lecture to display some key features of Firebird SQL

A short lecture to display some key features of Firebird SQL

Statistics

Views

Total Views
2,823
Views on SlideShare
2,486
Embed Views
337

Actions

Likes
1
Downloads
14
Comments
2

7 Embeds 337

http://idkn.wordpress.com 245
http://blogs.hamakor.org.il 55
http://www.redditmedia.com 19
http://www.linkedin.com 10
http://nplanet.hamakor.org.il 4
http://translate.googleusercontent.com 3
http://www.copyscape.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • Other historic facts

    http://www.ibphoenix.com/resources/documents/history/doc_293
    http://www.ibphoenix.com/resources/documents/history/doc_292
    Are you sure you want to
    Your message goes here
    Processing…
  • The source code that was released was 6.0 not 6.1
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Firebird   database that does not burn your data Firebird database that does not burn your data Presentation Transcript

  • Firebird a database that does not burn your data
  • History on one foot
    • Created by Jim Starkey and Ann Harrison at DEC in the 80s with ideas for better user management system in another database (today you know it as Oracle).
    • Borland bought the database and renamed it to Interbase.
    • Borland released the source code of Interbase 6.1 at July 2000
    • Firebird was b u orn
    http://www.firebirdsql.org/en/historical-reference/
  • Joining Forks
    • Firebird today is almost the only open source project that uses the Borland's open source code. Most of the other projects, joined to Firebird
  • So what is Firebird (roughly) ?
    • Open Source licensed full RDBMS
    • Full ACID support build in
    • Have nice features : (but does not try to implement everything)
      • Triggers, Stored Procedures, Views, Domains, UDF, DDL, TCP Events, Exceptions, User roles
      • Powerful PSQL
      • Server(s) based db, Embedded db, Read Only db
      • Shadow tables
      • Binding for many programming languages
      • ...
      • 3rd party tools and support
  • How does it tick ?
    • Internal tables that:
      • Manage tables
      • Manage the database itself
      • Store audit-trails
  • Tables CREATE TABLE table_name ( column_name {< datatype> | COMPUTED BY (< expr>) | domain } [ DEFAULT { literal | NULL | USER }] [ NOT NULL ] ... CONSTRAINT constraint_name PRIMARY KEY (column_list), UNIQUE (column_list), FOREIGN KEY (column_list) REFERENCES other_table (column_list), CHECK (condition), ... );
  • Data Types
    • Numeric :
      • Smallint
      • Integer
      • Float
      • Double Precision
      • Decimal
      • Numeric
    • Time and Date :
      • Date
      • Time
      • Timestamp
    • Strings :
      • Char
      • VarChar
    • Blobs :
      • sub_type text
      • sub_type binary
      • sub_type blr
      • sub_type ...
      • sub_type <user defined>
    • Arrays
    • User defined domains
  • +1
    • No Auto increment directive
    • Use Triggers and generators (sequence) instead !
    • It provide more power, and we really do have unique id on all times (unlike some other rdbms'es … [mysql] )
  • … Lies, damned lies, and statistics
    • Firebird have statistics regarding the uniqueness of an index:
      • Closer to 0, the data is more unique
      • Closer to 1, the data is less unique
    • If the statistics is 0, then each data of the index is unique
    • If the statistics is 1, then redesign your index please, there is too much repetition of data
    • Recalculating index:
    SET STATISTICS INDEX <index name>;
  • … and they have a plan (?)
    • Firebird also allow you to change how your query will be executed by using plan:
    SET PLANONLY ON ; SELECT a.emp_no, b.currency FROM employee a INNER JOIN country b ON a.job_country = b.country; PLAN JOIN (A NATURAL ,B INDEX (RDB$PRIMARY1)) SET PLANONLY OFF ;
  • Questions ? Images copyrights ...
    • Firebird
    • Fire image
    • Table
    • Forks
    Links:
    • http://www.firebirdsql.org/
    • http://search.cpan.org/dist/DBD-Firebird/
    • https://github.com/mariuz/perl-dbd-firebird