• 2

有關SQL server中的"預設值或繫結"


slash410 wrote:
資料很怕一個"資料"放在不同的欄位.....(恕刪)


也還好,但是遇到這種需求,通常是選擇合併後的值是不給使用者異動


因為不知道樓主的資料是如何生出來的,人工KeyIn還是由某程式生出來的

人工KeyIn,那這個ABC欄位是有問題的,因為無法避免笨使用者輸入2014 09 31這樣的值,這到後端合併只會拋出錯誤

Excel有個日期的格式,可以幫使用者檢核日期格式是否正確


至於樓主為何日期要拆成年月日三個欄位?Sql Server只要放一個日期欄位即可,用SQL指令就可以把日期拆成年月日了
slash410 wrote:
資料很怕一個"資料"...(恕刪)


樓主都說這三個欄位都為數字型態了..
所以不可能直接用+的來得到年月日

一定要先轉成文字型態..再合併
但月和日有 1 - 9 個位數的問題
所以 view 裡加了判斷
個位數前面加 0
這樣結果才有可能全部都為8碼的yyyymmdd

如果樓主你一定要在原table加入此欄位...用trigger一定也可以做到..
但這只會讓資料庫越來越大....
而且同一個table 放了重複的值..已經違反了第一正規化
不知有無誤會你的意思, 試試這個..

alter table tablename add ymd as cast(y as char(4)) + '/' + right(m + 100, 2) + '/' + right(d + 100, 2);

增加一個欄位ymd, 把 y, m, d 三個 int 欄位合併成一個日期欄位.
不過前提是, y, m, d 三個欄位加起來必須得是合理的日期
  • 2
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?