JetBrains 的 DataGrip 可以在建立 DB 連線以後,選擇要同步、檢視的項目,避免同時讀取大量資料導致速度變慢。
在 connection 上點滑鼠右鍵,選擇 properties 後切換到 schemas 頁籤,選擇想要讀取的項目 (SQL Server 這邊,可以是資料庫也可以是權限等):
軟體開發、伺服器和生活瑣事
JetBrains 的 DataGrip 可以在建立 DB 連線以後,選擇要同步、檢視的項目,避免同時讀取大量資料導致速度變慢。
在 connection 上點滑鼠右鍵,選擇 properties 後切換到 schemas 頁籤,選擇想要讀取的項目 (SQL Server 這邊,可以是資料庫也可以是權限等):
跑到一半 guest OS (windows 10) 卡住不會動,但是 host 中的 VMware Workstation Pro 又把處理器吃光,不知道是在跑什麼。
在 VMware Community 看到一個說法,是 Windows 中的 HyperV 和 VMware 衝突,關閉即可恢復:
使用系統管理員身份執行 cmd,並輸入設定:
bcdedit /set hypervisorlaunchtype off
bcdedit /set hypervisorlaunchtype auto
嘗試了感覺沒有差很多
在開始講要怎麼查詢藥品之前,先來講一下醫院評鑑標準。
衛福部有公告醫院、教學醫院、醫療中心等的評鑑標準,要求蠻多的:
能夠達到這些標準的才夠升等成 血汗醫院 教學醫院。所以如果想要查詢藥品名稱、學名、化學名、藥理作用、機轉、副作用等,教學醫院應賅都要有提供。
這裡從政府開放資料平台中的合格醫院名單,列出幾個教學醫院:
先決定要從哪一間醫院查詢資料,進入該院的藥品查詢系統,輸入藥品名稱,就可以看到相關資料。以下範例為馬偕醫院的藥品查詢系統:
查詢的藥品為「Fallep」,及惡名昭彰的「FM2」(2 是 2 毫克的意思,吃 2 個就是 FM 4 了),該藥品作為安眠藥使用,也是 BZD 類型的藥劑。
另外,gov.tw
都是政府機關才能申請的網域名稱,若要快速比較多個醫院的藥品資訊,可以在搜尋時直接過濾網域名稱。以下是 Google 查詢範例 (加上 site:gov.tw
進行過濾):
除了 sqlsrv
以外,也可以透過 pdo_dblib
來連線。
若使用 ondrej 的 PHP PPA,則安裝 php-sybase
,安裝後透過 php -i
可以看到 extension 資訊:
....
/etc/php/8.2/cli/conf.d/20-pdo_dblib.ini,
....
PDO drivers => dblib, mysql, pgsql, sqlite, sqlsrv
pdo_dblib
PDO Driver for FreeTDS/Sybase DB-lib => enabled
Flavour => freetds
....
寫個 script 測試連線:
<?php $conn = new PDO( 'dblib:host=192.168.0.7;port=1443;dbname=test;', 'username', 'password', );
先說,很麻煩。
需要先安裝二個驅動程式:
裝完以後執行 php -i
,若有顯示 pdo_sqlsrv
和 sqlsrv
表示有正確啟動。
最後可參考 PHP PDO 與 SQL Server 連線的語法,建立連線。
手上的專案是跑在 Alpine Linux with PHP on Docker,這裡先做好 docker image,有需要請自取:https://hub.docker.com/repository/docker/johnroyer/php-mssql-docker/general