跳到主要內容

發表文章

目前顯示的是 四月, 2012的文章

Create DBDEMOS from BDE into PostgreSQL

BDE have a demo database: DBDEMOS.

But, dbExpress is not easy a demo database, so I just to create a sample program.

I used:
1. Devart dbExpress for PostgreSQL
2. Delphi XE
3. BDE + Paradox database

Below my example picture:
First, I select our db data (C:\Program Files (x86)\Common Files\CodeGear Shared\Data; C:\Program Files (x86)\Common Files\Borland Shared\Data), when we get all xml's db file(same Paradox format) on the folder.

Then we can to click "Create SQL". Create SQL Statement when after copy to pgAdmin run it.
Or to use "Create Table" direct to create table.

Setting PostgreSQL's login param.

Final, click "Import Postgres", The data pump will all data append from xml into PostgreSQL.

Now, we can try dbexpress framework for PostgreSQL!
Download this demo

[轉]Fixing TCriticalSection

TCriticalSection (along with TMonitor*) suffers from a severe design flaw in which entering/leaving different TCriticalSection instances can end up serializing your threads, and the whole can even end up performing worse than if your threads had been serialized. This is because it’s a small, dynamically allocated object, so several TCriticalSection instances can end up in the same CPU cache line, and when that happens, you’ll have cache conflicts aplenty between the cores running the threads. How severe can that be? Well, it depends on how many cores you have, but the more cores you have, the more severe it can get. On a quad core, a bad case of contention can easily result in a 200% slowdown on top of the serialization. And it won’t always be reproducible, since it’s related to dynamic memory allocation. There is thankfully a simple fix for that, use TFixedCriticalSection:type TFixedCriticalSection = class(TCriticalSection) private FDummy : array [0..95] of Byte; …

High Five - SQL Complete 介紹

還記得之前介紹過的「SQL Pretty Printer:好用的 SQL Formatter 工具」嗎?

這次來介紹 DBA 的好朋友 - Devart 公司所出品的「SQL Complete」

What is SQL Comlete?
Devart的Demo圖片已經完整呈現這款工具的概念了!
簡單的說,就是自動完成的工具

當然還有更多額外的工具

我們先來看與SQL Pretty Printer比較吧:
參賽者SQL Complete
(Express Version)SQL Pretty Printer智慧感知功能Smart IntellisenseVX提供表格物件名稱
Name suggestions for major objectsVX提供函式名稱
Name suggestions for advanced objects部份提供
Partial SupportX

Delphi裡的夢幻逸品 - dbExpress driver for PostgreSQL

其實從 C++ Builder 6 開始,就很喜歡 dbExpress 的設計方式,雖然必需搭配 DataSnap (Midas) 才能完全發揮它的作用,但是看中它仍持續成長的潛能以及多樣化的驅動連結,至今讓我只要有機會一定會把它納到我的專案中

在 C++ Builder 6 時期,免費的 dbExpress for MySQL 5 讓我吃了不少苦頭,後來才發現 Devart 公司有出相關的 Driver,在當時就非常想要購買這項產品。
在 MySQL 被 Oracle 強暴 購買後,我也斷了使用MySQL的想法,取而代之的就是與 Oracle 近乎同等級的資料庫 -- PostgreSQL
好陌生的資料庫,dbExpress有可以使用的Driver嗎?
有,Kylix有!但也只限在Linux下使用 (2002年的骨灰級產物了...)
咦!C++ Builder XE2 沒有,Delphi XE2 也沒有 (廢話,這兩個是相同的產品),那怎麼辦?
於是在 Devart 網站中找到了 dbExpress for PostgreSQL,看完它的介紹後,真覺得是個夢幻的逸品
要OleDB嗎?不用!
要ODBC嗎?不用!
要Native Client嗎?不用!
它只要靠自己就吃天下了!讚吧!
不囉嗦,先來看看安裝: 「Next」按沒機次就安裝好了,安裝速度飛快!
安裝後即會在Data Explorer增加Devart PostgreSQL群組 因為Devart的dbExpress Driver並不是使用.NET寫的,所以沒辦法在Data Explorer列出資料庫的細節內容,但也換得更佳的速度
還是想看 Tables 和 Views?用 pgAdmin III 還比較實用些。
怎麼連接到資料庫呢?三個步驟,如下圖:
連結技巧就這樣,沒了!會不會太簡單?
除了配服Devart的技術外,更讓人覺得高興的是這項工具到現在還有在持續維護,真不愧是Delphi的資料庫專家!
而且還能搭配Devart自家的dbMonitor,營造出SQL Server平台外的Profiler介面,對於資料庫連結能有更進一步的訊息可供調整,這玩樣兒真是太棒了啦!

與其花大錢買昂貴的資料庫,還不如花少少的錢買個好用的驅動,再搭配上可商用的免費資料庫,這樣不僅專案建置的成本降低,更可以縮短開發的工時,何樂而…