KATEGORI : 921411044

TUGAS 6

14 December 2012 11:09:47 Dibaca : 212

SYNTAX UNTUK MERELASIKAN TABEL MYSQL

DEFINISI JOIN

Join adalah penggabungan table yang dilakukan melalui kolom / key tertentu yang memiliki nilai terkait untuk mendapatkan satu set data dengan informasi lengkap. Lengkap disini artinya kolom data didapatkan dari kolom-kolom hasil join antar table tersebut.

Join diperlukan karena perancangan table pada sistem transaksional kebanyakan di-normalisasi, salah satu alasannya untuk menghindari redundansi.

1. INNER JOIN

INNER JOIN adalah tipe join yang akan kita bahas pertama. Tipe join ini akan mengambil semua row dari table asal dan table tujuan dengan kondisi nilai key yang terkait saja - jika ada, dan jika tidak maka row tersebut tidak akan muncul.

Kalau tidak terdapat kondisi key terkait antar table, maka semua row dari kedua table dikombinasikan.

Syntax dari INNER JOIN adalah sebagai berikut : ?

1 table_reference [INNER] JOIN table_factor [join_condition]

Terlihat bahwa keyword INNER boleh digunakan secara eksplisit atau tidak. Jika tidak digunakan maka konstruksi JOIN tanpa keyword lain dianggap sebagai INNER JOIN.

Secara pengerjaan relasi hampir sama dengan klusa WHERE ?

WHERE table1.referensiID = table2.referensiID

2. CROSS JOIN

Operasi cross join akan menampilkan semua isi tabel sisi sebelah kiri akan memiliki pasangan semua data sisi sebelah kanan. Banyaknya record cross join = jumlah record tabel pertama X jumlah record tabel kedua.

CROSS JOIN identik dengan INNER JOIN pada MySQL 5.0. Pembahasannya sama dengan INNER JOIN, dan karena klausa ini jarang dipakai maka tidak diulangi lagi disini.

SQL CROSS JOIN syntax:

SELECT * FROM [TABLE 1] CROSS JOIN [TABLE 2] OR SELECT * FROM [TABLE 1], [TABLE 2]

3. OUTER JOIN

Merupakan tipe join yang mencari referensi data dari suatu table sumber ke table lain dengan tidak menghilangkan data sumber apabila referensi tidak diketemukan

Syntax:

SELECT column_list

FROM table_reference

LEFT | RIGHT | FULL [OUTER] JOIN table_reference ON predicate

[LEFT | RIGHT | FULL [OUTER] JOIN table_reference ON predicate...]

.

Untuk menggunakan tipe OUTER JOIN maka perlu memperhatikan beberapa hal berikut :

Perlu dibedakan antara table sumber dan table referensi, ini ditentukan dengan cara menspesifikasikan kedudukan table sumber apakah di kiri (LEFT) atau di kanan (RIGHT).Jika tidak ada data dari table referensi yang cocok dengan kondisi join maka hanya data dari table sumber yang ditampilkan tetapi kolom-kolom table referensi akan berisi null.

LEFT JOIN

Operasi left join akan menampilkan semua isi tabel sisi kiri, walaupun data di pasangan joinnya yang disisi kanan nilainya tidak sama ataupun berisi null.

RIGHT JOIN

Operasi right join akan menampilkan semua isi tabel sisi kanan, walaupun data di pasangan joinnya yang di sisi kiri nilainya tidak sama ataupun berisi null.

STRAIGHT_JOIN

STRAIGHT_JOIN merupakan pengganti keyword JOIN pada MySQL yang digunakan untuk "memaksa" proses join table dari kiri (LEFT) ke kanan (RIGHT).

4. FULL JOIN

Operasi full join akan menampilkan semua isi tabel sisi kiri, walaupun data di pasangan joinnya yang disisi kanan nilainya null dan sebaliknya.

SYNTAX :

SELECT table1.column1, table2.column2...

FROM table1

FULL JOIN table2

ON table1.common_filed = table2.common_field;

Contoh script Full join

select d.area_id, d.nama_area, d.luas_area, p.penduduk_id, p.nama_pendudukfrom cpenduduk p full join carea d on p.area_id = d.area_id

Sumber Berita: www.muhammadcahya.com

http://www.muhammadcahya.com/post-12-pengertian-join-pada-sql.html#ixzz2Evi4kuWG

Tugas 4

09 November 2012 11:19:59 Dibaca : 163

NORMALISASI DATABASE RELASI

