sqlServer 存储过程执行遇到的问题及解决方案
1.EXEC 执行Sql语句被截断的问题:
Sql语句:
SET @sqlSel='SELECT '+@sqlField+',
SUM(ISNULL(b.customsTariff_Sup,0))AS customsTariff_Sup,SUM(ISNULL(addedValueTax_Sup,0))AS addedValueTax_Sup,SUM(ISNULL(ConsumptTax_Sup,0))AS ConsumptTax_Sup,
SUM(ISNULL(customsTariff_Ref,0))AS customsTariff_Ref,SUM(ISNULL(addedValueTax_Ref,0))AS addedValueTax_Ref,SUM(ISNULL(ConsumptTax_Ref,0))AS ConsumptTax_Ref,
SUM(ISNULL(customs_Sup,0)) AS customs_Sup,SUM(ISNULL(addedValue_Sup,0))AS addedValue_Sup,SUM(ISNULL(Consumpt_Sup,0))AS Consumpt_Sup,
SUM(ISNULL(customs_Ref,0)) AS customs_Ref,SUM(ISNULL(addedValue_Ref,0))AS addedValue_Ref,SUM(ISNULL(Consumpt_Ref,0))AS Consumpt_Ref,
SUM(ISNULL(customs_NoSupRef,0))AS customs_NoSupRef,SUM(ISNULL(addedValue_NoSupRef,0))AS addedValue_NoSupRef,SUM(ISNULL(Consumpt_NoSupRef,0))AS Consumpt_NoSupRef
from dbo.ClassifyCorrectionReportHead h
right join dbo.ClassifyCorrectionReportBody b on h.ID=b.HEADID
where '+@sqlWhere+' group by REPORTROWHEAD ' print @sqlSel
exec @sqlSel --注释:@sqlSel 为变量 类型为 varchar(8000),@sqlField 为变量 类型为 varchar(500),@sqlWhere为变量 类型为 varchar(800)
在存储过程执行过程中发现错误“……无法识别的字符”:检查发现sql语句被截断,
.首先检查sql语句的长度是否超出变量定义的长度,(很明显没有超出)
.然后 sql语句能够完整打印出来,而且执行没错误,此时就可以判断是EXEC出现的问题了,
解决方案:
在执行的sql变量上加上();如:
exec (@sqlSel)
2. 高效清空表数据:TRUNCATE TABLE
与delete比较:
(1).DELETE
・DML语言
・可以回退
・可以有条件的删除
用法:DELETE FROM 表名
WHERE 条件
(2).TRUNCATE TABLE
・DD2.TRUNCATE TABLE
・DDL语言
・无法回退
・默认所有的表内容都删除
・删除速度比delete快。
用法:TRUNCATE TABLE 表名
sqlServer 存储过程执行遇到的问题及解决方案的更多相关文章
- JAVA使用JDBC技术操作SqlServer数据库执行存储过程
Java使用JDBC技术操作SqlServer数据库执行存储过程: 1.新建SQLSERVER数据库:java_conn_test 2.新建表:tb_User 3.分别新建三个存储过程: 1>带 ...
- Sqlserver2005:深入了解php执行sqlserver存储过程procedure:odbc_exe、odbc_execute
以下存储过程(伪代码): -- 伪代码,假设相关操作是成功的 alter procedure pr_test as begin set nocount on update tab set col='n ...
- sqlserver 创建对某个存储过程执行情况的跟踪
有时候需要抓取执行存储过程时某个参数的值,有时候程序调用存储过程执行后结果不太对,不确定是程序的问题还是存储过程的问题,需要单独执行存储过程看结果 即可用下面的方法 --=============== ...
- SQLSERVER存储过程语法详解
CREATE PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ...
- 解剖SQLSERVER 第十五篇 SQLSERVER存储过程的源文本存放在哪里?(译)
解剖SQLSERVER 第十五篇 SQLSERVER存储过程的源文本存放在哪里?(译) http://improve.dk/where-does-sql-server-store-the-sourc ...
- sqlserver 存储过程中使用临时表到底会不会导致重编译
曾经在网络上看到过一种说法,SqlServer的存储过程中使用临时表,会导致重编译,以至于执行计划无法重用, 运行时候会导致重编译的这么一个说法,自己私底下去做测试的时候,根据profile的跟踪结果 ...
- SqlServer存储过程学习笔记(增删改查)
* IDENT_CURRENT 返回为任何会话和任何作用域中的特定表最后生成的标识值. CREATE PROCEDURE [dbo].[PR_NewsAffiche_AddNewsEntity] ( ...
- sqlserver存储过程学习笔记(一)基础知识篇(全)
说出来有点丢人,做sqlserver应用系统近一年,竟然没有使用过存储过程,现在就好好的梳理一下对应知识,慢慢让其加入到我的项目中去吧. 存储过程的优点:1.运行效率高,提供了在服务器端快速执行sql ...
- SQLServer 存储过程嵌套事务处理
原文:SQLServer 存储过程嵌套事务处理 某个存储过程可能被单独调用,也可能由其他存储过程嵌套调用,则可能会发生嵌套事务的情形. 下面是一种解决存储过程嵌套调用的通用代码,在不能确定存储过程是否 ...
随机推荐
- BZOJ 4562 食物链
我们需要拓扑一下. #include<iostream> #include<cstring> #include<cstdio> #include<algori ...
- [Java Basics] Stack, Heap, Constructor, I/O, Immutable, ClassLoader
Good about Java: friendly syntax, memory management[GC can collect unreferenced memory resources], o ...
- codeforces 580C Kefa and Park(DFS)
题目链接:http://codeforces.com/contest/580/problem/C #include<cstdio> #include<vector> #incl ...
- Get Many Persimmon Trees_枚举&&二维树状数组
Description Seiji Hayashi had been a professor of the Nisshinkan Samurai School in the domain of Aiz ...
- Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
Android Glide加载图片时转换为圆形.圆角.毛玻璃等图片效果 附录1简单介绍了Android开源的图片加载框架.在实际的开发中,虽然Glide解决了快速加载图片的问题,但还有一个问题悬 ...
- C# asp.net IIS 在web.config和IIS中设置Session过期时间
有时候在web.config设置sessionState 或者类文件里设置Session.Timeout,在IIS里访问时每次都是达不到时间就超时,原因是因为在IIS中设置了Session的超时时间, ...
- 怎么书写高质量jQuery代码
众所周知,jQuery现在已经非常流行,百度新首页中也已经开始使用jQuery,今天总结下怎么书写更好的jQuery代码使jQuery代码更好.更快的执行,希望本篇jQuery教程一改大家以前不合理的 ...
- LeetCode Combination Sum II (DFS)
题意: 在集合candidates中选出任意多个元素,使得他们的和为target,返回所有的组合,以升序排列. 思路: 难点在于如何去重,比如集合{1,1,2},target=3,那么只有一个组合就是 ...
- ODBC接口规范
第1章 ODBC API基础 1.1 ODBC API句柄 ODBC API 实现数据库操作的手段是句柄.在ODBC中,使用不同的句柄(HANDLE)来标志环境(environment).连接 ...
- WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 8
转载自:http://blog.ready4go.com/blog/2013/05/18/resolve-android-ndk-warning-app-platform-android-14-is- ...