Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.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存储过程的值或结果_Sql_Sql Server_Sql Server 2008_Math - Fatal编程技术网

了解每个变量SQL存储过程的值或结果

了解每个变量SQL存储过程的值或结果,sql,sql-server,sql-server-2008,math,Sql,Sql Server,Sql Server 2008,Math,这是我的存储过程: CREATE PROCEDURE _spCalc (@Num01 decimal(18,0), @Num02 decimal(18,0), @Num03 decimal(18,0)) AS BEGIN DECLARE @Var01 float, DECLARE @Var02 float, DECLARE @Var03 float SET @Var01 = @Num01 * 1000 SET @Var02 = @Num02 - ((POWER(6.53

这是我的存储过程:

CREATE PROCEDURE _spCalc
   (@Num01 decimal(18,0), @Num02 decimal(18,0), @Num03 decimal(18,0))
AS
BEGIN
   DECLARE @Var01 float, DECLARE @Var02 float, DECLARE @Var03 float

   SET @Var01 = @Num01 * 1000
   SET @Var02 = @Num02 - ((POWER(6.53 * @Var01, 0.5)) / (POWER(@Num03, 0.5)))
   SET @Var03 = (1 - 3.4680733 * LOG(@Var02) + 1.8779192 * POWER(LOG(@Var02), 2))

   INSERT INTO _myTable(Num01, Num02, Num03, Num04) 
   VALUES (@Num01, @Num02, @Num03, ((@Var02 + @Var03 + @Num01) * 1000))
END
我的问题是,如何测试并知道我声明的每个变量的结果?我想将结果与excel格式的计算结果进行比较。只是想确定一下,结果是一样的

干杯,

我们可以使用“print@var01”。在计算之前或之后,对不同的变量名重复此操作。这将显示在结果的消息部分。 或 我们可以在insert语句之前使用“select@var01 as var01、@var02 as var02、@var03 as var03”。这将在执行期间为您提供类似于表的输出


您可以根据需要扩展打印或使用其他变量进行选择。

由于某些原因,我无法添加更多注释。 在分配给变量之前,尝试将计算作为单独的“选择”


相应地替换u传递给过程的值

错误消息是,发生了无效的浮点操作。关于返回值。但如果我按照您的建议删除打印/选择。它起作用了!其他想法?如果LOG()得到负值,请检查正在使用的值。在分配给变量之前,尝试将计算作为单独的“选择”进行。“如果LOG()得到负值,请检查正在使用的值。”。。这就是我要检查的点,然后将其与excel calc进行比较。
select @Num01 * 1000 as @Var01
select @Num02 - ((POWER(6.53 * @Var01, 0.5)) / (POWER(@Num03, 0.5))) as @Var02
select (1 - 3.4680733 * LOG(@Var02) + 1.8779192 * POWER(LOG(@Var02), 2))