我正在尝试获取两个datetime之间的所有SQL caseID

我正在尝试获取两个datetime之间的所有SQL caseID,sql,asp.net,stored-procedures,Sql,Asp.net,Stored Procedures,我正在ASP.NET中构建一个Web服务,它将调用一个存储过程来获取两个日期之间的所有案例。我正在使用SQL Management Studio以下是我的代码: ALTER PROCEDURE spGetNewCases (@startDate datetime, @endDate datetime) AS BEGIN SELECT caseID FROM tblCases WHERE dateOpened BETWE

我正在ASP.NET中构建一个Web服务,它将调用一个存储过程来获取两个日期之间的所有案例。我正在使用SQL Management Studio以下是我的代码:

ALTER PROCEDURE spGetNewCases 
   (@startDate datetime, @endDate datetime)
AS
BEGIN 
    SELECT 
       caseID
    FROM
       tblCases
    WHERE
       dateOpened BETWEEN @startDate and @endDate
END
GO
EXEC spGetNewCases 
但是,我得到以下错误:

“找不到对象spGetNewCases”

在IDE中,单词“介于”和“与”以浅灰色而不是深蓝色突出显示。此外,我想用两个日期来测试它,比如2015-01-01和2015-01-04

我的SQL server中的datetime格式为datetime2((0),null)。例如

我非常感谢社区的反馈。谢谢大家!

编辑:

谢谢大家的帮助!这是我的新代码,它可以工作

-- procedure
USE [vetDatabase_Wizard]
GO
ALTER PROCEDURE sp_GetNewCases (@startDate datetime, @endDate datetime)
AS
BEGIN 
    SELECT caseID FROM tblCases
    WHERE dateOpened BETWEEN @startDate and @endDate
END
GO
EXEC sp_GetNewCases '2015-01-01', '2015-04-04'
检查您的数据库

USE CASE_DB
GO
限定您的架构名称

ALTER PROCEDURE schema.spGetNewCases ...
看看有没有找到它

编辑

如果您使用的是SSMS——右键单击存储过程并选择“修改”。这将为您提供一个预写的ALTER模板,然后您可以对其进行修改。

检查您的数据库

USE CASE_DB
GO
限定您的架构名称

ALTER PROCEDURE schema.spGetNewCases ...
看看有没有找到它

编辑


如果您使用的是SSMS——右键单击存储过程并选择“修改”。这将为您提供一个预写的ALTER模板,您可以修改该模板。

如果您的SP已创建,请检查数据库上下文。在SSMS中有一个下拉菜单,您也可以使用DBNAME。在ASP代码中,它位于连接字符串中

若并没有创建,你们需要先创建过程,然后你们可以修改过程

您可以这样调用SP:
EXEC spGetNewCases'2016-03-01','2016-05-01'


旁注:系统存储过程使用sp前缀。您可能应该选择不同的前缀,如sp_uu或usp。

如果创建了sp,请检查数据库上下文。在SSMS中有一个下拉菜单,您也可以使用DBNAME。在ASP代码中,它位于连接字符串中

若并没有创建,你们需要先创建过程,然后你们可以修改过程

您可以这样调用SP:
EXEC spGetNewCases'2016-03-01','2016-05-01'


旁注:系统存储过程使用sp前缀。您可能应该选择不同的前缀,如sp或usp。

您创建了该过程吗?我认为你不能改变一个不存在的过程。你已经创建了这个过程了吗?我认为您不能更改一个不存在的过程。另外,
EXEC spGetNewCases
是一个不包含参数的调用
EXEC dbo.spGetNewCases'2015-01-01','2015-01-04'
@JohnLBevan--这一点很好--但我认为这种情况下的错误消息是不同的--
过程或函数'spGetNewCases'expxts参数'@startdate',没有提供。
(或其他)另外,
EXEC spGetNewCases
是一个不包含参数的调用
EXEC dbo.spGetNewCases'2015-01-01','2015-01-04'
@JohnLBevan--这一点很好--但我认为这种情况下的错误消息是不同的--
过程或函数'spGetNewCases'expxts参数'@startdate',没有提供。
(或其他)