2015-12-06 58 views
1

我注意到,一些人在數據庫列,而不是例如iduseraddress使用類似h_ide_userf_address等等數據庫表中的列名

那是某種安全方面的?或者這些都是一些文字的捷徑?

+1

我看不到與安全性的關係。在'用戶'的情況下,目標可能是避開保留字。但是,實際上,您需要查看列的定義或更好地詢問數據庫deisgner的意圖。 –

回答

1

其因有可能會像USER_ID,CATEGORY_ID許多ID字段,這就是爲什麼他們用這樣的代碼是可以理解的。

和談論列名稱,如f_address,他們只是快捷方式,比如說首地址。它沒有任何與安全,而是以提高查詢可讀性使用真名田,使人們可以通過觀察列名其保存哪些數據才明白。

如果有喜歡CATEGORY_ID和sub_category_id領域,它是從外地名字可以理解的,但如果我用表示C_ID和S_ID,其難以描繪它。

+0

如果問題解決了,請將答案標爲「已接受」......這樣可以幫助其他人尋找類似的問題 – Naruto

0

絕對不是安全相關的。

一些使用它的可讀性和速度(你不必記得你給該表中的某個名稱 - >看下面的例子)編寫查詢時。

select a.name, b.name from table1 a join table2 b on a.id=b.id 

這樣你必須記住,表1被命名爲和表2中稱爲b等

但是如果你使用tablename_field(您可以通過只使用第一個字母縮短的表名)。這樣,在創建連接查詢時,永遠不會有重複的字段名。

0

好,「用戶」是在SQL Server中的安全對象,所以使用的是一種可怕的。 'ID'和'地址'過於泛泛,在用作屬性名稱時不能提供任何語義。

如果設計的目的是可維護和可讀的,那麼有些詞根本不起作用。