自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 2019年最新总结,从程序员到CTO,从专业走向卓越,大牛分享文档pdf与PPT整理

整理大牛分享文档如下,持续更新一线开发架构,技术文档github链接网易蜂巢公有容器云架构之路新浪微博redis优化历程微博Cache架构设计实践Go在大数据开发中的经验总结基于Go构建滴滴核心业务平台的实践Go in TiDB负载均衡利器 HAProxy功能剖析及部署案例高可用技术的实践分享高性能存储及文件系统个性化推荐架构设计和实践搜狐视频工商数...

2019-06-07 19:45:35 298 2

原创 2019阿里巴巴技术面试题集锦(含答案)

为帮助开发者们提升面试技能、有机会入职阿里,云栖社区特别制作了这个专辑——阿里巴巴资深技术专家们结合多年的工作、面试经验总结提炼而成的面试真题这一次整体放出。并通过这些笔试真题开放阿里巴巴工作机会,让更多的开发者加入到阿里这个大平台。这一次,不仅是知识的收获,还将间接地与技术大牛们做了直观的沟通,了解他们的出题思路与考察要点,并加以消化吸收,这对自己技术能力本身就是一种极大的提升。走上编程之路...

2019-06-05 15:28:58 755

转载 锁概念 以及 例程说明

锁概念 以及 例程说明sql servertable数据库delayinsertsybase锁的概述 一. 为什么要引入锁 多个用户同时对数据库的并发操作时会带来以下数据不一致的问题: 丢失更新A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统 脏读A用户修改了数据,随后B用户又读出

2013-05-28 15:13:48 1269

原创 查询优化(一:Bookmark Lookup)

--优化学习(一) 我现有一表Orders,其中包含OrderId,UserId,CreateDate,TotalMoney,OrderType五个字段, 目前没有主键和其他索引 如今我想查询出在指定某个日期的订单数量,并返回OrderId,UserId,TotalMoney三字段,具体 查询语句如下: select   OrderId,   Use

2013-04-23 14:51:01 2412 5

原创 父子节点问题

--查询指定节点下的所有子节点:--SQL Server2005以上版本-->>TravyLee生成测试数据:if OBJECT_ID('tempdb..#tb') is not nulldrop table #tbgocreate table #tb(id int,fid int)goinsert #tbselect 1,0 union

2013-03-13 10:46:16 1717 2

原创 DBA30问之系统DB有哪些,都有什么作用,需不需要做备份,为什么,损坏了如何做还原(主要是master库)

DBA30问之系统DB有哪些,都有什么作用,需不需要做备份,为什么,损坏了如何做还原(主要是master库)  master 数据库 记录 SQLServer 系统的所有系统级信息。这包括实例范围的元数据(例如登录帐户)、 端点、链接服务器和系统配置设置。此外,master数据库还记录了所有其他数据库的 存在、数据库文件的位置以及SQL Server

2013-03-07 13:33:15 2345 1

原创 DBA30问之CHAR(N),NCHAR(N),VARCHAR(N),NVARCHAR(N)四种类型之间的区别

CHAR(N),VARCHAR(N),NCHAR(N),NVARCHAR(N)是MSSQL的四种字符串数据类型, 都可以存储字符串但很多人都不清楚它们之间的区别,在选择字符 串类型的时候比较随意,很多时候造成了存储空间的浪费,那么它 们之间究竟有什么区别呢? char [ ( n ) ] 固定长度字符数据类型,非Unicode字符数据,长度为n个字节。

2013-03-06 03:23:05 2020 5

原创 处理死锁 阻塞问题预备知识之SELECT,UPDATE,DELETE 操作需要申请的锁(三 DELETE 操作)

处理死锁 阻塞问题预备知识之SELECT,UPDATE,DELETE 操作需要申请的锁(三 DELETE 操作)前面我们已经测试过了 SELECT 和 UPDATE 操作时所申请的锁接下来我们再来测试一下 DELETE 操作和 INSERT 操作时需要申请的锁本次测试使用数据库连接的默认隔离级别:READ COMMITTEDUSE Adven

2013-01-16 11:40:12 2399 1

原创 处理死锁 阻塞问题预备知识之SELECT,UPDATE,DELETE操作需要申请的锁(二 UPDATE操作)

