我的表中有一个名为MealType(VARCHAR)的列,其中包含{“Veg”,“NonVeg”,“Vegan”}的CHECK约束
这将照顾插入.@H_502_3@
我想显示这些选项供选择,但我无法弄清楚SQL查询以找出表中特定列的约束.@H_502_3@
从第一眼看到MS sql服务器中的系统表,我似乎需要使用MS sql的API来获取信息.我希望SQL查询本身能够得到它.@H_502_3@
解决方法
此查询应显示表上的所有约束:
select chk.definition from sys.check_constraints chk inner join sys.columns col on chk.parent_object_id = col.object_id inner join sys.tables st on chk.parent_object_id = st.object_id where st.name = 'Tablename' and col.column_id = chk.parent_column_id
select substring(chk.Definition,2,3),substring(chk.Definition,9,6),20,5)