我把guid 类型的值做参数 ,建立连接表的SQL 语句时 ,说是语法错误。
具体:CERATE PROCEDURE [dbo].[Employee_ByDepartmentID]
@DepartmentID uniqueidentifier
AS
SELECT
a.name
FROM UBSEmployee a
INNER JOIN UBSDepartment_Employee b on b.DepartmentID = @DepartmentID-------------------------------
EXEC @return_value = [dbo].[GetEmployee_ByDepartmentID]
@DepartmentID = 3d940364-70e3-40c8-82e3-a9c4b1a094c4SELECT 'Return Value' = @return_value消息 102,级别 15,状态 1,第 5 行
'd940364' 附近有语法错误。改成 in (select..) 的形式也是
请问怎么回事呢? 是类型问题?
具体:CERATE PROCEDURE [dbo].[Employee_ByDepartmentID]
@DepartmentID uniqueidentifier
AS
SELECT
a.name
FROM UBSEmployee a
INNER JOIN UBSDepartment_Employee b on b.DepartmentID = @DepartmentID-------------------------------
EXEC @return_value = [dbo].[GetEmployee_ByDepartmentID]
@DepartmentID = 3d940364-70e3-40c8-82e3-a9c4b1a094c4SELECT 'Return Value' = @return_value消息 102,级别 15,状态 1,第 5 行
'd940364' 附近有语法错误。改成 in (select..) 的形式也是
请问怎么回事呢? 是类型问题?
@DepartmentID = 3d940364-70e3-40c8-82e3-a9c4b1a094c4
改为
@DepartmentID = '3d940364-70e3-40c8-82e3-a9c4b1a094c4'
@DepartmentID = 3d940364-70e3-40c8-82e3-a9c4b1a094c4SELECT 'Return Value' = @return_value---->EXEC @return_value = [dbo].[GetEmployee_ByDepartmentID]
@DepartmentID = '3d940364-70e3-40c8-82e3-a9c4b1a094c4'SELECT 'Return Value' = @return_value
INNER JOIN UBSDepartment_Employee b on b.DepartmentID = @DepartmentID -》
------
这个不用改
但是在 程序中是得不到这个结果的 ,SQL 语句不用改吗?