随笔- 48
文章- 351
评论- 16
阅读-
25万
文章分类 - sql server
SQL存儲過程的實例返回值
摘要:一直没有找到一种好的方法来引用有返回值的存储过程的方法,使我在添加数据中走了不少的弯路,最近,在查阅了大量的资料之后,终于在微软的一个实例中找到了一种良好的方法。 首先编写好一有返回值的存储过程 create procedure proc_name @para1 nchar(20), --输入参数 @para2 int = null out --输出参数,供程序使用...
阅读全文
fetch next from ..用法
摘要:declare mmp cursor for select * from #a open mmp /*建立cursor与查询数据的关联*/ declare @a1 varchar(50),@a2 varchar(50),@a3 varchar(50),@a4 varchar(100),@a5 varchar(50) declare @cnt int select @cnt=0 fetc...
阅读全文
@@FETCH_STATUS
摘要:@@FETCH_STATUS 返回被 FETCH 语句执行的最后游标的状态,而不是任何当前被连接打开的游标的状态。 返回值描述0FETCH 语句成功。-1FETCH 语句失败或此行不在结果集中。-2被提取的行不存在。 语法 @@FETCH_STATUS 返回类型 integer 注释 由于 @@FETCH_STATUS 对于在一个连接上的所有游标是全局性的,要小心使用 @@FETCH_STATUS...
阅读全文
FETCH
摘要:FETCH 从 Transact-SQL 服务器游标中检索特定的一行。 语法 FETCH [ [ NEXT | PRIOR | FIRST | LAST | ABSOLUTE { n | @nvar } | RELATIVE { n | @nvar } ] F...
阅读全文
SET NOCOUNT ON 优化存储过程
摘要:客户端的应用程序中是没有用的,这些信息是存储过程中的每个语句的DONE_IN_PROC 信息。 我们可以利用SET NOCOUNT 来控制这些信息,以达到提高程序性能的目的。 MSDN中帮助如下: SET NOCOUNT 使返回的结果中不包含有关受 Transact-SQL 语句影响的行数的信息。 语法 SET NOCOUNT { ON | OFF } 注释 当 SE...
阅读全文
SQL语句收集(精典,不可不看)
摘要:1、查找员工的编号、姓名、部门和出生日期,如果出生日期为空值,显示日期不详,并按部门排序输出,日期格式为yyyymmdd。 select emp_no ,emp_name ,dept , isnull(convert(char(10),birthday,120),'日期不详') birthday from employee order by dept 2、查找与喻自强在同一个单位的员工姓名、性别...
阅读全文
SQL中字符串拆分通用函数
摘要:ALTER FUNCTION uf_StrSplit (@origStr varchar(7000), --待拆分的字符串 @markStr varchar(100)) --拆分标记,如',' RETURNS @splittable table ( str_id varchar(4000) NOT NULL, --编号ID string varchar(2000) NOT NULL ...
阅读全文
SQL 随机函数NEWID和rand()
摘要:SELECT * FROM Northwind..Orders ORDER BY NEWID() --随机排序 SELECT TOP 10 * FROM Northwind..Orders ORDER BY NEWID() --从Orders表中随机取出10条记录 示例 A.对变量使用 NEWID 函数 以下示例使用 NEWID() 对声明为...
阅读全文
SQL函数命令大全
摘要:S:select abs(-1) value O:select abs(-1) value from dual 2.取整(大) S:select ceiling(-1.001) value O:select ceil(-1.001) value from dual 3.取整(小) S:select floor(-1.001) value O:select floor(-1.001) value ...
阅读全文
超精华的SQL语句(转)
摘要:sql server 取日期的年月日部分的函数 convert(varchar(10),getdate(),120) varchar(10) 截取位数可以调节,最多能显示19位(varchar(19))。 ---------------------------------- 查找存在某些字段的用户表和视图 select name,case when xtype='u' then '...
阅读全文
一个将数据分页的存储过程
摘要:CREATE PROCEDURE sp_page @tb varchar(50), --表名 @col varchar(50), --按该列来进行分页 @coltype int, --@col列的类型,0-数字类型,1-字符类型,2-日期时间类型 @orderby bit, --排序,0-顺序,1-倒序 @collist ...
阅读全文
SQL Server 存储过程的分页
摘要:区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。 区分重音:如果想让比较将重音和非重音字母视为不等,请选择该选项。如果选择该选项, 比较还将重音不同的字母视为不等。 区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。 区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项) 插入数据:(2万条,用更多的数据测试会明显一些) ...
阅读全文
解决SQL Server占用内存过多的问题
摘要:SQL Server最大的开销一般是用于数据缓存,如果内存足够,它会把用过的数据和觉得你会用到的数据统统扔到内存中,直到内存不足的时候,才把命中率低的数据给清掉…… 经常看见有人问,MSSQL占用了太多的内存,而且还不断的增长;或者说已经设置了使用内存,可是它没有用到那么多,这是怎么一回事儿呢? 首先,我们来看看MSSQL是怎样使用内存的。 最大的开销一般是用于数据缓存,如果内存足...
阅读全文
sql日期处理
摘要:DECLARE @dt datetime SET @dt=GETDATE() --1.短日期格式:yyyy-m-d SELECT REPLACE(CONVERT(varchar(10),@dt,120),N'-0','-') --2.长日期格式:yyyy年mm月dd日 --A. 方法1 SELECT STUFF(STUFF(CONVERT(char(8),@dt,112),5,0,N'年'...
阅读全文
SQL SERVER实用经验技巧集
摘要:包括安装时提示有挂起的操作、收缩数据库、压缩数据库、转移数据库给新用户以已存在用户权限、检查备份集、修复数据库等 1.挂起操作 在安装Sql或sp补丁的时候系统提示之前有挂起的安装操作,要求重启,这里往往重启无用,解决办法: 到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 删除PendingFileRenam...
阅读全文