Ketika kita merancang suatu basis data untuk suatu sistem relational, prioritas utama dalam mengembangkan model data logical adalah dengan merancang suatu representasi data yang tepat bagi relationship dan constrainnya (batasannya). Kita harus mengidentifikasi suatu set relasi yang cocok, demi mencapai tujuan di atas. Tehnik yang dapat kita gunakan untuk membantu mengidetifikasi relasi-relasi tersebut dianamakan Normalisasi.

Normalisasi merupakan kondisi dimana relasi antar tabel telah terbentuk dengan baik sesuai kaidah dalam sebuah database bertujuan untuk menciptakan struktur-struktur entity yang dapat mengurangi redundansi data dan meningkatkan stabilitas database. Ada dua fungsi normalisasi, yaitu :

1. Dapat digunakan sebagai metodologi dalam menciptakan desain database dengan menghasilkan rancangan tabel-tabel yang nantinya sesuai dengan masalah dan kebutuhan yang dihadapi. 2. Dapat digunakan sebagai verifikasi terhadap hasil desain database yang telah dibuat, baik menggunakan E-R Model atau menggunakan model relasi.

Normalisasi yang umum digunakan sampai tahap Third Normal Form (3 NF) atau lebih sesuai keadaan waktu nyata yang nantinya langsung dapat diimplementasikan kedalam database. Normalisasi diperlukan agar dapat Menghasilkan himpunan skema relasi antar tabel yang mengizinkan pengguna untuk menyimpan informasi tanpa adanya redudansi data serta mengizinkan pengguna untuk mencari informasi yang dikehendaki dengan cepat dan mudah.

Tahap - Tahap Normalisasi :

Tingkatan proses normalisasi dengan Third Normal Form (3NF):

  1. Bentuk Tahap UnNormalized
  2. Bentuk Normal Pertama (1NF)
  3. Bentuk Normal Kedua (2NF)
  4. Bentuk Normal Ketiga (3NF)

Tingkatan proses normalisasi dengan Five Normal Form (5NF):

  1. Bentuk Normal Pertama (1NF)
  2. Bentuk Normal Kedua (2NF)
  3. Bentuk Normal Ketiga (3NF)
  4. Bentuk Normal Boyce-Codd (BCNF)
  5. Bentuk Normal Keempat (4NF)
  6. Bentuk Normal Kelima (5NF)

1.              Bentuk Normal Pertama (1NF)

Bentuk normal pertama dikenakan pada entity yang belum normal (Unnormalized Form). Bentuk tidak normal merupakan kumpulan data yang akan di rekam, tidak ada keharusan mengikuti suatu format tertentu, dapat saja tersebut tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan kedatangannya.

Ada dua kelemahan utama pada bentuk tidak normal diatas :

1. Terdapat attribut yang berulang (duplikat), yaitu attribut matakulia. Mahasiswa dengan nama Elzar mengambil 2 matakuliah, sementara Si Fikri mengambil 3 matakuliah dimana matakuliah yang mereka ambil ada yang sama.

2. Terdapat informasi yang meragukan, dimana ada dua baris memiliki matakuliah yang sama, tapi berbeda nilainya. Sebenernya kedua baris tersebut menunjukkan dua orang yang sama namanya tapi berbeda nilai.

Bentuk entity diatas harus di rubah menjadi bentuk normal pertama.Aturan Bentuk Normal Pertama (1NF) :

Suatu entity dikatakan dalam bentuk normal pertama jika setiap attributnya bernilai tunggal untuk setip barisnya.

 

2.Bentuk Normal Kedua (2NF)

Aturan Bentuk Normal Kedua (2NF) : Suatu entity dikatakan dalam bentuk normal pertama jika : 1. Berada pada bentuk normal pertama. 2. Semua attribut bukan kunci memiliki ketergantungan fungsional (Depedensi Fungsional) dengan kunci utama (primary key)

Ketergantungan fungsional adalah suatu attribut X mempunyai ketergantungan fungsional terhadap attribut Y apabila setiap nilai X berhubungan dengan sebuah nilai Y. Misalnya Attribut Nama pada entity Mahasiswa, mempunyai ketergantungan fungsional terhadap attribut NoBP, karena setiap nama mahasiswa harus mempunyai NoBP.

Pada tahap ini anda harus memilah-memilah dan membagi entity tersebut menjadi beberapa entity lainnya yang mempunyai kunci utama. Sehingga masingmasing attribut yang bukan kunci mempunyai ketergantungan fungsional dengan kunci utama tersebut.

 

