Jit*_*thu 2 sql sql-server-2008 sql-view
这个问题之前已经问过几次,不幸的是我没有得到我的问题的答案.
我有两个SQL(SQL SERVER 2008)表,Employee和Employee费用,其中Employee Id分别是主键和外键.
员工表列,1.员工ID(P键)2.经理3.位置4.加入日期5.名称
员工费用表列,1.费用ID(P键)2.员工ID(F键)3.费用类型4.费用金额5.费用日期.
问题是,我想创建一个在SharePoint Web部件中使用的视图,我将在其中查询这两个表,所以我的要求是使用以下列创建视图,
从员工我需要员工ID和姓名.从员工费用我需要费用类型,费用金额,费用日期.
其他要求.
一个.如果我在Employee Expense表中有一个员工的多个条目,那么View中应该有很多行
湾 即使我在Employee Expense表中没有条目,那么我也应该在视图中获取该特定Employee的行,而Employee Expense表列为null.
请帮我继续......
编辑在Stack Overflow成员指示时添加所需的视图代码!!
CREATE VIEW ExpenseView AS (
SELECT [Employee Expense].[Employee ID], Employee.[First Name], [Employee Expense].[Expense Type],[Employee Expense].[Expense Amount],[Employee Expense].[Expense Date]
FROM Employee,[Employee Expense]
WHERE [Employee Expense].[Employee ID] = Employee.[Employee ID])
Run Code Online (Sandbox Code Playgroud)
请帮忙.
Mik*_*son 10
如果要从SP中创建视图,则需要使用动态SQL.
像这样的东西.
create procedure ProcToCreateView
as
exec ('create view MyView as select 1 as Col')
Run Code Online (Sandbox Code Playgroud)
该create view...代码必须发送一个字符串参数exec,并通过它的外观,你已经有了你需要的视图的代码,所以只是将其嵌入在之间'.
我真的不知道你为什么需要那个.也许您只需要知道如何使用 SP中的视图
create procedure ProcToUseView
as
select Col
from MyView
Run Code Online (Sandbox Code Playgroud)
我在SQL数据库中使用以下动态SQL代码来创建具有存储过程的视图。它工作正常:
CREATE PROCEDURE uspCreateView
AS
EXEC ('
CREATE VIEW vwDataLayoutFileAssignment
AS
SELECT b.FileID, d.FieldID
FROM [File] b, DataLayoutFileAssignment c, [Field] d
WHERE b.DriverFileID = c.FileID
AND C.DataLayoutID = d.DataLayoutID
')
Run Code Online (Sandbox Code Playgroud)