Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.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_Database_Stored Procedures_Informix_Execution Time - Fatal编程技术网

Sql 存储过程的执行时间

Sql 存储过程的执行时间,sql,database,stored-procedures,informix,execution-time,Sql,Database,Stored Procedures,Informix,Execution Time,在informix 11.5上测试存储过程执行时间的古老方法是什么。我正在考虑从unix提示符执行类似的操作: $ time (echo 'execute procedure foo(1)' | dbaccess ...) 还有其他想法吗?当然,你可以做一些更详细的事情,但如果这就是你所需要的,为什么还要麻烦呢?显然,如果有更多步骤,请将sql移动到单独的文件中并运行 time dbaccess <dbname> file.sql time dbaccess file.sql

在informix 11.5上测试存储过程执行时间的古老方法是什么。我正在考虑从unix提示符执行类似的操作:

$ time (echo 'execute procedure foo(1)' | dbaccess ...)

还有其他想法吗?

当然,你可以做一些更详细的事情,但如果这就是你所需要的,为什么还要麻烦呢?显然,如果有更多步骤,请将sql移动到单独的文件中并运行

time dbaccess <dbname> file.sql
time dbaccess file.sql

顺便说一句,您的代码片段中缺少一个引号

我使用SQLCMD程序来完成这类工作。它有一个基准模式(-B选项),还使编写SQL更容易:

sqlcmd -d stores -B -e 'execute procedure foo(1)'

它是开源的,可以从中获得。

要使建议的语法起作用,您需要使用:
time sh-c“echo”execute procedure foo(1)| dbaccess“
。如图所示,您将从shell中得到一个语法错误。正如RET所指出的,您可以简单地对dbaccess进行计时:
echo'executeprocedure foo(1)| time dbaccess…
。但是我仍然使用(我的)SQLCMD程序。还要注意,您的计时将包括启动DB访问和建立数据库连接的时间;SQLCMD允许您分离这些问题。