使用SQL Server時,如何在表中字段上約束一個約束,以便可接受的值範圍在0到100之間?如何爲一個數字腳本SQL約束落入一個範圍內?
8
A
回答
19
ALTER TABLE Table
ADD CONSTRAINT CK_Table_Column_Range CHECK (
Column >= 0 AND Column <= 100 --Inclusive
)
3
檢查約束,如「fieldname BETWEEN 0 AND 100」應該這樣做。
2
嘗試:
ALTER TABLE myTableName
ADD CONSTRAINT myTableName_myColumnName_valZeroToOneHundred
CHECK (myColumnName BETWEEN 0 AND 100)
此檢查是包容性 - 這裏是約之間的一些信息,從MSDN: BETWEEN (Transact SQL)
1
據對我來說,正確的問題不是「怎樣」,而是「爲什麼」。
這個0-100規則聽起來像是一個商業規則。爲什麼它應該在服務器/數據庫端實現?如果輸入的值不正確,誰會收到錯誤信息?
如果用戶收到錯誤消息,讓代碼在事務到達服務器之前給他提供消息是不是更容易?
怎麼樣的範圍修改?規則會改變嗎?我想是的:規則總是改變。範圍可以從0-100更新到101-200?在這種情況下,數據庫中已經輸入的值是什麼?
相關問題
- 1. 範圍約束數字MySQL列:如何?
- 2. 確定一個數字是否落入指定的一組範圍內
- 3. 如何爲列指定一個約束,以使該值落入一組值中?
- 4. 如何將Gradle的「latest.integration」或「latest.release」約束到一個範圍?
- 5. 生成一個隨機數落入多個範圍
- 6. 如何在全球範圍內提供一個js腳本?
- 7. 約束整數在一定範圍內的數組
- 8. 約束值到一個數組的範圍
- 9. 如何使選擇有一個範圍內的每個數字
- 10. 如何使用Arduino將數字從一個數字範圍轉換爲另一個數字範圍
- 11. 如何從一個範圍內的數字內插到另一個範圍內的相應值?
- 12. 如何使用SQL查找範圍在另一個範圍內的天數
- 13. 翻譯從一個數字範圍到另一個範圍
- 14. 爲範圍內的每個值應用一個數字
- 15. 唯一性驗證器:範圍約束
- 16. 如何使一個範圍內一系列SQL
- 17. 如何在數組範圍內找到一個數字
- 18. 如何設置一個數字範圍爲這個功能
- 19. 我如何插入一個範圍圍繞每一個&
- 20. SQL-需要一個圍繞多個WHERE約束的方法
- 21. 值在一個數字範圍內的組中存在(SQL)
- 22. 定位範圍內的一個範圍
- 23. 在一個範圍內選擇一個動態數字
- 24. 前一個/下一個數字範圍內
- 25. 如何寫一個SQL查詢來找出某個值範圍落在
- 26. 入門內的另一個範圍
- 27. 如何根據範圍在SQL中設置一個數字
- 28. Excel:在一個單元格中插入一個數字範圍
- 29. 文本在一個範圍內對齊
- 30. Objective c將一個數字範圍映射到另一個數字範圍
如果您使用其他答案中提到的BETWEEN 0 AND 100,則SQL Server Management Studio會將其轉換爲([column]> =(0)AND [column] <=(100))`if您正在使用GUI來創建它。 – 2015-10-16 14:12:00