随笔分类 -  SQL

摘要:问题:更新数据的状态值时,部分报出如下异常: 即时有成功更新,时有报错问题出现。 在LOG中发现成功更新的数据,存在更新时间过长问题,将近30秒(EF默认的CommandTimeout为30秒): 代码如下: 只是简单的更新,即出现如此长时间的更新等待。 更新优化,加上一个排除条件(该条件的数据量过 阅读全文
posted @ 2019-11-20 14:53 Yu 阅读(1643) 评论(0) 推荐(0)
摘要:1. 安装 mongodb-win32-x86_64-2008plus-2.6.12-signed.msi,下载地址 https://www.mongodb.com/download-center#community 安装至目录:c:\MongoDb2 2. 安装MongoDb服务并启动,否则不能使 阅读全文
posted @ 2016-05-06 12:53 Yu 阅读(278) 评论(0) 推荐(0)
摘要:下图,制作了一个可以维持1分钟的表锁:下图,可以查询出被锁的表,其中 spid 是锁定表的进程ID(也是 session_id):可以通过select connect_time from sys.dm_exec_connections where session_id=52 查看开始会话时间这时对该... 阅读全文
posted @ 2015-03-13 09:05 Yu 阅读(219) 评论(0) 推荐(0)
摘要:SET TRANSACTION ISOLATION LEVEL xxx --每次设置只针对当前事务块xxx 取值:READ UNCOMMITTEDREAD COMMITTEDREPEATABLE READSNAPSHOTSERIALIZABLEtest1表数据如下: 现在对 Name 为 aaaa... 阅读全文
posted @ 2015-02-25 14:28 Yu 阅读(795) 评论(0) 推荐(0)
摘要:--检查索引碎片情况dbcc showconfig(tablename)具体例子:--上图为碎片整理之前ALTER INDEX ALL on Citation REBUILD--下图为碎片整理之后-- Extents Switches: Extents Scanned -1-- Avg. Pages... 阅读全文
posted @ 2015-02-14 13:50 Yu 阅读(516) 评论(0) 推荐(0)
摘要:填充因子依附索引而存在,但创建索引,就意味着要对表进行DML时,必须处理额外的工作量(也就是对索引结构的维护)以及存储方面的IO开销。所以创建索引时,需要考虑创建索引所带来的查询性能方面的提高,与引起的额外的开销相比,是否值得。填充因子取值范围:0~100(0为默认值) 阅读全文
posted @ 2015-02-13 15:14 Yu 阅读(522) 评论(0) 推荐(0)
摘要:_CI(CS) 是否区分大小写,CI不区分,CS区分_AI(AS) 是否区分重音,AI不区分,AS区分_KI(KS) 是否区分假名类型,KI不区分,KS区分_WI(WS) 是否区分宽度 WI不区分,WS区分 阅读全文
posted @ 2015-02-10 17:23 Yu 阅读(234) 评论(0) 推荐(0)
摘要:sp_configure 'show advanced options', 1RECONFIGUREGOsp_configure 'awe enabled', 1RECONFIGUREGOsp_configure 'min server memory', 1024RECONFIGUREGOsp_co... 阅读全文
posted @ 2015-01-17 16:55 Yu 阅读(232) 评论(0) 推荐(0)
摘要:SQL SERVER 2008 R2 (10.50.40) 版本,安装 SQL SERVER PROFILER:通过 command prompt,使用以下命令:setup.exe /FEATURES=Tools /Q /INDICATEPROGRESS /ACTION=Install /INS... 阅读全文
posted @ 2014-11-21 10:11 Yu 阅读(6958) 评论(0) 推荐(0)
摘要:锁,是由锁管理器负责维护,其目的是保证事务的ACID,是平衡并发和数据安全的机制。锁定粒度与并发性是成反比的,默认情况下,SQL Server Compact 4.0 对数据页使用行级锁定,对索引页使用页级锁定。每次会话的锁数是有限的,当事务超出其升级阈值时,MicrosoftSQL Server ... 阅读全文
posted @ 2014-07-05 09:40 Yu 阅读(243) 评论(0) 推荐(0)
摘要:using(SqlConnection conn = new SqlConnection(str)) { conn.Open(); using (System.Data.SqlClient.SqlBulkCopy sqlBC = new System.Data.SqlClient.SqlBulkCopy(conn)) { sqlBC.BatchSize = 10000;// 每次提交的数量级 sqlBC... 阅读全文
posted @ 2013-08-02 14:15 Yu 阅读(280) 评论(0) 推荐(0)
摘要:DMV/F: https://msdn.microsoft.com/en-us/library/ms188068.aspx SELECT c.session_id , c.auth_scheme , c.node_affinity , r.scheduler_id , s.login_name , 阅读全文
posted @ 2013-05-30 13:07 Yu 阅读(336) 评论(0) 推荐(0)
摘要:远程调用失败打SQLSERVERR2SP2补丁或删除安装程序MicrosoftSQLServer2012ExpressLocalDB 阅读全文
posted @ 2013-01-06 21:38 Yu 阅读(199) 评论(0) 推荐(0)
摘要:1. 自定义的declare @watch datetime;set @watch=getdate();select * from table;select datediff(ms,watch,getdate()) as elapsedTime;2. 系统提供的set statistics time onselect * from tableset statistics time off结果输出在消息窗口里,如:SQL Server Execution Times: CPU time = 0 ms, elapsed time = 17 ms. 阅读全文
posted @ 2012-12-12 22:36 Yu 阅读(842) 评论(0) 推荐(0)
摘要:1. 本地服务器, 数据库之间的查询, 可这样操作:-- 执行以下系统存储语句, 取得 name 值, 如 '192.168.1.1\SQLEXPRESS'EXEC sp_helpserver-- 查询本地服务器的目标数据库select * from [192.168.1.1\SQLEXPRESS].目标数据库名称.dbo.表名2. 异地服务器, 数据库之间的查询, 可这样操作--映射异地服务器至本地服务器, 执行以下两句EXEC sp_addlinkedserver@server = 'demo', -- 目标服务器别名@srvproduct = 'M 阅读全文
posted @ 2012-09-21 13:09 Yu 阅读(4273) 评论(0) 推荐(2)
摘要:select count(id) from project p inner join task t on p.id=t.projectId;select count(id) from project where id in(select p.id from project p inner join task t on p.id=t.projectId);上面两条语句:当 project 与 task 是一对一时,结果是一样的当 project 与 task 是一对多时,结果就不一样了 阅读全文
posted @ 2012-05-08 17:34 Yu 阅读(190) 评论(0) 推荐(0)
摘要:cross join: 对A,B两表进行交差联接,结果集是等于 A表行数*B表行数。(一个笛卡尔积结果集)inner join: 在cross join的基础上,对其结果集进行 on 条件过滤。left/right join: 在inner join的基础上,对其结果集再添加左表(右表)在右表(左表)没有的外部行集(null值填充)。inner/left/right join 如果存在 where,则会对在on过滤之后的结果集(包括外部外)进行再次过滤。 阅读全文
posted @ 2012-05-03 09:01 Yu 阅读(186) 评论(0) 推荐(0)
摘要:没有在 group by 出现的基本列,是不能在select 子句中使用,若要使用,就只能作为聚合函数的输入。而 over 子句 就可以决解这一问题,如:select Name, Max(Age) Over() as MaxAge from usersrow_number()从1开始,为每一条分组... 阅读全文
posted @ 2012-04-14 23:07 Yu 阅读(170) 评论(0) 推荐(0)
摘要:select count(*) from project 返回表所有行总数select count(name) from project 返回表所有行中name不为null的行总数如果name确保不为null,上面两条查询语句的结果是一样的所以 select count(name) from project where name isnull是无效的 阅读全文
posted @ 2012-03-17 10:05 Yu 阅读(288) 评论(0) 推荐(0)
摘要:row_number() over(order by ##), 根据##的排序从 1 开始,自动增一。rank() over(order by ##) , 根据##的排序从 1 开始,自动增一;但对相同##,则不增一,而是保持上一个相同##的序号。当下一个不同时,##的序号不是它上一个序号的递增,而是之前相同##的个数总和的递增。dense_rank() over(order by ##),与 rank() 在##相同时的情况一样,但不同的是:在下一个不同时,##的序号是它上一个序号的递增,属于紧密排序,它不是之前相同##的个数总和的递增。ntile(整数 i) over(order by . 阅读全文
posted @ 2012-03-13 17:01 Yu 阅读(258) 评论(0) 推荐(0)