zoukankan      html  css  js  c++  java
  • 关于sql语句的疑问

    sql2005下,如下sql:

    declare @sql varchar(2000)

    set @sql='select * from Sysobjects'

    exec(@sql)

    在此如果不加括号,如(exec @sql),就会提示"找不到存储过程 'select * from Sysobjects'。";

    加上括号则可正常执行.

    exec执行存储过程或者函数,不用加挎号,否则要加

    http://msdn.microsoft.com/en-us/library/ms188332.aspx

    下面是Exec 的语法

    从语法定义可以看出,如果不加挎号, SQL SERVER 就会认为Exec 后面跟的是存储过程或者函数,所以会出现找不到存储过程的错误。

    Execute a stored procedure or function
    [ { EXEC | EXECUTE } ]
        {
          [ @return_status = ]
          { module_name [ ;number ] | @module_name_var }
            [ [ @parameter = ] { value
                               | @variable [ OUTPUT ]
                               | [ DEFAULT ]
                               }
            ]
          [ ,...n ]
          [ WITH RECOMPILE ]
        }
    [;]

    Execute a character string
    { EXEC | EXECUTE }
            ( { @string_variable | [ N ]'tsql_string' } [ + ...n ] )
        [ AS { LOGIN | USER } = ' name ' ]
    [;]

    Execute a pass-through command against a linked server
    { EXEC | EXECUTE }
            ( { @string_variable | [ N ] 'command_string [ ? ] ' } [ + ...n ]
            [ { , { value | @variable [ OUTPUT ] } } [ ...n ] ]
            )
        [ AS { LOGIN | USER } = ' name ' ]
        [ AT linked_server_name ]
    [;]

  • 相关阅读:
    前端cookie操作用到的一些小总结
    sublime 官方正版,自己用的插件配置,最轻量级安装流程
    Node.js 终端输出颜色设置
    Mac中设置别名 (转载)
    Swift 3 使用objc_setAssociatedObject
    ruby 笔记
    编程模式
    rvm pod gem 等常用命令
    node.js 笔记
    Node.js 对象合并
  • 原文地址:https://www.cnblogs.com/MyFavorite/p/1445450.html
Copyright © 2011-2022 走看看