3.Bentuk Normal Ketiga(3NF)

Aturan Bentuk Normal Ketiga (3NF) : Suatu entity dikatakan dalam bentuk normal pertama jika : 1. Berada pada bentuk normal kedua. 2. Semua attribut bukan kunci tidak memiliki ketergantungan transitif (Depedensi transitif) dengan kunci utama (primary key). Ketergantungan Transitif terjadi pada entity yang menggunakan attribut gabungan sebagai kunci utama. Seperti pada entity nilai pada bentuk normal kedua diatas, yang menjadi kunci utama adalah NoBP dan Kode Matakuliah. Ketergantungan transitif terjadi bila :

a. Attribut X memiliki ketergantungan fungsional dengan attribut Y. b. Attribut Z memiliki ketergantungan fungsional dengan attribut X.

Misalnya attribut Kode Matakuliah pada entiti nilai diatas, mempunyai ketergantungan fungsional dengan attribut NoBP, Attribut Nama Matakuliah mempunyai ketergantungan fungsional dengan attribut Kode Matakuliah.4.Bentuk Normal Boyce-Codd (BCNF). Aturan Bentuk Normal Boyce-Codd (BCNF) : Suatu entity dikatakan dalam bentuk BCNF jika : Semua kunci utama adalah kunci kandidat yang bersifat unik

 

5.Bentuk Normal Keempat (4NF)

Bentuk normal keempat berhubungan dengan sifat ketergantungan banyak nilai (Multivalued Dependency) pada suatu tabel yang merupakan pengembangan dari ketergantungan fungsional.

 

6.Bentuk Normal Kelima (5NF)

Bentuk normal kelima berkenaan dengan ketergantungan relasi antar tabel (Join Depedency).

 

Melakukan normalisasi data dilakukan berdasarkan analisa dan kebutuhan, implementasi kedalam database tidak hanya dilakukan 3 tahap saja untuk mendapatkan nilai normalisasi tapi tergantung permasalahan yang dihadapi dari relasi umum yang terjadi.Ketika kita sudah terjun ke lapangan (dunia kerja), ada kalannya terjadi ketidaksesuaian antara hasil analisa/perencanaan dengan hasil implementasi. Yang terpenting adalah “aplikasi sesuai dengan keinginan pengguna” dengan tidak peduli akan proses yang ada > atau dengan kata lain kita gunakan “Management By Objective”.

Tugas 2

21 September 2012 18:38:34 Dibaca : 134

Tipe Data pada Data Base Management System (DBMS)


1. Tipe data MySQL

  • DECIMAL [(M)(D)] : Bilangan floating-point yang "unpacked". Tidak dapat bersifat unsigned. Kata "unpacked" berarti bilangan disimpan sebagai string, menggunakan satu karakter untuk setiap digitnya. Jangkauan nilai dari DECIMAL sama dengan DOUBLE, tetapi juga tergantung dari nilai atribut M dan D yang disertakan. Jika D tidak diisi, akan dianggap 0. Jika M tidak diisi, maka akan dianggap 10.
  • DATE : Sebuah tanggal. MYSQL menampilkan tanggal dalam format 'YYYY-MM-DD'. Jangkauan nilainya adalah '1000-01-01' hingga '9999-12-31'.
  • TINYBLOB dan TINYTEXT : Sebuah BLOB (semacam catatan) atau TEXT dengan lebar maximum 255.
  • ENUM ('value 1', 'value 2',...) : Sebuah enumerasi, yaitu objek string yang hanya dapat memiliki sebuah nilai, dipilih dari daftar nilai. Sebuah enum maksimum dapat memiliki 65535 jenis nilai.
  • SET ('value 1', 'value 2',...) : Sebuah set, yaitu objek string yang dapat memiliki 0 nilai atau lebih, yang harus dipilih dari daftar nilai 'value 1', 'value 2',... Sebuah SET maksimum dapat memiliki 64 anggota.


2. Tipe data ORACLE

  • NUMBER (precision, scale) : Untuk kolom yang menampung data angka yang memiliki total panjang sebanyak precision dan angka dibelakang koma sebanyak scale. Precision mulai dari 1-38 sedangkan scale mulai dari -84 sampai 127.
  • RAW (size) : Data binner dalam format RAW, size dalam ukuran byte, maksimum size adalah 2000 byte.
  • BFILE : Merupakan reference kepada file binner dari sistem operasi.
  • CHAR (size) : Untuk menyimpan string/karakter dengan panjang tetap, maksimum panjangnya 2000, defaultnya 1 byte dan akan ditempatkan disebelah kanan sampai panjang terpenuhi dengan memakai spasi.
  • ROWID : String berbasis 64 yang merepresentasi alamat unik tiap baris dalam tabel.


