Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.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生成所有选择脚本(asp.net)_Asp.net_Sql Server - Fatal编程技术网

sql server生成所有选择脚本(asp.net)

sql server生成所有选择脚本(asp.net),asp.net,sql-server,Asp.net,Sql Server,我正在开发一个应用程序,允许用户选择表和列,并选择连接方法(如内部、外部..)以及聚合函数sql(sum、avg..等),以便从这些选择中生成报告 我所做的是附加字符串以向sql server生成请求。我认为这样做是错误的,因为用户可以选择很多列,这会引发意外的异常。有没有更好的方法(不是源代码)?正如您所问的,管理服务器端生成并在SQL server上执行的查询(可以包含sum、avg等)的最佳方法是什么?,我正在为此写最好的建议。考虑并遵循你的路径。 若您在服务器端生成了临时查询,那个么您肯

我正在开发一个应用程序,允许用户选择表和列,并选择连接方法(如内部、外部..)以及聚合函数sql(sum、avg..等),以便从这些选择中生成报告


我所做的是附加字符串以向sql server生成请求。我认为这样做是错误的,因为用户可以选择很多列,这会引发意外的异常。有没有更好的方法(不是源代码)?

正如您所问的,
管理服务器端生成并在SQL server上执行的查询(可以包含sum、avg等)的最佳方法是什么?
,我正在为此写最好的建议。考虑并遵循你的路径。

若您在服务器端生成了临时查询,那个么您肯定可以将它们写入名为
存储过程的SQL语句组中。这有以下优点

  • 更易于管理的是,如果同一组SQL块需要在多个地方使用,那么在任何地方都可以使用这个过程
  • 安全-您不必为多个表(
    join
    ing tables)设置权限(如
    select
    ),只需对过程设置
    execute
    权限即可
  • 性能良好-
    执行计划缓存和重用
  • 来源-

    存储过程


    如果您不熟悉
    存储过程
    ,并且想知道如何在asp.net中使用它,下面是本教程-

    您尝试过存储过程吗?在SQL过程中编写所有select语句,并从代码中调用该语句。