--处理死锁 阻塞问题预备知识之SELECT,UPDATE,DELETE操作需要申请的锁(二 UPDATE操作)对于update语句,可以简单地理解为SQL Server先做查询,把需要修改的数据找到后再在这个记录上做修改。查询动作需要加S锁(共享锁),找到需要修改的记录后会先加U锁,再将U锁(更新锁)升级为X锁(排他锁)。这里继续使用[HumanResou

2013-01-15 11:51:30 2949 4

原创 处理死锁 阻塞问题预备知识之SELECT,UPDATE,DELETE操作需要申请的锁(一 SELECT操作)

--常见SELECT操作要申请的锁 --查看当前数据库的版本信息: print @@version/*Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)   Jul  9 2008 14:43:34    Copyright (c)1988-2008 Microsoft Corporation

2013-01-14 13:29:18 6165 7

原创 如何恢复误删数据

--误删表数据,如何恢复过来/* 真实案例:在执行语句的时候错误的把系统中的一个表的数据全部删除 在删除之前,我做过一次完整的数据库备份,再删除之后,我第一时 间做了尾日志备份 也就是说 我手上现在有一份最新的完整备份 和删除数据之后的尾 日志备份*//*版本信息:Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86

2013-01-11 09:29:33 3608 8

原创 BOM子节点汇总数据

------------------------------------------------------------------ Author :TravyLee(物是人非事事休,欲语泪先流!)-- Date :2012-12-06 10:44:59-- Version:-- Microsoft SQL Server 2012 - 11.0.2100.60 (Int

2012-12-06 11:27:20 1587

原创 Merge 语法实例

--Merge 语法是对表进行插入,更新,删除这三个操作的合并。--根据与源表联接的结果,对目标表执行插入、更新或删除操作。--MERGE 语法包括如下五个主要子句:-- MERGE 子句用于指定作为插入、更新或删除操作目标的表或视图。-- USING 子句用于指定要与目标联接的数据源。-- ON 子句用于指定决定目标与源的匹配位置的联接条件。-- WHEN 子句用

2012-12-05 11:37:45 3192

原创 更改排序规则

1.sp_helpsort SELECT SERVERPROPERTY ('Collation') 查看你的排序规则. 不过你的这个应该和字符集有关.2.更改服务器排序规则 更改 SQL Server 2005 实例的默认排序规则的操作可能会比较复杂,包括以下步骤: 确保具有重新创建用户数据库及这些数据库中的所有对象所需的全部信息或脚本。 使用工具(例如大容量复制)导出所有数据。

2012-11-27 15:12:09 3265

原创 SQL SERVER 数据库实用SQL语句

【SQL SERVER 数据库实用SQL语句】 --查看指定表的外键约束select * from sysobjects where parent_obj in(select id from sysobjects where name='表名')and xtype='PK'--查看所有表select * from sysobjects where xtype='PK'--删除列中

2012-11-27 15:10:10 1525

转载 sql 查询慢的48个原因分析(分享)

sql 查询慢的48个原因分析。  查询速度慢的原因很多,常见如下几种:  1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)  2、I/O吞吐量小,形成了瓶颈效应。  3、没有创建计算列导致查询不优化。  4、内存不足  5、网络速度慢  6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)  7、锁或者死锁(这也是查询慢最常见的

2012-11-26 15:20:57 3491 2

转载 性能调优(分享)

性能调优1 百胜表规范 USE ERP_DWGO/* 功能说明: 创建【区域】维度表 修改说明: Create by LY on 2011-09-07*/IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE id = OBJECT_ID('Dim_Area') AND type

2012-11-26 15:14:08 4117 3

原创 EXEC和sp_executesql的区别

MSSQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_executesql;通常,sp_executesql则更具有优势,它 提供了输入输出接口,而EXEC没有。还有一个最大的好处就是利用sp_executesql,能够重用执行计划,这就大大提供了执行性能(对于这个我在 后面的例子中会详加说明),还可以编写更安全的代码。EXEC在某些情况下会更灵活。除非您有令人信服的理由使用E

2012-11-26 15:12:12 970

原创 常规SQL SERVER数据库置疑后恢复步骤

--常规SQL SERVER数据库置疑后恢复步骤 --1. 恢复步骤: --a.将smlog_log.ldf文件备份到其它目录下; --b.将源目录下的smlog_log.ldf文件改名为smlog_log_bak.ldf; --c.执行以下语句修改数据库的状态: use Master go update sysdatabases set status=3

2012-11-26 14:59:39 1457 1

原创 SQL Server使用bcp导入导出

Transact-SQL语句进行导入导出:1.在SQL SERVER里查询access数据:-- ======================================================SELECT * FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:\DB.mdb";User ID=Ad

2012-11-26 14:55:21 7013 1

原创 SQL Server还原备份经典文档

SQL备份 --------------- 1、SQL数据库恢复模型 ---------------------------------------------------------------------- 1)完全恢复模型 ----------------- (1)备份时要备份数据库的数据文件和日志文件 (2)还原时使用数据库的备份的数据文件副本和全部日志信息来恢复数据库。

