2017/08/20

DataSnap REST API Authorization with PHP


About Authentication with DataSet REST JavaScript client.
In connection.js:

1
2
3
4
5
function setCredentials(user, password)
{
   connectionInfo.authentication = convertStringToBase64(user + ":" + password);
   var testCreds = new DSAdmin(connectionInfo).GetPlatformName();
}

connectionInfo.authentication will send user and password to DataSnap DSAuthenticationManager.OnUserAuthenticate.

Well, how to send it?

2017/08/17

Why I Choose Delphi! (CHT)


扣除使用 C++ Builder 的時間,我實際使用 Delphi 的時間點是 2012 年,它帶我看到了不一樣的世界,見識到世界各地的高手使用 Delphi 創造出他們引以為豪的產品,並且無私的分享他們的學習知識,使我的技術能力得以跟隨他們的能力提升。

最最讓我喜歡的是 Delphi framework,創造應用程式之快,程式碼之洗練真的沒有任何的 framework 能出其右。

你能想像要做一個資料庫應用程式,只需要在畫布上帶出「TDataSet」,「TDataSource」, 「TDBGrid」三個元件,就完成了嗎?而且還不需要任何的程式碼!

光是這三個元件,就足以創造出無數的應用,幾乎任何需要使用資料庫的場合,都是從這個基底出發的。

2017/08/11

Delphi Zlib 與 SynLZ 的壓縮比較


原本使用 Zlib 作為主要的壓縮處理,但是效率實在不能算是滿意。

於是找了使用「組合語言」寫出來的 SynLZ (mORMot),效能據說非常好,就來比較看看。

首先找了一個 45 MB 大小的文字檔進行壓縮。

運作程式圖


底下是比較結果:

2017/08/09

ebook【Delphi跨平台資料庫程式設計火速上手】電子書出版 (CHT)

Delphi 跨平台資料庫程式設計火速上手,是本關於整合 Delphi 的跨平台技術打造 2-Tier 架構的跨平台 APP 的入門技術書。

全書沒有需要理解的技術知識,只講套路。

力求短時間把製作 APP 的工法熟悉,未來要開發其它的應用程式也能舉一反三。

底下是本書章節:

  • OpenSSL創造自己的金鑰    8
  • OpenSSL for Windows    8
  • 建構支援HTTPS的DataSnap Server    10
  • 第一次執行    13
  • 結論    17
  • DataSnap REST連線模式介紹    18
  • 持久連線模型    18
  • 多次連線模型    18
  • 不知該選哪一種時    19
  • DataSnap共享資料庫連線設計    20
  • 範例資料庫及ODBC資料來源    21
  • 建立可移殖到IIS的DataSnap Server專案    23
  • 建構DataSnap Client    27
  • 正式UI佈局    35
  • 本章總結    43
  • 多次連線模式DataSnap伺服器端設計    44
  • 為服務加入驗證    50
  • 建立資料庫連線元件    51
  • 增加資料庫查詢服務:FetchDataSet    53
  • 增加更新資料服務:ApplyUpdateData    56
  • 多次連線模式DataSnap客戶端設計    59
  • DataSnap客戶端模組設計    63
  • 實作客戶端Fetch Data    70
  • 實作客戶端ApplyUpdate Data    74
  • 原生連線API設計    76
  • 資料壓縮的必要性    95
  • 多連線模式章節總結    96
  • Professional和Community Edition社群版    96
  • Community Edition / Professional的DataSnap framework    98
  • 資料庫連結元件    100
  • DataSnap Bridge架構說明    101
  • DS Bridge Server建立 (使用FireDAC)    104
  • 建立資料連結元件 (FireDAC)    107
  • 建立第一個API:FetchData    109
  • 建立第二個API:ExecSQLCommand    113
  • DS Bridge Client建立 (使用FireDAC)    117
  • 建立與DS Bridge Server端的連線    119
  • 加入設計時期欄位    124
  • 圖像欄位的重建    125
  • 資料綁定 (LiveBindings)    126
  • 在設計時期切換分頁    129
  • 修改資料    135
  • 展示    138
  • 結語    139
  • 附錄    140
  • FDMemTableHelperUnit.pas    140

 


如果您對本書有興趣,或是想嚐試在行動裝置開發屬於自己的 APP 應用,可以在以下商城購買:



本書的 Example:Download

論 Firebird Embedded 最小部署與 SQLite 的比較 (CHT)


最近看嵌入式資料庫,找到 SQLite 和 Firebird embedded (emb) 的比較,SQLite 相當輕巧,搭配優良的開發工具,在部署時甚至不需要打包 sqlite3.dll 引擎。

真不甘心,Firebird embedded 也有最小配置啊!

就來整理一下,Firebird embedded 到底可以有多小吧!

最小配置:
  • fbembed.dll (視連接 Driver 可能需要改名為 fbclient.dll 或 gds32.dll)
  • icudt30.dll
  • icuin30.dll
  • icuuc30.dll

使用【最小配置】就可以連線 Firebird emb 資料庫。

但是會有副作用──在【每次】連線時會產生Log,並紀錄於「firebird.log」檔案,內容大致如下: