Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL Server存储过程中的逻辑和检查表_Sql Server_Sql Server 2008_Stored Procedures - Fatal编程技术网

Sql server SQL Server存储过程中的逻辑和检查表

Sql server SQL Server存储过程中的逻辑和检查表,sql-server,sql-server-2008,stored-procedures,Sql Server,Sql Server 2008,Stored Procedures,我终于被存储过程弄湿了,我的第一个存储过程需要一些帮助 我得到了基本布局,并设置了一个SP,它什么也不做,只设置了两个变量并选择它们,不返回任何信息 在历史记录右侧,我有两个主记录表tblRecordsCurrent(RecordID)和tblRecordsHistorical(RecordID),以及两个tblDataSet(DatasetID)的父表,其中都有一个标志dsCurrent 每天我使用一个新的DataSetID将5000条记录上传到tblRecordsCurrent。上载新数据集

我终于被存储过程弄湿了,我的第一个存储过程需要一些帮助

我得到了基本布局,并设置了一个SP,它什么也不做,只设置了两个变量并选择它们,不返回任何信息

在历史记录右侧,我有两个主记录表
tblRecordsCurrent(RecordID)
tblRecordsHistorical(RecordID)
,以及两个
tblDataSet(DatasetID)
的父表,其中都有一个标志
dsCurrent

每天我使用一个新的DataSetID将5000条记录上传到tblRecordsCurrent。上载新数据集时,前一天的数据集(5000条记录)将移动到tblRecordsHistorical,tblDataSet表中的DSCurrent标志将更新为False

我将向StoredProcedure提供一个要移动的数据集ID和目标('C'或'H'表示当前/历史)。首先,我需要检查DataSetID是否存在,然后在与DataSetID相关的tblRecordsCurrent/Historical中是否有任何记录

1-我如何确定DataSetID是否存在,我假设它是tblDataSet中的一个
选择计数(*),其中DataSetID=@DataSet
,但这是如何实现的,我只是做:

@DataSetExistCount=SELECT COUNT(*) from tblDataSet where DataSetID=@DataSet
if @DataSetExistCount== then
     @errCount = @errCount + 1
else
   >>> MORE LOGIC <<<
END
@DataSetExistCount=从tblDataSet中选择COUNT(*),其中DataSetID=@DataSet
如果@DataSetExistCount==则
@errCount=@errCount+1
其他的

>>>更多逻辑您只需检查它是否存在:

If Exists ( select 1 from tblDataSet where DataSetID = @dataSet )
begin
   -- Do your move logic
end
else 
begin
    -- Doesn't exist so do something else
end

太好了,谢谢。我从其他来源获得了一些信息,并将发布我的最终代码,以向任何可能的读者演示什么是可能的。在那之前我不会接受答案。