2012-11-26 14:53:31 1449

原创 日志文件不停增长的原因以及解决的相关方法

--探讨日志文件不停增长的原因以及解决的相关方法事务日志文件是SQL Server的另一个(还有一个为数据文件)重要组成部分。每个数据库都有事务日志文件,用来记录所有事务以及每个事务对数据库做的修改。为了提高SQL Server的整体性能,检索数据时将数据页读入缓冲区高速缓存。数据的修改不是直接在磁盘上进行,而是修改高速缓存中的页副本。直到数据库中出现检查点,或者必须将修改写入磁盘才

2012-11-13 16:07:47 3458

原创 delete和truncate的区别

测试省略delete命令并不能完全释放掉表格或者索引的数据结构以及他们申请的页面。在这一点上,SQL Server2005以后的版本比之前的版本做得好些,树比堆做得更好些。TRUNCATE语句和DELETE语句相比具有以下优点:1,所用的事务日志空间较少delete每删除一行数据,都会在事务日志中为删除的每行记录一个项。truncate table通过释放用于存储数据的数

2012-11-13 09:27:17 7406

原创 如何解决DBCC SHRINKFILE命令不起作用

----为什么DBCC SHRINKFILE会不起作用------>>TravyLee生成测试数据if OBJECT_ID('testdb')is not nulldrop database testdbgocreate database testdb;gouse testdbgoif OBJECT_ID('test') is not nulldrop table testg

2012-11-12 14:35:54 5609 1

原创 存储方式对空间使用的影响和性能分析

从存储方式上比较聚集索引(clustered)和非聚集索引(nonclustered)-->>TravyLee生成测试数据:以下所有表格中的数据量均为19329条(需要注意这并不是一个大数据量的表)那么我们现在在创建一张表ORDERS_C,结构砼前两张表一样,不使用任何索引,使用堆来存储IF OBJECT_ID('ORDERS_C') IS NOT NULLDROP TABLE ORDE

2012-11-09 14:40:50 1617 1

原创 一次笔试题三个经典问题的总结

问题一:索引是否一定会提高查询效率?首先可以很肯定的回答“不一定”,但很明显,出题者的意图在于你写出具体情况和原因。建立索引的目的是加快对表中记录的查找或排序。为表设置索引要付出代价的:一是增加了数据库的存储空间;二是在插入和修改数据时要花费较多的时间(因为索引也要随之变动)建立合适的索引,一般情况是会提高查询效率的,当然T-sql用不用索引,还要看SQL

2012-07-31 12:02:00 2668 7

转载 SQL SERVER性能优化综述

近期因工作需要,希望比较全面的总结下SQL SERVER数据库性能优化相关的注意事项,在网上搜索了一下,发现很多文章,有的都列出了上百条,但是仔细看发现,有很多似是而非或者过时(可能对SQL SERVER6.5以前的版本或者ORACLE是适用的)的信息,只好自己根据以前的经验和测试结果进行总结了。我始终认为,一个系统的性能的提高,不单单是试运行或者维护阶段的性能调优的任务,也不单单是开发阶段的

2012-07-07 21:14:22 1337

转载 SQL函数和存储过程的区别

本质上没区别。只是函数有如:只能返回一个变量的限制。而存储过程可以返回多个。而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行。执行的本质都一样。 函数限制比较多,比如不能用临时表,只能用表变量.还有一些函数都不可用等等.而存储过程的限制相对就比较少 1. 一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强。 2. 对于存储过程来

2012-07-07 09:47:56 1853

原创 关于字符串拆分,合并问题的整理

--关于新方法解决字符串替换和拆分问题的总结-->TravyLee生成测试数据:[test]if object_id('[test]') is not null drop table [test]create table [test]([ID] int,[CODE1] varchar(2),[CODE2] varchar(10))insert [test]select 1,'A

2012-07-07 09:44:23 3934 3

原创 SQL Server事务和并发性的一些基础知识(未完待续)

