sql server中存储过程里面的sql语句,和不在存储过程中的sql语句,有什么区别么?

我知道在sql server存储过程中不能使用go,存储过程中的sql语句,和普通的sql语句还有哪些地方是不同的呢?

1、没有根本区别。
2、SQL语句都是由一个一个的指令按固定的规则拼在一起的。
3、SQL存储过程就是多个SQL指令组合在一起进行执行。
4、因为是组合在一起执行,所以有些语句是多余的,比如go等。
5、手动下达的指令里也可以合理的指代、循环,等。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-07-12
这两种差别太大了吧?

存储过程 是 命名的程序段(当然也有不命名的程序段)。

作为一个程序段,可以进行逻辑控制,比如:
if else 控制 ,循环 控制,异常处理 等等

而普通的sql只是一个命令而已;多个命令之间就必须用GO分开。

存储过程含有动态SQL,与静态SQL有什么差别
静态 SQL:静态 SQL 语句一般用于嵌入式 SQL 应用中,在程序运行前,SQL 语句必须是确定的,例如 SQL 语句中涉及的列名和表名必须是存在的。静态 SQL 语句的编译是在应用程序运行前进行的,编译的结果会存储在数据库内部。而后程序运行时,数据库将直接执行编译好的 SQL 语句,降低运行时的开销。动态 ...

sqlserver存储过程执行sql为什么会比在数据库直接执行sql要快?
但需要注意的是,存储过程执行 SQL 并不一定总是比直接执行 SQL 快。性能差异取决于具体场景和数据库优化情况。例如,对于简单的 SQL 语句,存储过程的额外开销可能抵消了优势;或者如果数据库缓存机制处理直接执行的 SQL 效率更高。综上所述,SQL Server 存储过程之所以能提高执行速度,主要得益于预编译...

请问,mysql存储过程与普通的sql语句有什么区别?
和一般sql的区别就是,存储过程支持变量和判断循环之类的,你可以把一个存储过程想象为一个小的软件,这个小软件帮你处理一些复杂的sql运算。至于说存储过程查询语句更快,是因为,存储过程的执行是在服务器上,只需要传递几个简单的参数就可以,减少了 网络通讯 。所以比起一般程序中写的查询语句来说更...

存储过程和sql语句有什么区别
1、sql只能实现简单的查询,新增,修改,删除功能。2、存储过程是sql语句和可选控制流语句的预编译集合。存储过程在创建时即在服务器上进行编译,所以执行起来比单个sql语句快。在单个存储过程中可以执行一系列sql语句。可以从自己的存储过程内引用其他存储过程。

存储过程和sql语句有什么区别
存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。再运行存储过程前,数据库已对其进行了语法和句法分析,并给出了优化执行方案。这种已经编译好的过程可极大地改善SQL语句的性能。 由于执行SQL语句的大部分工作已经完成,所以存储过程能以极快的速度执行。

SQL SERVER 中存储过程和函数的区别
一、多数指令是相同的,包括创建和修正存储过程的指令。二、很多细微的指令有不同,具体如下(不仅):1mysql支持enum,和set类型,sqlserver不支持2mysql不支持nchar,nvarchar,ntext类型3mysql的递增语句是AUTO_INCREMENT,而mssql是identity(1,1)MYSQL:createtablebasic(idintkeyauto_increment,namevarchar(...

最好是使用存储过程来操作数据库,而不要直接在程序中构造SQL语句
1. 直接在程序中构造SQL的话后期维护, 比如表字段的增减, 有可能会影响到你SQL语句的可执行性, 那个时候你就必须要修改程序源码, 可能的结果是牵一发而动全身, 如果用存储过程, 那么只要更新存储过程就可以了, 便于维护!2. 如果不法分子破解你的程序, 存储过程是放在你的数据库服务器上的!那么...

在SQLServer中,存储过程和T-SQL语句,哪个执行快,为什么
如果某一操作包含大量的SQL 代码或分别被多次执行,那么存储过程要比批处理的执行速度快很多。因为存储过程是预编译的,在首次运行一个存储过程时,查询优化器对其进行分析、优化,并给出最终被存在系统表中的执行计划。而批处理的SQL 语句在每次运行时都要进行编译和优化,因此速度相对要慢一些。

存储过程跟SQL语句比较,各有什么优点和缺点?
SQL存储过程放在SQL数据库中,1,因此在程序中调用的时候不必自己拼接sql语句。2,SQLSERVER会对存储过程进行预编译,因此速度快。3,在网络上不必传输冗长的SQL语句,而是直接调用存储过程的名字,因此可以加快速度当然,在一些外包软件开发中,是不允许使用存储过程的。因为对方不可以把数据库暴露给你,此时...

项目开发中使用存储过程和直接使用SQL语句的区别
1,sp在后台,而SQL在前台。相对而言,前者具有更大的灵活性;2,sp是参数化的,而SQL可能是动态拼装的。因此,DBMS在执行时,前者效率更高(因为直接从Cache区中取出,不再需要解析)3,使用SQL进行动态组装,代码不够清晰,有点啰嗦 --遇到单引号【'】需要额外处理 -- 若使用StringReplace还好些 4...

相似回答