3. Tipe data Postgresql

 

  • NUMERIK : Jenis numerik dapat menyimpan nomor dengan sampai 1000 digit presisi dan melakukan perhitungan dengan tepat. Hal ini terutama dianjurkan untuk menyimpan sejumlah uang dan jumlah lain di mana ketepatan diperlukan. Namun, aritmatika pada nilai-nilai numerik yang sangat lambat dibandingkan dengan tipe integer, atau ke tipe floating-point yang dijelaskan di bagian selanjutnya.
  • Karakter : SQL mendefinisikan dua jenis karakter utama: karakter yang bervariasi (n) dan karakter (n), dimana n adalah bilangan bulat positif. Kedua jenis dapat menyimpan string hingga karakter n (tidak bytes) panjangnya. Sebuah usaha untuk menyimpan string lagi ke dalam kolom jenis akan menghasilkan kesalahan, kecuali kelebihan karakter semua ruang, dalam hal ini string akan dipotong dengan panjang maksimum. (. Ini kecuali agak aneh diperlukan oleh standar SQL) Jika string untuk disimpan lebih pendek dari panjang menyatakan, nilai-nilai karakter jenis akan ruang-empuk, nilai-nilai yang bervariasi tipe karakter hanya akan menyimpan string pendek.
  • Biner : Sebuah string biner adalah urutan oktet (atau byte). String biner dibedakan dari string karakter dalam dua cara: Pertama, string biner khusus memungkinkan oktet menyimpan nilai nol dan lainnya "non-printable" octets (biasanya, oktet luar kisaran 32-126). Karakter string melarang nol oktet, dan juga melarang setiap nilai oktet lainnya dan urutan nilai oktet yang valid sesuai dengan encoding set yang dipilih dalam database karakter. Kedua, operasi pada string biner memproses byte yang sebenarnya, sedangkan pengolahan string karakter tergantung pada pengaturan lokal. Singkatnya, string biner yang tepat untuk menyimpan data yang programmer berpikir sebagai "byte mentah", sedangkan string karakter yang sesuai untuk menyimpan teks.
  • Waktu (Date/Time) : Tanggal dan waktu input diterima di hampir semua format yang wajar, termasuk ISO 8601, SQL-kompatibel, POSTGRES tradisional, dan lain-lain. Untuk beberapa format, pemesanan hari, bulan, dan tahun di tanggal input adalah ambigu dan ada dukungan untuk menentukan diharapkan memesan bidang ini. Mengatur DateStyle parameter untuk MDY untuk memilih bulan-hari-tahun penafsiran, DMY untuk memilih hari-bulan-tahun penafsiran, atau Ymd untuk memilih tahun-bulan-hari interpretasi.
  • Boolean Type : PostgreSQL menyediakan boolean SQL tipe standar. boolean dapat memiliki salah satu dari hanya dua negara: "true" atau "palsu". Sebuah negara ketiga, "tidak diketahui", diwakili oleh nilai null SQL.


4. Tipe Data DB2

  • DB2 Everyplace : Versi ini merupakan versi DB2 yang terkecil, berukurang hanya sekitar 350kb. Versi ini dibuat untuk para pengguna handheld seperti PDA, smartphone
  • DB2 Express : Versi ini merupakan entry level data server yang didesign untuk komputer yang memiliki hingga 2 CPU dan memory hingga 4GB dan memiliki sistem operasi Linux, Solaris atau Windows.
  • DB2 Express-C : Versi ini merupakan entry level data server yang didesign untuk komputer yang memiliki hingga 2 CPU dan memory hingga 4GB dan memiliki sistem operasi Linux, atau Windows. Versi ini dapat digunakan untuk tujuan evaluasi dan dapat digunakan secara gratis.
  • DB2 Personal Edition : Merupakan DBMS untuk single user yang ideal untuk desktop ataupun laptop. Dapat digunakan untuk create, modifikasi dan mengatur banyak database lokal.
  • DB2 Workgroup Server Edition : Versi ini merupakan DBMS untuk multi user, client/ server yang didesign untuk komputer yang memiliki hingga 4 CPU dan memory hingga 16GB dan memiliki sistem operasi Linux, Windows, Solaris, Linux, AIX dll. Memiliki fitur yang sama dengan DB2 Express namun dengan skala yang lebih besar.

