在SQL Server 2005中有定义ENUM的方法吗?
我有一些固定值需要在存储过程和函数中使用。
在SQL Server 2005中有定义ENUM的方法吗?
我有一些固定值需要在存储过程和函数中使用。
使用一个或多个标量UDF?
每个常量一个:
dbo.CONST_Bicycle
返回 1dbo.CONST_Car
返回 2每个枚举一个:
dbo.CONST_Types('Bicycle')
返回 1dbo.CONST_Types('Car')
返回 2或者使用一个表,每个枚举有ID和名称
使用客户端枚举来匹配它(也许要对表格解决方案进行验证)
与.Net不同,这里没有快速而干净的方法(根据您的评论)。
1,Bicycle
2,Car
3,MotorCycle
然后您可以在数据库表中的任何位置使用Id列的外键。
要检索值的确切名称,您可以使用LuVehicle表进行简单的内部连接。类似这样的东西
select empname, vehicleId, LuVehicle.Name from employees, LuVehicle
where employees.vehicleId = LuVehicle.Id