firebird database (快速入門)
来源:百度文库 编辑:神马文学网 时间:2024/10/06 09:29:36
參考文件(均可自firebird網站找到):
Novice‘s Guide
Migration from MS-SQL to firebird
Firebord Release Notes
學習資料庫基礎是在sql的語法應用(請參考:firebird 網站的說明文件最好把這份文件印出來,在寫程式時可以參考其語,雖然大部份都是sql-92相容,但是有差異,還有一些專有的語法) 當你需要的資料找不到時可以找尋interbase的相關資料(因為firebird是由 interbase釋放原始碼所衍生的) 有一本網路上完整的書"BORLAND INTERBASE7.0 應用開發指南 (姚啟紅著)",雖然是interbase但非常詳細,要深入了解(建議必讀)
尚在撰寫中............
目錄索引
前言程式架構下載及安裝設定使用者管理(console)資料庫管理(console)連線方式(檔案/tcpip)資料庫/使用者 管理(gui)設定ODBC資料庫安全(備份/回存)(console)資料庫安全(備份/回存)(gui)資料型態blob
使用者自定函式(UDF)
前言
它是Borland之前推出interbase資料庫,並將其開放原始碼的免費資料庫軟體,目前版本是1.5.2,它比mysql, postgresql 更適合於windows作業系統,它並不是使用cygwin的方式移植到windows上,而是真正的windows軟體,我們一般將其比較於Ms- sql server,是一個小而美資料庫,最大的優點在於它是免費的(ms-sql server五人版至將近三萬元),其實它也支援不同作業平台(含inux),對於linux上我還是建議大家postgresql或是mysql
因為firebird若要用php的話就有點難了...,你要根據網站文件來作一些修改編譯的動作
#日前postgresql 8.0釋放已經支援windwos的原始檔(不使用cygwin來執行),但很可惜不支援98/me
因目前還是有人使用win98單機使用的資料庫,如果你單機上使用nt系統(2000/xp)等可以使用postgresql,因為postgresql 比起firebird來講某方面確實比較強,而使用者也比較多
架構
firebird 資料庫軟體有三種套件,並而支援不同作業平台(windows系列,linux,freebsd等...)
Super Server-無法直接存取資料庫檔案,必須透過socket來和伺服器溝通 Classic-直接存取資料庫的檔案,多個程式可以同時存取一個檔案,有點像vfp,dbase embedded-專為一些小型系統的嵌入式資料庫 (pda)
下載及安裝
主網站:http://firebird.sourceforge.net/
Download->Firebird relational database
直接點兩下就可以安裝,請照步驟,根據自己的需求來安裝
預設安裝路徑
windows:c:\program files\firebird\firebird_1_5
linux:/opt/firebird
兩個作業系統下的目錄結構非常像
根目錄下:
firebird.conf-設定檔
aliases.conf -別名檔
friebird.log -記錄檔
SYSDBA.password -linux才有,管理者的名稱及密碼在裏面,windows則預設:名稱:sysdba,密碼:masterkey
windows直接使用security.fdb來存sysdba的密碼
注意:使用者名稱不分大小寫,但密碼有分
目錄/bin:
則是一些必要的主要及工具程式
設定 firebird
主要的設定檔
firebird.conf
預設tcp/ip會啟動port:3050
你可以使用telnet ip 3050來測試
aliases.conf
設定資料庫的別名
資料庫連線時一般要指定路徑,有時路徑太長時你可以指定,在aliases.conf中使用別名來存取
它是位於你安裝firebird的根目錄,以下為內建範例
# 別名 = 原始路徑
employee.fdb = /opt/firebird/examples/employee.fdb
其中#為註解,而windows及linux的路徑是有所不同:
# fbdb1 在Windows伺服器:
fbdb1 = c:\Firebird\sample\Employee.fdb
# fbdb2 在Linux伺服器:
fbdb2 = /opt/databases/killergames.fdb
資料庫執行時可以編輯這個檔案,不需要重新啟動伺服器
連線別名的方式:
Server_name:aliasname
使用者管理(consloe介面)
1.預設管理者名稱sysdba,密碼masterkey
2.密碼檔security.fdb,位於firebird安裝目錄下
3.管理程式gsec
安裝目錄下\bin
4.密碼長度限制在8碼
用法:
本地主機(資料庫server在本台電腦)
gsec -user sysdba -password [options]
遠端主機(資料庫server在別台電腦)
gsec -user sysdba -password -database
gsec命令
di[splay]
顯示所有使用者
di[splay]
顯示某使用者
a[dd] -pw [options]
新增使用者
mo[dify] [options]
修改使用者
de[lete]
刪除使用者
h[elp]
求助
?
同上
q[uit]
離開gsec
z
顯示版本
options
-pa[ssword]
管理者的密碼
-user
使用者名稱
-pw
使用者密碼
-fname
英文名字有,三個部份
-mname
-lname
範例
有兩種方式
1.直接下在命令列-
2.進入互動式的命令列-額外的命令
新增使用者
gsec -user sysdba -password masterkey
gsec> add elvis -pw elvis -fname elvis -lnmae presley
修改密碼
gsec> modify elvis -pw chunk
修改sysdba密碼
gsec -user sysdba -password masterkey -modify sysdba -pw mykey37
修改遠端伺服器linux的sysdba密碼
gsec -user sysdba -password masterkey -database harry:/opt/firebird/security.fbd -modify sysdba -pw hamburg
修改遠端伺服器windows的sysdba密碼
gsec -user sysdba -password masterkey -database sally:"c:\Program files\Firebird\security.fdb" -modify sysdba -pw hannover
修改遠端伺服器使用tcp port 3050
gsec -user sysdba -password masterkey -database jack/3050:/opt/firebird/security.fdb" -modify sysdba -pw londo
修改遠端windows伺服器ip( a.b.c.d)使用tcp port 3050
gsec -user sysdba -password masterkey -database a.b.c.d/3050:"c:\program files\firebird\firebird_1_5\security.fdb -modiyf sysdba -pw londo
刪除本地使用者
gsec -user sysdba -password masterkey -delete joe
資料庫管理(console)
程式isql位於安裝目錄下的bin
以下是一個操作範例:
c:\Program files\firebird\firebird_1_5\bin\>isql -user sysdba -password masterkey
Use CONNECT or CREATE DATABASE to specify a database
SQL> connect test;
Database: test, User: sysdba
SQL> show table;
COUNTRY CUSTOMER
DEPARTMENT EMPLOYEE
EMPLOYEE_PROJECT JOB
PHONE_LIST PROJECT
PROJ_DEPT_BUDGET SALARY_HISTORY
SALES
SQL> select * from country ;
COUNTRY CURRENCY
=============== ==========
USA Dollar
England Pound
Canada CdnDlr
SQL>quit;
建立資料庫
1.建立資料庫create database
2.建立資料表格create table (sql指令)
3.刪除資枓表格drop table (sql指令)
4.查詢資料庫中所含表格 show table
5.查詢表格中的結構 show table 表格名稱
6.新增,刪除,更新(insert,delete,update)均為sql指令
7.SQL命令交付,在新增或刪除時,資料庫並未直接變更,要使用sql指命commit 或commit work來更新
isql -user sysdba -password masterkey
Use CONNECT or CREATE DATABASE to specify a database
SQL> create database ‘c:\temp\test.fdb‘;
SQL> create table abc (name char(12),age numeric(3));
SQL> show table friend ;
FIRSTNAME CHAR(15) Nullable
LASTNAME CHAR(20) Nullable
CITY CHAR(15) Nullable
STATE CHAR(2) Nullable
AGE INTEGER Nullable
SQL> insert into abc (name ,age) values( ‘cschen‘,34);
SQL> select * from abc;
NAME AGE
============ =======
cschen 34
以上的操作主要是sql指令
命令的結尾必需使用";", 如果沒有使用";"提示會由SQL>變為CON>,告訴你延續之前的命令
SQL>create table friend
CON>(FIRSTNAME CHAR(13),
CON> LASTNAME CHAR(40),
CON> STATE CHAR(2),
CON> AGE INTEGER );
同下
SQL>create table friend (FIRSTNAME CHAR(13),LASTNAME CHAR(40),STATE CHAR(2),AGE INTEGER);
每一個資料庫有一個特殊資料庫-系統資料庫,包含了使用者權限等...
SQL> show system;
RDB$CHARACTER_SETS RDB$CHECK_CONSTRAINTS
RDB$COLLATIONS RDB$DATABASE
RDB$DEPENDENCIES RDB$EXCEPTIONS
RDB$FIELDS RDB$FIELD_DIMENSIONS
.................. ..................
使用者權限
1.GRANT 授予使用者權限
GRANT 權限 ON 物件 TO 對象 [with grant option]
2.REVOKE 撤消使用者權限
REVOKE 權限 ON 物件 FROM 對象
權限:SELECT ,INSERT ,UPDATE,DELETE, ALL
物件:TABLE,VIEW
對象:使用者,PUBLIC(代表全部)
with grant option 讓該名使用者有設定別的使用者的權限
*因為isql無法輸入中文,因此無法使用在中文輸入資料
*在linux下由於可能會有同名的isql(unixODBC套件),而linux安裝在/opt/firebird,因此必須使用絕對路徑來執行,另資料庫的管理者名稱可以不固定,至於密碼在安裝時會自動產生在檔案SYSDBA.password中
連線方式(檔案/tcpip)
程式支援兩種連線方式
1.使用完整路徑連線
c:\abcd.....
2.使用tcpip連線,在路徑前加主機的名稱或IP
主機:c:\abcd....
我們可以根據切換這兩種
windows 下的路徑如有空白,有時必須使用" "將路徑框起來才可以用
資料庫/使用者管理(gui)
我有試過幾個免費的windows端的軟體
選擇ibeasy+: 非常容易管理,必須有資料庫的觀念
另外可配合marathon使用
ibeasy+使用者管理介面:
server->users management
(輸入管理者的名稱及密碼,進入下一個視窗)
(你就可以管理你的使用者)
設定odbc
在firebird->download ->odbc
下載後安裝
odbc
Database
1.完整路徑-c:\database\abc.fdb
2.tcp/ip-ip:完整路徑(127.0.0.1:c:\database\abc.fdb)
資料庫的安全(備份/回存)(console)
GBAK:命令列工具,命令有兩個狀態,備份/回存(-b / -c)
語法
gbak -user -password
Novice‘s Guide
Migration from MS-SQL to firebird
Firebord Release Notes
學習資料庫基礎是在sql的語法應用(請參考:firebird 網站的說明文件最好把這份文件印出來,在寫程式時可以參考其語,雖然大部份都是sql-92相容,但是有差異,還有一些專有的語法) 當你需要的資料找不到時可以找尋interbase的相關資料(因為firebird是由 interbase釋放原始碼所衍生的) 有一本網路上完整的書"BORLAND INTERBASE7.0 應用開發指南 (姚啟紅著)",雖然是interbase但非常詳細,要深入了解(建議必讀)
尚在撰寫中............
目錄索引
前言程式架構下載及安裝設定使用者管理(console)資料庫管理(console)連線方式(檔案/tcpip)資料庫/使用者 管理(gui)設定ODBC資料庫安全(備份/回存)(console)資料庫安全(備份/回存)(gui)資料型態blob
使用者自定函式(UDF)
前言
它是Borland之前推出interbase資料庫,並將其開放原始碼的免費資料庫軟體,目前版本是1.5.2,它比mysql, postgresql 更適合於windows作業系統,它並不是使用cygwin的方式移植到windows上,而是真正的windows軟體,我們一般將其比較於Ms- sql server,是一個小而美資料庫,最大的優點在於它是免費的(ms-sql server五人版至將近三萬元),其實它也支援不同作業平台(含inux),對於linux上我還是建議大家postgresql或是mysql
因為firebird若要用php的話就有點難了...,你要根據網站文件來作一些修改編譯的動作
#日前postgresql 8.0釋放已經支援windwos的原始檔(不使用cygwin來執行),但很可惜不支援98/me
因目前還是有人使用win98單機使用的資料庫,如果你單機上使用nt系統(2000/xp)等可以使用postgresql,因為postgresql 比起firebird來講某方面確實比較強,而使用者也比較多
架構
firebird 資料庫軟體有三種套件,並而支援不同作業平台(windows系列,linux,freebsd等...)
Super Server-無法直接存取資料庫檔案,必須透過socket來和伺服器溝通 Classic-直接存取資料庫的檔案,多個程式可以同時存取一個檔案,有點像vfp,dbase embedded-專為一些小型系統的嵌入式資料庫 (pda)
下載及安裝
主網站:http://firebird.sourceforge.net/
Download->Firebird relational database
直接點兩下就可以安裝,請照步驟,根據自己的需求來安裝
預設安裝路徑
windows:c:\program files\firebird\firebird_1_5
linux:/opt/firebird
兩個作業系統下的目錄結構非常像
根目錄下:
firebird.conf-設定檔
aliases.conf -別名檔
friebird.log -記錄檔
SYSDBA.password -linux才有,管理者的名稱及密碼在裏面,windows則預設:名稱:sysdba,密碼:masterkey
windows直接使用security.fdb來存sysdba的密碼
注意:使用者名稱不分大小寫,但密碼有分
目錄/bin:
則是一些必要的主要及工具程式
設定 firebird
主要的設定檔
firebird.conf
預設tcp/ip會啟動port:3050
你可以使用telnet ip 3050來測試
aliases.conf
設定資料庫的別名
資料庫連線時一般要指定路徑,有時路徑太長時你可以指定,在aliases.conf中使用別名來存取
它是位於你安裝firebird的根目錄,以下為內建範例
# 別名 = 原始路徑
employee.fdb = /opt/firebird/examples/employee.fdb
其中#為註解,而windows及linux的路徑是有所不同:
# fbdb1 在Windows伺服器:
fbdb1 = c:\Firebird\sample\Employee.fdb
# fbdb2 在Linux伺服器:
fbdb2 = /opt/databases/killergames.fdb
資料庫執行時可以編輯這個檔案,不需要重新啟動伺服器
連線別名的方式:
Server_name:aliasname
使用者管理(consloe介面)
1.預設管理者名稱sysdba,密碼masterkey
2.密碼檔security.fdb,位於firebird安裝目錄下
3.管理程式gsec
安裝目錄下\bin
4.密碼長度限制在8碼
用法:
本地主機(資料庫server在本台電腦)
gsec -user sysdba -password
遠端主機(資料庫server在別台電腦)
gsec -user sysdba -password
gsec命令
di[splay]
顯示所有使用者
di[splay]
顯示某使用者
a[dd]
新增使用者
mo[dify]
修改使用者
de[lete]
刪除使用者
h[elp]
求助
?
同上
q[uit]
離開gsec
z
顯示版本
options
-pa[ssword]
管理者的密碼
-user
使用者名稱
-pw
使用者密碼
-fname
英文名字有,三個部份
-mname
-lname
範例
有兩種方式
1.直接下在命令列-
2.進入互動式的命令列-額外的命令
新增使用者
gsec -user sysdba -password masterkey
gsec> add elvis -pw elvis -fname elvis -lnmae presley
修改密碼
gsec> modify elvis -pw chunk
修改sysdba密碼
gsec -user sysdba -password masterkey -modify sysdba -pw mykey37
修改遠端伺服器linux的sysdba密碼
gsec -user sysdba -password masterkey -database harry:/opt/firebird/security.fbd -modify sysdba -pw hamburg
修改遠端伺服器windows的sysdba密碼
gsec -user sysdba -password masterkey -database sally:"c:\Program files\Firebird\security.fdb" -modify sysdba -pw hannover
修改遠端伺服器使用tcp port 3050
gsec -user sysdba -password masterkey -database jack/3050:/opt/firebird/security.fdb" -modify sysdba -pw londo
修改遠端windows伺服器ip( a.b.c.d)使用tcp port 3050
gsec -user sysdba -password masterkey -database a.b.c.d/3050:"c:\program files\firebird\firebird_1_5\security.fdb -modiyf sysdba -pw londo
刪除本地使用者
gsec -user sysdba -password masterkey -delete joe
資料庫管理(console)
程式isql位於安裝目錄下的bin
以下是一個操作範例:
c:\Program files\firebird\firebird_1_5\bin\>isql -user sysdba -password masterkey
Use CONNECT or CREATE DATABASE to specify a database
SQL> connect test;
Database: test, User: sysdba
SQL> show table;
COUNTRY CUSTOMER
DEPARTMENT EMPLOYEE
EMPLOYEE_PROJECT JOB
PHONE_LIST PROJECT
PROJ_DEPT_BUDGET SALARY_HISTORY
SALES
SQL> select * from country ;
COUNTRY CURRENCY
=============== ==========
USA Dollar
England Pound
Canada CdnDlr
SQL>quit;
建立資料庫
1.建立資料庫create database
2.建立資料表格create table (sql指令)
3.刪除資枓表格drop table (sql指令)
4.查詢資料庫中所含表格 show table
5.查詢表格中的結構 show table 表格名稱
6.新增,刪除,更新(insert,delete,update)均為sql指令
7.SQL命令交付,在新增或刪除時,資料庫並未直接變更,要使用sql指命commit 或commit work來更新
isql -user sysdba -password masterkey
Use CONNECT or CREATE DATABASE to specify a database
SQL> create database ‘c:\temp\test.fdb‘;
SQL> create table abc (name char(12),age numeric(3));
SQL> show table friend ;
FIRSTNAME CHAR(15) Nullable
LASTNAME CHAR(20) Nullable
CITY CHAR(15) Nullable
STATE CHAR(2) Nullable
AGE INTEGER Nullable
SQL> insert into abc (name ,age) values( ‘cschen‘,34);
SQL> select * from abc;
NAME AGE
============ =======
cschen 34
以上的操作主要是sql指令
命令的結尾必需使用";", 如果沒有使用";"提示會由SQL>變為CON>,告訴你延續之前的命令
SQL>create table friend
CON>(FIRSTNAME CHAR(13),
CON> LASTNAME CHAR(40),
CON> STATE CHAR(2),
CON> AGE INTEGER );
同下
SQL>create table friend (FIRSTNAME CHAR(13),LASTNAME CHAR(40),STATE CHAR(2),AGE INTEGER);
每一個資料庫有一個特殊資料庫-系統資料庫,包含了使用者權限等...
SQL> show system;
RDB$CHARACTER_SETS RDB$CHECK_CONSTRAINTS
RDB$COLLATIONS RDB$DATABASE
RDB$DEPENDENCIES RDB$EXCEPTIONS
RDB$FIELDS RDB$FIELD_DIMENSIONS
.................. ..................
使用者權限
1.GRANT 授予使用者權限
GRANT 權限 ON 物件 TO 對象 [with grant option]
2.REVOKE 撤消使用者權限
REVOKE 權限 ON 物件 FROM 對象
權限:SELECT ,INSERT ,UPDATE,DELETE, ALL
物件:TABLE,VIEW
對象:使用者,PUBLIC(代表全部)
with grant option 讓該名使用者有設定別的使用者的權限
*因為isql無法輸入中文,因此無法使用在中文輸入資料
*在linux下由於可能會有同名的isql(unixODBC套件),而linux安裝在/opt/firebird,因此必須使用絕對路徑來執行,另資料庫的管理者名稱可以不固定,至於密碼在安裝時會自動產生在檔案SYSDBA.password中
連線方式(檔案/tcpip)
程式支援兩種連線方式
1.使用完整路徑連線
c:\abcd.....
2.使用tcpip連線,在路徑前加主機的名稱或IP
主機:c:\abcd....
我們可以根據切換這兩種
windows 下的路徑如有空白,有時必須使用" "將路徑框起來才可以用
資料庫/使用者管理(gui)
我有試過幾個免費的windows端的軟體
選擇ibeasy+: 非常容易管理,必須有資料庫的觀念
另外可配合marathon使用
ibeasy+使用者管理介面:
server->users management
(輸入管理者的名稱及密碼,進入下一個視窗)
(你就可以管理你的使用者)
設定odbc
在firebird->download ->odbc
下載後安裝
odbc
Database
1.完整路徑-c:\database\abc.fdb
2.tcp/ip-ip:完整路徑(127.0.0.1:c:\database\abc.fdb)
資料庫的安全(備份/回存)(console)
GBAK:命令列工具,命令有兩個狀態,備份/回存(-b / -c)
語法
gbak
firebird database (快速入門)
firebird database (快速入門)
FireBird 数据库安装
Firebird的基本数据类型
database ado
wwii database
English database
English database
MySQL : create database, drop database
如何快速看透一个人(入智慧)
Firebird中文社区 - Firebird基础知识(浏览贴子)
5大养生妙招 让你快速入甜蜜梦乡
五大妙招让你快速入梦乡
【生活】五大妙招让你快速入梦乡
五大妙招让你快速入梦乡
学经络快速入门法 - tianweimin135558的日志 - 网易博客
图忆世界 - [转帖]快速阅读技巧(入读书)
五大妙招让你快速入梦乡
firebird嵌入式数据库 - suncjs的专栏 - CSDNBlog
数据库设计(Database Design)
EXPORT TO MEMORY/DATABASE....
In-memory database
数据库设计(Database Design)
SQL CREATE DATABASE 语句