發表文章

目前顯示的是有「資料庫」標籤的文章

FirebirdSQL 新增資料庫使用者與資料表權限

圖片
Firebird 資料庫有個最高權限的 SYSDBA 帳號,正常上線使用下最好將它的密碼進行變更,然後再新增一個使用者並賦予資料表的權限,這樣比較安全。 這些調整指令都透過使用 isql 介面來完成 ※注意,使用 isql 調整資料庫相關設定前,先把 Firebird 服務/引擎 先關閉,以免發生占用衝突。 假設我們資料庫是在 D:\NEWDB\test.fdb 首先,變更 SYSDBA 的密碼 C:\FB3>isql -user SYSDBA D:\NEWDb\test.fdb↵ Database: D:\NEWDb\test.fdb, User: SYSDBA SQL> ALTER USER SYSDBA password 'mustKey';↵ SQL> COMMIT;↵ SQL> 這樣就把密碼變更為 mustKey 了 (注意,Firebird 對帳號沒有大小寫分別,但是密碼有分別) 一、新增使用者 SQL> CREATE USER user01 password 'userPass01';↵ 或是創建時同時賦予角色權限(例如管理者權限) SQL> CREATE USER user01 password 'userPass01' GRANT ADMIN ROLE;↵ ※參考  SQL user management commands ※參考  ROLE ※參考  The RDB$ADMIN role 二、對使用者賦予資料表權限 假設我有一個資料表 EMPL SQL> GRANT SELECT , INSERT , UPDATE ON TABLE EMPL TO USER user01;↵ 這代表我只賦予 user01 對 EMPL 只能操作 SELECT、INSERT、UPDATE 三種權限。 基本上,資料表操作權限只有 SELECT、INSERT、UPDATE、DELETE、REFERENCES 這四種,要 CREATE/DROP/ALTER 資料表只能由 SYSDBA 來做。 REFERENCES 這權限是用來讀取資料表的 關聯 資訊(foreign key)的。

FirebirdSQL 以單次執行

圖片
這個是繼 上篇文章 之後,如果不希望這資料庫一直以服務狀態執行,而是希望 Client App 啟動時才執行的方法。 其實,就跟前一篇一樣的設定,就是不要做 install_service 的動作。 只是有幾個要先做的步驟還是少不了 一、要註冊 Firebird  到 Register 裡面 執行 instreg,這個動作在一部 電腦只需要做一次就好 D:\FB3\instreg install -z 二、在客戶端程式執行時 啟動 Firebird 引擎 呼叫方法大致分兩種 (1) 經典模式 D:\FB3\firebird -a (2)超級伺服器模式 D:\FB3\firebird -a -m ※兩種模式參考 說明書 其實在 Windows 下這兩種模式都差不多,選擇一種就可以,啟動後可以在工作列圖式看到這個圖案。 這個引擎會一直開著直到 Windows 關閉為止,或是手動 Shutdown 它。

FireBirdSQL 小型(崁入型)資料庫 初探、下載、建立、設定

圖片
常常會有些時候,開發一些工具程式會需要自帶資料庫的時候。 在10年前,那時候最好的一些開發工具選擇可能還是 Foxpro 吧。 但是自從微軟不再對 Foxpro 做更新時,就已經是末路之流了。 近年來,桌機上的商用主流依然是 Windows 無誤,開發工具從我孰悉的 powerbuilder 漸漸轉向了 C# 。 雖然 powerbuilder 沒辦法使用 Embedded Database ,然而業務開發又需要提供具有資料庫能力的『單機版』程式,雖然說是單機版,但實際使用上通常都會在 3 ~ 5人左右的程式。 因為公司是希望開發好的程式/資料庫可以打包一起,然後是由不是很懂 IT 的業務人員去客戶那邊安裝(最好能一鍵安裝或傻瓜安裝就搞定)的。 MS SQL express 是不錯的選擇,但是太過肥大,安裝又是囉哩叭縮,要包成自動安裝難度太高,如果又要網路共享需要比較懂得人才有辦法去設定啊,也不是一般業務人員可以搞定啊。 雖然,MySQL、 、MariaDB 也是不錯,但還要安裝 ODBC 來分享這也不好搞的。 SQL lite 太過單機,小型群組分享資料庫是做不到了,還得透過 API 指令。 Access DB、Excel table 等太過精簡,操作一個不小心未正常關檔,檔案就掛了,欲哭無淚。Excel table 資料庫沒有加密,等於裸奔狀態。 游網之餘,看到了這個 FireBirdSQL ,其前身是 Interbase 也算元老級的,但支援小群組共同使用,支援加密、StoreProcedure、可以當 Embedded DB 也可以當 C/S 資料庫,雖然效能不怎樣,但是這樣在小程式上真的綽綽有餘,所以趕快來研究看看吧。 FireBirde官方網站 一、下載主程式 本篇討論使用的是 Firebird 3.0.4 版  ,由於需要能夠被打包所以就下載這個 ZIP 壓縮檔版本 為什麼下載 32-bit 版本? 因為沒辦法保證客戶使用的 Windows 平台是 64-bit 的,所以保險起見就用 32-bit 來執行。 下載 ZIP 檔案回來後解壓縮後(通常會放在 C:\FB3 ,實際依需求去放),就可以開始設定了。 二、建立一個放資料檔案的路徑 (我的範例是 D:\NEWDB) 三、建