
SQL Server
文章平均质量分 62
小圣_fighting
余所欲,盖余所勉
展开
-
自己写的第一个存储过程
在做公司项目的时候,完成一个页面操作后改变其它标准资料的某些字段,自己学着使用存储过程将之完成下来,为自己写的第一个存储过程作个纪念,希望之后自己能越学越好。create procedure P_CustStatus@CustID varchar(15), --定义传入参数@FBillNo varchar(30)asbegin decl原创 2016-09-22 16:09:48 · 2876 阅读 · 0 评论 -
SQLServer 存储过程 带事务处理实例(二)
CREATE PROCEDURE [dbo].********( @smallOrderNo varchar(50), @phoneModel varchar(50), @beginSn varchar(50), @endSn varchar(50))AS SET NOCOUNT ON declare @error int = 0 ---事务中的错误记录,定义存储原创 2017-03-07 13:58:20 · 722 阅读 · 0 评论 -
SQLServer 存储过程 带事务处理实例(三)
CREATE PROCEDURE [dbo].********( @sn varchar(50))AS SET NOCOUNT ON Declare @parentSn varchar(20), --父SN,VCP41 @childSn1 varchar(20), --子SN1,CPE80 @childSn2 varchar(20), --子SN2,CPE80 @原创 2017-03-07 13:59:14 · 894 阅读 · 0 评论 -
SQLServer 存储过程 带事务处理实例(一)
ALTER procedure [dbo].[P_DelImportData]( @orderNo varchar(50), --定义存储过程传入参数 @smallOrderNo varchar(50), @phoneModel varchar(50), @customer varchar(50))AS SET NOCOUNT ON declare @error int原创 2017-03-02 17:59:23 · 2266 阅读 · 0 评论 -
SQLServer 存储过程 带事务处理实例(四)
CREATE procedure [dbo].*******( @smallOrderNo varchar(50), @phoneModel varchar(50), @beginBoxNo varchar(50), @endBoxNo varchar(50))AS SET NOCOUNT ON declare @error int = 0 ---事务中的错误记录,原创 2017-03-07 14:01:01 · 5683 阅读 · 0 评论 -
Sqlserver 重新定义自增字段的值
需求:今天在测试一个表插入值的时候,数值插入很多,导致表的自增字段(一般是主键ID)过大,需要重新设置这个自增字段的值,但是又不能清除全部,因为有部分数据是正式的,如果全部清除,会导致后续插入的时候报重复约束的错误。解决的语句如下:DBCC CHECKIDENT(z_YEA_T_ER_POSDataEntry,RESEED,390000) 上述语句,第一个值标识:表名,第二个值是固定的原创 2017-03-10 15:38:35 · 2619 阅读 · 0 评论 -
SqlServer四种排序:ROW_NUMBER()/RANK()/DENSE_RANK()/ntile() over()
if OBJECT_ID('Tempdb.dbo.#Tmp') is not null drop table #Tmpcreate table #Tmp(name nvarchar(10))insert into #Tmpselect N'张三'unionselect N'李四'union select N'王五'union select N'赵六'union原创 2017-03-10 15:30:03 · 615 阅读 · 0 评论 -
SQLServer For XML Path的运用
FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作。那么以一个实例为主. 一.FOR XML PATH 简单介绍 那么还是首先来介绍一下FOR XML PATH ,假设现在有一张兴趣爱好表(hobby)用来存放兴趣爱好,表结原创 2017-04-28 17:44:48 · 4169 阅读 · 3 评论 -
SqlSerVer 列与逗号分隔字符串 互相转换
在项目中,使用SQLServer数据库,有一个需求,需要将数据库的某一列,转换成逗号分隔的字符串。同时,需要将处理完的字符串,转换成为一列。经过查阅资料与学习,通过以下方式可以实现如上所述需求:1、编写一个表值函数,传入一个字符串,实现转换成列,条件以逗号分隔(任何符号都可以自定义) --该函数把传递过来的字符串转换成IN 后面的列表,可以处理以分号,逗号以及空格分隔的字符串 C原创 2017-04-28 17:59:32 · 12850 阅读 · 0 评论 -
存储过程 记录存根
CREATE PROCEDURE [dbo].[P_ImportPOSExcel](--@agentReseller varchar(100),--Reseller导入名--@agentMateriaName varchar(50),--物料导入名@agentName varchar(20)) AS CREATE Table #contrast_resell原创 2017-02-16 10:22:00 · 370 阅读 · 0 评论 -
sql语句优化的13种方法
原文链接:http://blog.youkuaiyun.com/u012942818/article/details/539699721,什么是“执行计划”?执行计划是数据库根据SQL语句和相关表的统计信息作出的一个查询方案,这个方案是由查询优化器自动分析产生的,比如一条SQL语句如果用来从一个 10万条记录的表中查1条记录,那查询优化器会选择“索引查找”方式,如果该表进行了归档,当前只剩下500转载 2017-05-02 10:08:49 · 52819 阅读 · 4 评论 -
数据库锁机制
1 前言数据库大并发操作要考虑死锁和锁的性能问题。看到网上大多语焉不详(尤其更新锁),所以这里做个简明解释,为下面描述方便,这里用T1代表一个数据库执行请求,T2代表另一个请求,也可以理解为T1为一个线程,T2 为另一个线程。T3,T4以此类推。下面以SQL Server(2005)为例。2 锁的种类共享锁(Shared lock)。例1:----------转载 2017-08-23 11:28:07 · 285 阅读 · 0 评论 -
maven异常:Missing artifact com.microsoft.sqlserver:sqljdbc4:jar:4.0
通过maven命令将jar包安装到本地。 1、下载sqljdbc4.jar包。 在有sqljdbc4.jar包的文件夹下,通过shift+右键的方式--》此处打开命令窗口,然后执行以下maven命令 mvn install:install-file -Dfile=sqljdbc4.jar -Dpackaging=jar -DgroupId=com.micros原创 2017-01-11 09:31:02 · 9484 阅读 · 3 评论 -
SQLServer 存储过程中使用事务
存储过程SQL:create proc *****@GoodsId int,@Number int,@StockPrice money,@SupplierId int,@EmpId int,@StockUnit varchar(50),@StockDate datetime,@TotalMoney money ,@ActMoney money ,@baseId int,@原创 2017-02-27 15:29:35 · 7544 阅读 · 0 评论 -
SQLServer 中比较末尾带有空格的字符串
最近发现SQLServer中比较字符串的时候 如果字符串末尾是空格 那么SQLServer会无视那些空格直接进行比较 这和程序中平时的字符串判断逻辑不统一但是,如果字符串前带有空格,SQLServer会正确判断,若要去除字符串前部空格,使用LTrim函数:RTrim和LTrim嵌套使用RTrim(LTrim(' Hi, Good Morning '));返回 ‘Hi, Go原创 2017-02-14 14:04:27 · 2783 阅读 · 0 评论 -
SQL SERVER2012链接本地服务器失败的解决方法
SQL SERVER2012链接本地服务器失败的解决方法标题: 连接到服务器 ------------------------------ 无法连接到 CRPER-PC。 ------------------------------ 其他信息: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法原创 2016-10-24 09:33:34 · 13809 阅读 · 6 评论 -
Windows 无法启动 SQL Server (MSSQLSERVER) 服务(位于 本地计算机 上)。错误 1067: 进程意外终止。
原因: 用360杀毒软件,杀毒把D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn这个目录下的文件删除了一部分。导致SQL Server (MSSQLSERVER)服务启动不了。解决: 在别的机子上把D:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSE原创 2016-10-24 09:43:18 · 53991 阅读 · 2 评论 -
实现将存储过程作为inser into的数据源,插入临时表
1、引言 今天项目制作报表需要实现一个功能,将执行一个存储过程后的数据表,作为数据源,插入到一张临时表里。由于这个临时表知识系统自动生成的字符串,并没有在数据库(SQL Server)定义,所以,做出各种尝试,均告失败。2、两种T-SQL语法 1、select...into...from 2、insert into ... select原创 2016-10-25 19:15:02 · 9180 阅读 · 3 评论 -
T-SQL sqlServer 创建视图
今天写了一个视图,用T-SQL形式创建,做个记录if exists(select * from sysobjects where name='V_YEA_BUDGETBALANCE')drop view V_YEA_BUDGETBALANCEgocreate view V_YEA_BUDGETBALANCEasSELECT v.*,CONVERT(float,t6.SS原创 2016-10-17 17:59:24 · 2466 阅读 · 0 评论 -
SQL Server自定义函数(一)
作用:该函数把传递过来的字符串转换成IN 后面的列表,可以处理以分号,逗号以及空格分隔的字符串 CREATE FUNCTION [GetInStr] (@SourceStr varchar(2000))--源字符串 RETURNS @table table(list varchar(50) ) AS BEGIN select原创 2016-11-01 08:56:55 · 1614 阅读 · 0 评论 -
SQL Server自定义函数(二)
作用:传入一个字符串和想分割字符串的分隔符,使用此函数将源串分割开来create function fn_StrSplit(@str varchar(8000), @Separator varchar(10))RETURNS @re TABLE(FID varchar(100))ASbegindeclare @l int, @i intselect @i = len(@Separat原创 2016-11-01 09:12:03 · 457 阅读 · 0 评论 -
SQL Server自定义函数(三)
Table-valued Functions 表值函数,返回一个表调用如:select * from dbo.funname(xxx) Scalar-valued Functions 标量函数,返回数值调用如:select getdate()引言:上述讲述了SQL Server中 表值函数和标量函数的区别。从调用方式可以看出,这两种函数所返回的值也不一样。在表值函数中,原创 2016-11-01 09:41:01 · 667 阅读 · 0 评论 -
SQL Server:使用T-SQL创建视图
记录一下,T-SQL写视图作用:取到几个国家、区域、代理下的各个机型价格(LZ目前公司做IP话机)if exists(select 1 from sysobjects where name='V_YEA_SalesPrice')drop view V_YEA_SalesPricegocreate view V_YEA_SalesPriceasselect t1.FID,t1.FN原创 2016-11-29 17:41:52 · 2194 阅读 · 0 评论 -
SQL Server存储过程实例
背景:公司在世界各大洲均有业务,机型设置价格,分为国家和区域。国家如有定价取国家价,未定价取国家所属的区域价。做个记录。alter procedure P_GetSalePrice @CustID varchar(50), --代理ID @MaterialID varchar(50) --机型IDas declare @CurrentTime datetime begin c原创 2016-12-01 13:54:50 · 433 阅读 · 0 评论 -
Excel表格取到的时间,在SQLServer中,格式化显示
CAST函数,-2 是在测试中,Excel时间格式化过来后,总会和真实时间差2天。 CAST((DATEADD(DAY,CAST(SaleDate AS INT)-2 ,'1900-01-01')) AS DATE) SaleDate原创 2017-02-17 18:16:15 · 1330 阅读 · 0 评论 -
SQLServer 修改表字段的长度
ALTER TABLE tableName ALTER COLUMN columnName VARCHAR(n)原创 2017-02-09 16:16:01 · 26924 阅读 · 0 评论 -
SqlServer 数据库中 With(NoLock)详解
所有Select加 With (NoLock)解决阻塞死锁在查询语句中使用 NOLOCK 和 READPAST 处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK 或者 READPAST 。有关 NOLOCK 和 READPAST的一些技术知识点: 对于非银行等严格要求事务的行业,搜索记录中出现或者不出现某条记录,都是在可容忍范围内,所以碰到死锁,应该首先考虑原创 2017-02-28 10:20:01 · 1546 阅读 · 0 评论 -
SQL 传入特殊符号 单引号 ' 导致的问题及解决办法
问题描述: 今天在写项目,传入一个string到sql中,作为条件进行判断。程序报错。跟踪后发现,字符串中带有单引号。select * from POSData where Reseller='CS Int'l Inc.'// 以上SQL的条件中,CS Int'l Inc. 是一个整串,但是其中多了单引号后,sql报错。解决方法如下: str原创 2016-12-19 14:27:06 · 9380 阅读 · 0 评论