Tugas 1

14 September 2012 11:14:36 Dibaca : 161

1.Database adalah :

kumpulan informasi yang disimpan didalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut.

 

2.DBMS (Database Management system) adalah :

kumpulan data yang saling berhubungan satu dengan yang lainnya yang diaorganisasikan sesuai struktur tertentu dan disimpan dengan baik.  Untuk mendapatkan informasi yang berguna dari kumpulan data maka diperlukan suatu perangkat lunak (software) untuk memanipulasi data sehingga mendapatkan informasi yang berguna. Database Manajement System (DBMS) merupakan software yang digunakan untuk membangun sebuah sistem basis data yang berbasis komputerisasi. DBMS membantu dalam pemeliharaan dan pengolahan kumpulan data dalam jumlah besar. Sehingga dengan menggunakan DBMS tidak menimbulkan kekacauan dan dapat digunakan oleh pengguna sesuai dengan kebutuhan.

 

3.Contoh DBMS adalah :

 

1. MICROSOFT ACCESS
Developer : Microsoft

 

 

Microsoft Access atau Microsoft Office Access adalah program aplikasi dari Microsoft yang ditujukan untuk kalangan rumahan atau perusahaan kecil menengah karena kapasitas datanya sangat terbatas. Microsoft Access menggunakan mesin basis data Microsoft Jet Database Access Engine. Untuk instalasinya membutuhkan space di hardisk yang lumayan besar. Engine ini hanya bisa dijalankan di lingkup sistem operasi Windows saja. Untuk keamananya tidak begitu bisa dihandalkan walaupun sudah mengenal konsep relationship.
Kelebihan dan Kekurangan :
• Microsoft Access kurang begitu bagus jika diakses melalui jaringan sehingga aplikasi-aplikasi yang digunakan oleh banyak pengguna cenderung menggunakan solusi sistem manajemen basis data yang bersifat klien atau server.
• Salah satu keunggulan Microsoft Access dilihat dari perspektif programmer adalah kompatibilitasnya dengan bahasa pemrograman Structured Query Language (SQL). Para pengguna dapat mencampurkan dan menggunakan kedua jenis bahasa tersebut (VBA dan Macro) untuk memprogram form dan logika dan juga untuk mengaplikasikan konsep berorientasi objek.

 

2. MICROSOFT SQL SERVER
Developer : Microsoft
Link :www.microsoft.com/sql
Macam Edisi : SQL Server Compact Edition (SQL CE), SQL Server Express Edition, SQL Server Workgroup Edition, SQL Server Standart Edition, SQL Server Enterprise Edition, SQL Server Developer Edition.

 

 

Microsoft SQL Server adalah program Sistem Manajemen Dasis Data Relasional. Susunan dari Microsoft SQL Server dibagi menjadi tiga komponen. SQL OS yang melakukan layanan utama pada SQL Server, misalnya mengatur aktifitas, pengaturan memori, dan pengaturan Input/Output. Relational Engine yang bekerja sebagai penghubung komponen database, tabel, query, dan perintah tersimpan dan Protocol Layer yang mengatur fungsi-fungsi SQL Server.
Kekurangan :
• Hanya dapat diimpelementasikan pada 1 unit server, jika terdapat tambahan server maka hanya akan berfungsi sebagai pasif / standby server (tidak memiliki kemampuan Technology Cluster Server seperti halnya pada DMBS Oracle).
• Hanya bisa berjalan pada satu platform system operasi yaitu Microsoft Windows.
• Merupakan software berlisensi dan berharga mahal untuk perusahaan skala kecil dan menengah.
Kelebihan :
• Cocok untuk perusahaan dengan skala kecil, menengah, dan besar sehingga mampu untuk mengolah data dengan jumlah yang besar.
• Memiliki kemampuan untuk management user dan tiap user bisa diatur hak akses terhadap suatu database oleh database administrator.
• Untuk diterapkan pada pembangunan suatu program aplikasi, akan mudah dalam melakukan koneksi dengan computer client yang pembangunan aplikasinya menggunakan software yang sama platform dengan MS-SQL, misalnya Microsoft Visual Basic.
• Memiliki tingkat pengamanan / security data yang baik.
• Memiliki kemampuan untuk back-up data, rollback data, dan recovery data.
• Memiliki kemampuan untuk membuat database mirroring dan clustering.

 

3. ORACLE
Developer : Oracle Corporation

 

 