事物和并发性在学习事物和并发性之前首先来理解两个概念:1、什么事事物?事物是SQL Server中的基本工作单元。通常它由几个读取和更新数据库的SQL命令组成,但是这些操作都不被看为最终的,直到发出一个COMMIT命令为止。2、什么是并发性?并发性可以定义为多个进程在相同时间访问或者更改共享数据的能力。既然是能力,那么一个系统的并发性就会有强弱之分。既然如此,我们该怎样判断一个

2012-07-05 18:25:52 3353 1

原创 先进先出的两个简单例子

-------------------------------------------- -- Author:TravyLee(跟小F姐姐混) -- Date :2012-05-26 16:00:00--------------------------------------------Example One:--------------------------------

2012-05-26 17:27:48 2887

原创 如何使用递归实现数据的累加

--关于递归累计求和-->>TravyLee生成测试数据if OBJECT_ID('test')is not nulldrop table testgocreate table test(id int identity(1,1),deptid char(3),empid char(4),salary int)goinsert test(deptid,empid,salary

2012-05-15 14:35:44 3086

原创 递归的一些典型应用

--如何查找指定父节点下的所有子节点的一个应用:gocreate table A(单号 varchar(20) not null,销售日期 datetime , 类型 varchar(10) null,原单号 varchar(20) null)goinsert into Aselect 'O201205080001','2012-05-08 11:13:52.750','销售

2012-05-13 20:37:23 2198 3

原创 如何查询出连续登陆的最长天数

最近遇到不少关于解决连续登陆天数的帖子。这类问题实际也就是我们经常遇到的孤岛问题的一个变种解决这类问题,我们有一个最基本的思路:step 1:找出间断之后的点,为他们分配行号(这是孤岛的起点)step 2:找出间断之前的点,为他们分配行号(这是孤岛的终点)step 3:以行号相等作为条件,匹配孤岛的起点和终点在实现以上三步后,我们基本上就能解决这类问题了,一下我以三种方法演示:/*

2012-04-14 10:14:37 4063 3

原创 间断和孤岛问题处理方法总结

--确实范围和现有范围(也称间断和孤岛问题)--1、缺失范围(间断)/*收集人:TravyLee时间:2012-03-25如有引用,请标明“此内容源自MSSQL2008技术内幕之T-SQL”*//*求解间断问题有几种方法,小弟我选择性能较高的三种(使用游标的方法省略有兴趣不全的大哥大姐请回复)---------------------------------

2012-03-25 17:14:58 2638

原创 如何实现截取无规则字符串中的数字部分

方法一:利用函数实现:--如何截取无规律的字符串中的数字: declare   @str   varchar(100),@str2   varchar(100) set   @str= 'B3 ' select   @str2=substring(@str,patindex( '%[0-9]% ',@str),len(@str)) --得到以第一个数字开始的字符串,@s

2012-03-18 14:17:04 6732 1

原创 MSSQL如何实现日期的自动补全(补全数据表中缺失的日期)

在实际生活中我们会遇到很多日期缺失的问题,但在统计的时候要求显示出缺失的日期,面对这样的问题,我们如何实现?这里我把自己学习的三种方法给大家分享一下:方法一:创建存储过程实现--如何用"最小缺失数"实现确实日期的自动补全-->生成测试数据:GOIF OBJECT_ID('TBL')IS NOT NULLDROP TABLE TBLGO

2012-03-09 12:50:59 9690 6

原创 如何实现求连续3小时最大累计值的记录

--如何实现求连续3小时最大累计值的记录:GOCREATE TABLE [dbo].[TB_RUNDATA](    [ID] [int] IDENTITY(1,1) NOT NULL,    [STCD] [varchar](20) COLLATE Chinese_PRC_CI_AS NOT NULL,    [TM] [datetime] NOT NULL,    [Z

2012-02-24 15:25:46 1650

原创 CASE WHEN ELSE END的一个用法

--case when else的一个用法:统计每行数据不为空的字段的个数:--创建测试数据:goif OBJECT_ID('tbl')is not nulldrop table tblgocreate table tbl(col1 varchar(5),col2 varchar(5),col3 varchar(5),col4 varchar(5),co

2012-02-11 15:13:10 4227

原创 SQL Server2008函数大全(完整版)

SQL2008 表达式:是常量、变量、列或函数等与运算符的任意组合。1. 字符串函数函数 名称 参数 示例 说明ascii(字符串表达式)select ascii('abc') 返回 97返回字符串中最左侧的字符的ASCII 码。char(整数表达式)select char(100) 返回 d把ASCII 码转换为字符。介于0 和 255 之间的整数。如果该整数

2012-01-27 23:52:39 73677 12

提示
确定要删除当前文章?
取消 删除