mysql SET型別 應用技巧

2021-09-08 21:16:25 字數 1024 閱讀 3551

mysql set型別,官方手冊:

應用例項如下:

有 一張表pms_serverlist

現讓該錶的某條記錄的state欄位設定'merged''hidden'

,操作如下:

update

pms_serverlist 

set`state`

=`state` |4

|16where

serverid=47

現讓該錶的某條記錄的state欄位取消設定'merged''hidden'

,操作如下:

update

pms_serverlist 

set`state`

=`state` &~4

&~16

where

serverid=47

說明:上面的實現是利用位操作運算完成的,set型別,是用二進位制來儲存值的,共8位,每一位表示乙個值,像上面情況,

,第二位儲存的是'recommend'

第二位儲存的是'merged'

,第三位儲存的是'new'

,第四位儲存的是'hidden'

當該位為1時,表示該位的值顯示出來,反之,則不顯示。

所以,要是該欄位'merged'被選中設定,字段應該與「001」做「|」(或)運算,

----注意,此時的右邊為最高位。  

不被選中設定,則字段應該與「~001」(取反)做「&」(和)運算。

Mysql SET(集合型別) 資料型別

set 集合型別 set是乙個字串物件,可以有零或多個值,其值來自表建立時規定的允許的一列值。指定包括多個set成員的set列值時各成員之間用逗號 間隔開。這樣set成員值本身不能包含逗號。set的容納範圍為64個不同的成員.set其實和列舉差不多,set指定了乙個集合範圍,在我們插入資料的時候,需...

C語言之欄位型別應用的技巧

在各種裝置間的傳輸協議或者通訊協議中,一般對資料的字段型別都各不相同,比如bcd碼,bin碼,ascii碼等。下面接收幾種字段型別定義的例項 1.bcd碼 定義乙個16位機器編碼 2018041912345678 uint8 t dev 8 一般兩種儲存方式 dev 0 0x20 dev 1 0x1...

AJAX應用技巧

xmlhttprequest瀏覽器快取問題 在firefox瀏覽器中,xmlhttprequest物件相相同的url傳送請求時,瀏覽器每次都會向伺服器傳送請求,不存在快取的問題,而ie瀏覽器如果url請求位址相同時,瀏覽器會讀取其快取中的內容進行響應,而不再向伺服器傳送請求,解決瀏覽器快取的辦法是 ...