Oracle adalah relational database management system (RDBMS) untuk mengelola informasi secara terbuka, komprehensif dan terintegrasi. Oracle Server menyediakan solusi yang efisien dan efektif karena kemampuannya dalam hal sebagai berikut:
• Dapat bekerja di lingkungan client/server (pemrosesan tersebar)
• Menangani manajemen space dan basis data yang besar
• Mendukung akses data secara simultan
• Performansi pemrosesan transaksi yang tinggi
• Menjamin ketersediaan yang terkontrol
• Lingkungan yang tereplikasi
Kekurangan:
• Merupakan software DMBS yang paling mahal, paling rumit, dan paling sulit untuk dipelajari.
• Membutuhkan spesifikasi hardware yang tinggi untuk dapat menjalankan software DMBS Oracle supaya berjalan dengan stabil.
• Hanya diperuntukan bagi perusahaan berukuran besar, dan tidak cocok untuk perusahaan kecil maupun menengah.
Kelebihan :
• Merupakan software DBMS yang handal dan memiliki kemampuan yang tinggi.
• Dapat menangani jumlah data dalam ukuran yang besar.
• Dapat mengolah data dalam ukuran besar dan mengolahnya dengan cepat sehingga didapatkan informasi yang akurat sesuai permintaan pengguna/user.
• Memiliki kemampuan akan fleksibilitas dan skalabilitas yang dapat memenuhi tuntutan akan data dan informasi yang bervolume besar dan terus-menerus bertambah besar.
• Memiliki kemampuan Technology Cluster Server, dimana jika terdapat lebih dari satu unit server misalnya 100 unit server maka Oracle dapat menjadikan 100 unit server tersebut aktif bekerja bersama sebagai 100 aktif server.
• Memiliki kemampuan untuk management user dan tiap user bisa diatur hak akses terhadap suatu database oleh database administrator.
• Bisa berjalan pada lebih dari satu platform system operasi.

 

4. MySQL
Developer : MySQL AB
Versi Terakhir : 5.0.41 (Mei 2007)
Link :www.mysql.com

 

 

My SQL adalah perangkat lunak sistem manajemen basis data yang diciptkan untuk dapat dilakukan instalasi secara gratis (open source). Hingga saat ini MySQL telah lebih dari 6 juta instalasi.
Kekurangan :
• Tidak cocok untuk menangani data dengan jumlah yang besar, baik untuk menyimpan data maupun untuk memproses data.
• Memiliki keterbatasan kemampuan kinerja pada server ketika data yang disimpan telah melebihi batas maksimal kemampuan daya tampung server karena tidak menerapkan konsep Technology Cluster Server.
Kelebihan :
• Free (bebas didownload)
• Stabil dan tangguh
• Fleksibel dengan berbagai pemrograman
• Security yang baik
• Dukungan dari banyak komunitas
• Kemudahan management database
• Mendukung transaksi
• Perkembangan software yang cukup cepat.

 

 

 

5.Firebird

 


 

 

 


Firebird dan Interbase. Firebird (juga disebut FirebirdSQL) adalah sistem manajemen basisdata relasional yang menawarkan fitur-fitur yang terdapat dalam standar ANSI SQL-99 dan SQL-2003. RDBMS ini berjalan baik di Linux, Windows, maupun pada sejumlah platform Unix. Firebird ini diarahkan dan di-maintain oleh FirebirdSQL Foundation. Ia merupakan turunan dari Interbase versi open source milik Borland. Karena itulah Interbase dan Firebird sebenarnya mempunyai CORE yang sama karena awalnya sama” dikembangkan oleh Borland.

Namun dalam perkembangannya, Interbase yang komersial di-bundle oleh Borland menjadi Phoenix, sedangkan Firebird adalah interbase yang dikembangkan oleh komunitas Open Source, sehingga menjadikannya sebagai produk Database Server yang FREE. Kalau dikaitkan dengan support, tentunya jelas beda karena produk komersial dan free. Dalam konsep teknik programmingnya, ada banyak yang sama, namun pengayaan Firebird lebih banyak dan menjadikannya lebih luwes, terutama dalam koneksi client-server (port) dan integritasnya. Modul-modul kode baru ditambahkan pada Firebird dan berlisensi di bawah Initial Developer’s Public License (IDPL), sementara modul-modul aslinya dirilis oleh Inprise berlisensi di bawah InterBase Public License 1.0. Kedua lisensi tersebut merupakan versi modifikasi dari Mozilla Public License 1.1.