SQLServer | T-SQL
Aric红尘醉
致力于数据处理,包括数据库开发、设计与建模、报表开发、ETL、数据仓库、数据挖掘、数据分析、BI、数据可视化等等
展开
-
查找sqlserver数据库中,某一字段在 哪张表的哪一列中存在
有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段,在网上搜了一下,找到一个比较好的方法,通过一个存储过程实现的。只需要传入一个想要查找的值,即可查询出这个值所在的表和字段名。前提是要将这个存储过程放在所查询的数据库。CREATE PROCEDURE [dbo].[SP_FindValueInDB] ( @value VARCHAR(1024) )转载 2014-01-25 14:43:19 · 2737 阅读 · 0 评论 -
SQL Server: SELECT * 的真相: 索引覆盖(index coverage)
SELECT * 将造成表/索引扫描SELECT * 的最大问题是将影响查询计划。SQL Server主要使用索引去查询你需要的数据,当索引包括所有的你请求查询的字段,SQL Server将不需要去在表中查询。这个概念称做索引覆盖。在上面的例子中,第一个查询结果是在聚集索引扫描中,反过来,第二个例子使用了更多更有效率的索引扫描。在这个案例中,索引扫描比聚集索引扫描快100倍。转载 2015-09-17 23:35:21 · 2275 阅读 · 0 评论 -
SQL Server索引(1)-- 基础
一、存储结构 为什么要谈存储结构,因为索引说通俗点,其实就是我们现实生活中的地址。更加进一步来说,它就是把我们的数据按照一定的规则进行整理以便我们快速的查找。 在SQL Server中,有许多不同的可用排列规则选项,例如: 二进制--按字符的数字表示形式排序(ASCII码中,用数字32表示空格,用68表示字母"D")。因为所有内容都表示为数字,所以处理起来速度最转载 2015-08-02 17:56:32 · 710 阅读 · 0 评论 -
SQL:SQL SERVER 导入图片
use NM;CREATE TABLE dbo.cv(img varbinary(max)) ;INSERT INTO dbo.cv(img) SELECT * FROM OPENROWSET(BULK N'E:\iWorkspace\Images\test.gif', SINGLE_BLOB) AS Photoselect * from dbo.cv;说明:获取原创 2015-07-07 16:44:34 · 2715 阅读 · 1 评论 -
SQL Server存储机制
1、区段 区段(extent)是用来为表和索引分配空间的基本存储单元。它由8个连续页组成。 基于区段(而不是实际使用空间)分配空间的概念的要点: 一旦区段已满,那么下一记录将要占据的空间不是记录的大小,而是整个新区段的大小。一次分配一个区段而不是分配一个记录。 通过预分配空间,SQL Server节省为每个记录分配新空间的时间。 向当前分配的区段添加了转载 2015-07-30 20:39:22 · 668 阅读 · 0 评论 -
SQLServer查看数据表占用硬盘的空间大小:sp_spaceused
sp_spaceused [ @objname=], [ @updateusage=] Parameter:[ @objname=] 'objname' ----------------------------要查询的对象名,不指定此参数显示整个数据库的大小。[ @updateusage=] 'updateusage'----------------是否使用DBCC UPDATEUSAGE更新空间使用信息。显示行数、保留的磁盘空间以及当前数据库中的表所使用的磁盘空间,或显示由整个数据库保留和使用原创 2015-06-16 15:44:14 · 6805 阅读 · 0 评论 -
sql server2008 附加数据库——错误3415
简单来说其实就是权限问题,我们登录数据库的账号不一定对文件有读写权限,找下图去配置就好了:给到everyone用户全部的权限:网上还说了其它方式,这里我并木有去验证,列出来仅供参考: 1.将要附加的文件拷贝到 SQL Server 默认的 Data 目录,此时附加就会成功;(我用之种方式原创 2014-12-11 09:59:20 · 8107 阅读 · 0 评论 -
SQL Server 2014新特性探秘(1)-内存数据库
简介 SQL Server 2014提供了众多激动人心的新功能,但其中我想最让人期待的特性之一就要算内存数据库了。去年我再西雅图参加SQL PASS Summit 2012的开幕式时,微软就宣布了将在下一个SQL Server版本中附带代号为Hekaton的内存数据库引擎。现在随着2014CTP1的到来,我们终于可以一窥其面貌。 内存数据库 在传统转载 2014-06-06 15:45:35 · 719 阅读 · 0 评论 -
SQL Server 性能工具(SQL Server Profiler和数据库引擎优化顾问)使用方法详解
简介 说到Sql的【性能工具】真是强大,可以让一个像我这样的菜鸟都能找到高手的感觉,SQL Server Profiler的中文意思是SQL Server事件探查,这个到低是做什么用的呢?我们都知道探查的意思大多是和监视有关,其实这个SQL Server Profiler就是一个Sql的监视工具,可以具体到每一行Sql语句,每一次操作,和每一次的连接。感觉这个工具转载 2014-06-04 12:59:57 · 1489 阅读 · 0 评论 -
sql server 2008链接服务器的访问接口缺少 "Microsoft.Ace.OleDb.12.0" 接口 怎么办?
前面机子坏了 重装了64位的win7系统 然后装了32位的office 64位的sql server 2008发现sql server 2008 没有 "Microsoft.Ace.OleDb.12.0" 接口 ,导致我用 OpenDataSource('Microsoft.Ace.OLEDB.12.0' 导入Excel数据报错-- 装个Access数据库引擎就有了原创 2014-02-14 22:41:45 · 9460 阅读 · 0 评论 -
由于特殊字符引起的字符串不相等
我在数据库发现了下面现象:百思不得其解,然后我的数据是Excel导进去的,我想是不是Excel里面有什么特殊字符于是去令了出来,果然如此:原创 2014-02-19 17:27:52 · 1220 阅读 · 0 评论 -
sqlserver2008 排序函数
排序函数:1.row_number() over(order by liename):根据order by后面的字段排序,为每一行给定一个唯一的行号select row_number() over( order by iname desc ) as rowid ,iname from test2.Rank():根据order by 后面的字段排序,order by后转载 2014-02-14 11:35:23 · 2100 阅读 · 0 评论 -
SQLServer 实用语法大全
1、将表名作为参数的存储过程eg:create proc s_Table_SearchInfo @TableName nvarchar(100) AS Begindeclare @value nvarchar(50), @sql nvarchar(1000) set @sql= ' select * from ' + @TableNa转载 2014-01-25 15:03:08 · 1520 阅读 · 0 评论 -
Sqlserver 查找数据库中含有某字段的所有表
--含有医院编号字段的所有表select a.[name] 表名 from sysobjects a,( select [id],count(*) b from syscolumns where [name] ='HospitalId' group by [id])b where a.[id]=b.[id]转载 2014-01-25 14:50:09 · 5192 阅读 · 0 评论 -
[SQL Server]发送HTML格式邮件
sql server 发送html格式的邮件, 参考代码如下: DECLARE @tableHTML NVARCHAR(MAX) ; -- 获取当前系统时间,和数据统计的时间 set @d_nowdate = convert(datetime,convert(varchar(10),dateadd(day,-1,getdate()),120),120);转载 2014-01-25 15:07:30 · 1772 阅读 · 0 评论 -
嵌套循环连接(Nested Loops), 合并联接(Merge), 哈希联接(Hash)的适用情况
1.嵌套循环连接(Nested Loops)适用范围两个表, 一个叫外部表, 一个叫内部表.如果外部输入非常小,而内部输入非常大并且已预先建立索引,那么嵌套循环联接将特别有效率。关于连接时哪个表为outer表,哪个为inner表,我发现sql server会自动给你安排,和你写的位置无关,它自动选择数据量小的表为outer表, 数据量大的表为inner表。2.合并联接(Merge)指两个表在on的过滤条件上都有索引, 都是有序的, 这样, join时, sql server就会使用Merg转载 2015-09-17 23:43:27 · 2298 阅读 · 0 评论