Archive for category Database
MS SQL Convert Datetime
因為常常都不記得mssql 的convert function 唯有寫下來呢~ 以下節錄自microsoft 的msdn:
| Without century (yy) (1) | With century (yyyy) | Standard | Result |
|---|---|---|---|
| - | 0 or 100 (1,2) | Default | mon dd yyyy hh:miAM (or PM) |
| 1 | 101 | U.S. | mm/dd/yyyy |
| 2 | 102 | ANSI | yy.mm.dd |
| 3 | 103 | British/French | dd/mm/yyyy |
| 4 | 104 | German | dd.mm.yy |
| 5 | 105 | Italian | dd-mm-yy |
| 6 | 106(1) | - | dd mon yy |
| 7 | 107(1) | - | Mon dd, yy |
| 8 | 108 | - | hh:mi:ss |
| - | 9 or 109 (1,2) | Default + milliseconds | mon dd yyyy hh:mi:ss:mmmAM (or PM) |
| 10 | 110 | USA | mm-dd-yy |
| 11 | 111 | JAPAN | yy/mm/dd |
| 12 | 112 | ISO | yymmdd
yyyymmdd |
| - | 13 or 113 (1,2) | Europe default + milliseconds | dd mon yyyy hh:mi:ss:mmm(24h) |
| 14 | 114 | - | hh:mi:ss:mmm(24h) |
| - | 20 or 120 (2) | ODBC canonical | yyyy-mm-dd hh:mi:ss(24h) |
| - | 21 or 121 (2) | ODBC canonical (with milliseconds) | yyyy-mm-dd hh:mi:ss.mmm(24h) |
| - | 126 (4) | ISO8601 | yyyy-mm-ddThh:mi:ss.mmm (no spaces) |
| - | 127(6, 7) | ISO8601 with time zone Z. | yyyy-mm-ddThh:mi:ss.mmmZ
(no spaces) |
| - | 130 (1,2) | Hijri (5) | dd mon yyyy hh:mi:ss:mmmAM |
| - | 131 (2) | Hijri (5) | dd/mm/yy |
另外就是只取 date 而不要 time 的做法如下 (這種做法不用convert 兩次,要變做varchar, 而這種方法可以保留datetime 這個format)
dateadd(dd,0, datediff(dd,0,yourdatefield))
[iPhone] Remote Query

chowky 一看到這個app ,最難理解的是用途是什麼?為什麼要download 這個app? 雖然iphone 直接connect database ,這種solution 其實是沒有的呢~,不過又要在server side 上deploy war (java) file。感覺得不太好。(太間接了)
當然其實要比較一下,m$的做法呢~依chowky 之前的經驗,window mobile 是否可以directly connect to ms sql server 呢?……….其實是沒有問題的,別人看上去似乎是好direct 的。事實?
當然,要透過在IIS,window server 上install sql server agent ,之後再set 好IIS。
接著就要在手機上install sql server compact edition,再copy 幾個files(詳細不記得了~不過好似利用visual studio 2005 是可以sync 入機中),最後就要利用一個叫做RDA 的library ,就完成了。他是支援database 的synchronization,不過就一定要在ms sql server 入面pull ,加上track 的attribute 就可以了。
Source: http://www.logicainformatica.it/NewSite/CosaFacciamo/DispositiviMobili/iPhone/RemoteQuery_en.html
[Optimization] 注意 boolean 的選取方法去提升 SQL 的 efficiency
先看看這個sql,假設 book_published 和 best_seller 是boolean (bit)
1 2 3 4 5 6 | SELECT DISTINCT a.author_id, a.author_name, b.book_id, b.book_title FROM authors a INNER JOIN books b ON a.author_id = b.author_id WHERE a.author_id = 27 AND b.book_published = 1 AND b.best_seller = 1 |
如果dataset太大的話,run sql 的時候,他們就要內部convert to bit 再做比較。
只要把sql 簡單作修改,就可以避免不必要的type conversion 所花的時間。
1 2 3 4 5 6 | SELECT DISTINCT a.author_id, a.author_name, b.book_id, b.book_title FROM authors a INNER JOIN books b ON a.author_id = b.author_id WHERE a.author_id = 27 AND b.book_published = '1' --只要加上quote,就不用type conversion AND b.best_seller = '1' |


Recent Comments