SQL SERVER
书剑零落
快乐的小码奴
展开
-
SQLserver 数据库高版本无法还原到低版本的数据解决方法
sql server 数据库的版本只支持从上往下兼容。即高版本可以兼容低版本 。低版本不能兼容低版本。通常我们在开发时会用比较高的版本。但是部署到客户那边可能他们的数据库版本会比较低。我们可以通过导出脚本的方法来还原数据库。一 。 选择数据库右键 ——>任务 ——> 生成脚本。下一步下一步设置脚本保存的位置 。下一步 点击高级确定后点击下一步 就可以了。把生成后的脚本拿到对应的数据库服务器执行一下即可。...转载 2021-07-19 15:40:43 · 3666 阅读 · 0 评论 -
sql server取某个时间段内所有日期或者所有月份
sql server取某个时间段内所有日期或者所有月份取所有月份:declare@begindatetime,@enddatetimeset@begin='2015-2-6'set@end='2015-12-2'declare@monthsintset@months=DATEDIFF(month,@begin,@end)selectconvert(va...转载 2020-04-21 17:08:37 · 1954 阅读 · 0 评论 -
SQL Server跨服务器查询
创建链接服务器exec sp_addlinkedserver 'ITSV', ' ', 'SQLOLEDB', '远程服务器名或ip地址'exec sp_addlinkedsrvlogin 'ITSV', 'false ',null, '用户名', '密码'--查询示例select * from ITSV.数据库名.dbo.表名--导入示例select * into 表 f...转载 2020-03-04 17:25:40 · 169 阅读 · 0 评论 -
SqlServer不允许更改字段类型(表中已有数据)
工具-选项-设计器-阻止保存要求重新创建表的更改,√去掉。参照网址:https://www.cnblogs.com/roboot/p/8491477.html原创 2020-01-07 13:48:44 · 2283 阅读 · 0 评论 -
sql server查询字符传是否是数字
--返回0-则为纯数字(支持正负数,小数点) SELECT PATINDEX('%[^0-9|.|-|+]%','2.2')--返回0 --返回0-则为纯整数select PATINDEX('%[^0-9]%', '2.2')--返回非0参照网址:https://www.cnblogs.com/zjfblog/p/5625202.html...原创 2019-12-16 20:29:30 · 521 阅读 · 0 评论 -
SQL Server:替换文本中的回车和换行符
--替换回车符update master_locationSET street_number = REPLACE(street_number, CHAR(13), '')--替换换行符update master_locationSET street_number = REPLACE(street_number, CHAR(10), '')转载 2019-12-03 19:29:25 · 2219 阅读 · 1 评论 -
.net 代码解决SQL查询超时问题
相关背景: 一个报表统计型的存储过程,随着数据量增加,查询时间越来越长,因为存储过程超过2K行,要优化可能需要更多的时间,因为急需要报表数据,只好先从 代码层处理超时问题。以下是解决方案。 /// <summary> /// 执行Sql返回DataSet /// </summary> /// <pa...转载 2019-07-05 15:11:23 · 938 阅读 · 0 评论 -
SQL Server Profiler 跟踪sql小技巧
使用Profile监控sql时候经常会有很多很多的sql,想查询那条是自己的sql很困难,但是连接字串有个参数可以解决这个问题这个参数是Application Name例如说 我们在需要的数据库连接中添加Application Name参数 (Application Name的值可以随便起 只要别和别人相同就好了)如: Application Name=test;然后启动Profile ...转载 2019-06-27 16:51:26 · 436 阅读 · 0 评论 -
SQL SERVER将一行按照指定字符串拆分成多行
select a.CFXH , value = substring(a.BJCZDM , b.number , charindex(',' , a.BJCZDM + ',' , b.number) - b.number)from NIS_HLZK_ZKJH_MX_JC a join master..spt_values bon b.type='p' and b.number betwee...原创 2019-06-13 15:51:14 · 5813 阅读 · 0 评论 -
SQLSERVER 查询指定日期是对应月份的第几周
一、使用场景:统计每个月份对应各周(第一周从1号开始计算,最后一周按照月份最后一天计算)的数据汇总情况;二、SQL SERVER查询:declare @date datetimeset @date = '2019-05-31'select cast(datepart(mm,@date) as varchar(2)) + '月第'+ cast((datepart(wk,@date) ...原创 2019-05-31 17:42:22 · 8293 阅读 · 3 评论 -
sql语句之根据起始结束日期获取每一天、周、月、年
背景:很多的统计报表中需要输入起始,结束日期来按照不同的时间单位查询数据,而且显示出来的列名是你的动态时间单位。你的表数据是按天存的日期,那么这时候你可能要做一些sql函数或者存储过程来实现了。1.根据起始和结束日期来获取范围中的每一天,作为结果集返回(函数)create function [dbo].[fn_GetDateRange](@DATE_START datetime, @DAT...转载 2019-05-31 09:24:53 · 3706 阅读 · 0 评论 -
解决 SQL Server 连接到服务器 错误223 sa用户不能登录问题
我的SQL Server2005 一直正常使用但昨天出现了错误,如图。经过上网查,网上说的办法试了好多都没有解决这个问题。在经过多次的摸索后终于搞定了,答案很简单,是sql身份验证 “sa”账号 登录密码的问题。但是前提是你必须得保证你的sql server 的sql 身份验证可以用,所以在这里我们就先给大家讲述下怎样使sql身份验证可以启用(sql serve...转载 2019-03-14 13:30:26 · 1753 阅读 · 0 评论 -
SQL SERVER 根据子节点查询所有父节点、根据父节点获取所有子节点
一、根据表单类型查询其所有的上级表单类型:1、每次按照一个子节点的值进行查询:with partents as(select * from NIS_HLZK_JCBDFL where BDFLDM ='14'UNION ALL(SELECT a.* from NIS_HLZK_JCBDFL as a inner joinpartents as b on a.B...原创 2018-11-27 10:27:23 · 3953 阅读 · 0 评论 -
SQL SERVER 修改表的默认值:之前已有默认值
1、要求:将表NIS_HLZK_ZKJH_MX_JC中的字段JSFS的默认值由0改成12、修改SQL:if exists(select 1 from sysobjects where id=object_id('NIS_HLZK_ZKJH_MX_JC') and type = 'U')BEGIN if exists(select 1 from syscolumns where nam...原创 2018-10-18 17:52:44 · 3933 阅读 · 0 评论 -
SQL SERVER 查询列名、表/列是否存在
1、sqlserver获取表的所有列:select name from syscolumns Where id=object_Id('NIS_HLZK_JCBD');2、判断表格是否存在:select 1 from sysobjects where id=object_id('NIS_HLZK_ZKJH_MX_JC') and type = 'U'3、判断表格的列是否存在:selec...原创 2018-07-27 13:57:13 · 10760 阅读 · 0 评论 -
SQL SERVER中STUFF函数介绍及使用场景
STUFF ( character_expression , start , length ,character_expression ) 参数 character_expression 一个字符数据表达式。character_expression 可以是常量、变量,也可以是字符列或二进制数据列。start 一个整数值,指定删除和插入的开始位置。如果 start 或 length 为负,则返回空字...转载 2018-05-24 15:57:56 · 13652 阅读 · 0 评论 -
sql server 中join 查詢中on後面 加case的用法
在項目中出現的left join 查詢在on後面用case的語法,弄了好久,終於搞定了,以作備忘.示列:select * from AIRPORTORDER as Ainner join RANGECODE as Bon case when A.AIRPORDER_GOORBACK='2' then A.AIRPORDER_ENDCODE when A.AIR...转载 2018-05-23 11:15:26 · 7572 阅读 · 0 评论 -
sqlserver服务器名称改成本地IP地址登录
在安装sqlserver2008、2012等时选择的是默认实例,服务器名称也就是电脑的名称,特别是登录本地的数据库,需要输入电脑用户名称加上SQLEXPRESS例如:zhangsan\SQLEXPRESS 而不是自己本机的ip地址:192.168.1.xx 内部网络别的电脑也无法访问。问题就来了,如何修改服务器名称呢,改成用本地IP或者用户名\SQLEXPRESS登录sqlserver?解决办法...转载 2018-05-07 10:22:12 · 2027 阅读 · 0 评论 -
sql server 数据库创建链接服务器访问另外一个sql server 数据库
打开SQL SERVER ManagementStudio,创建数据库连接:--创建THIS4库连接:IP地址(@datasrc)根据二院的实际进行配置if not exists(select 1 from sys.servers where name='THIS4LINK')BEGIN EXEC sp_addlinkedserver @server='THIS4LINK', --链接服务器...原创 2018-05-03 17:38:11 · 1022 阅读 · 0 评论