摘要:
SQL Server 提供了专用管理员链接(DAC)。DAC允许管理员访问运行的服务器以执行诊断函数或Transact—SQL语句,或对服务器上的问题进行故障排除,即使服务器以锁定或在非正常状态下运行。DAC默认情况下只有服务器上可以使用DAC,但是你可以通过 SQLServer 2005 外围应用配置器设置允许远程计算机上的客户端应用程序使用 DAC,如下图所示你也可以通过下面的SP... 阅读全文
随笔分类 - 数据库技术(MS SQL)
查看数据库、表、索引的物理存储情况
2010-09-13 08:18 by 潇湘隐者, 2541 阅读, 收藏,
摘要:
在管理、维护数据库时,经常需要查看数据库文件、日志文件所占用的磁盘空间,以及磁盘还剩下的磁盘空间,你可以通过下面几种方面查看数据库文件详细情况:1: 是通过远程连接(或VPN)连接到数据库服务器,直接去查看。2: 你连接到数据库后,可以通过mssms管理器,选择要查看的数据库,单击右键选择属性。然后选择文件选项,如下图所示。3: 通过SQL命令、脚本查看。3.1: sys.database_files 视图中保存着数据库文件(数据文件、日志文件)等的详细信息SELECT*FROMsys.database_files--通过下面命令,查看系统各磁盘可使用空间。EXECmaster..xp_fix 阅读全文
Microsoft OLE DB Provider for ODBC 组件
2010-09-09 14:51 by 潇湘隐者, 2716 阅读, 收藏,
摘要:
Microsoft OLE DB Provider for ODBC (MSDASQL) 一项允许在 OLEDB 和 ADO(它在内部使用 OLEDB)上构建的应用程序通过 ODBC 驱动程序访问数据源的技术。 MSDASQL 是用于连接到 ODBC(而不是数据库)的 OLEDB 访问接口。 MSDASQL 随 Windows 操作系统提供,Windows Server 2008 和 Window... 阅读全文
数据库表的基本信息,你知道吗?
2010-09-03 12:15 by 潇湘隐者, 5401 阅读, 收藏,
摘要:
用SQL Doc生成数据库字典文档的时候,突然发现有字段描叙(Description)这项内容,以前一直没有注意过,故特意研究了一下,结果越挖越深,就写了这篇文章。以前在做数据库脚本开发时,新建表时,对各个字段的描叙要么是记录在文档里面,要么自己建一个表,来保存这些内容,以便日后开发、维护的方便。其实这些信息完全可以放在数据库自己的系统视图里面。对字段的说明、描述一般都放在系统视图sys.exte... 阅读全文
SQL模板资源管理器,你用了吗?
2010-08-21 21:30 by 潇湘隐者, 1857 阅读, 收藏,
摘要:
SQL Server Management Studio 有个模板资源管理器,不知你用过没有?使用模板创建脚本、自定义模板等功能能大大提高你的工作效率,如果没有尝试过,赶紧去试试吧。很多时候,我们习惯了手写脚本,而不愿意花费精力去研究陌生的工具。你可以在通过下面方式打开模板资源管理器 视图->模板资源管理器; 也可以通过快捷键CTRL + ALT + T打开它。如图所示,你可以看见里面已经包... 阅读全文
如何书写优雅、漂亮的SQL脚本?
2010-08-16 08:40 by 潇湘隐者, 35343 阅读, 收藏,
摘要:
本篇来聊聊如何书写漂亮、整洁、优雅的SQL脚本,下面这些是我个人总结、整理出来的。姑且做个抛砖引玉吧,呵呵,欢迎大家一起来讨论。我们首先来看看一段创建数据表的脚本(如下所示),你是否觉得有什么不妥或是不足呢?如果是你,你怎样书写呢?代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHig... 阅读全文
SQL Server——存储过程
2010-08-14 01:10 by 潇湘隐者, 7208 阅读, 收藏,
摘要:
我想从下面几个方面大概的讲述下存储过程,可能有些知识点是你没有注意的,也可能有些知识点我不知道,欢迎大家指点指点。如有不足,欢迎指教!存储过程概念存储过程优点存储过程的接口存储过程的解析、编译过程存储过程安全性查看存储过程加密、解密存储过程存储过程概念存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(带参... 阅读全文
SQL Server ——动态SQL
2010-08-05 00:06 by 潇湘隐者, 22678 阅读, 收藏,
摘要:
动态SQL:code that is executed dynamically。它一般是根据用户输入或外部条件动态组合的SQL语句块。动态SQL能灵活的发挥SQL强大的功能、方便的解决一些其它方法难以解决的问题。相信使用过动态SQL的人都能体会到它带来的便利,然而动态SQL有时候在执行性能(效率)上面不如静态SQL,而且使用不恰当,往往会在安全方面存在隐患(SQL 注入式攻击)。动态SQL可以通过... 阅读全文
重温SQL——行转列,列转行
2010-07-28 08:40 by 潇湘隐者, 213424 阅读, 收藏,
摘要:
行转列,列转行是我们在开发过程中经常碰到的问题。行转列一般通过CASE WHEN 语句来实现,也可以通过 SQL SERVER 2005 新增的运算符PIVOT来实现。用传统的方法,比较好理解。层次清晰,而且比较习惯。 但是PIVOT 、UNPIVOT提供的语法比一系列复杂的SELECT...CASE 语句中所指定的语法更简单、更具可读性。下面我们通过几个简单的例子来介绍一下列转行、行转列问题。 我们首先先通过一个老生常谈的例子,学生成绩表(下面简化了些)来形象了解下行转列CREATE TABLE [StudentScores]( [UserName] NVARCHAR(... 阅读全文
DATEDIFF函数小问题
2010-07-27 08:20 by 潇湘隐者, 1744 阅读, 收藏,
摘要:
DATEDIFF函数语法如下DATEDIFF( datepart , startdate , enddate ),返回指定的 startdate 和 enddate 之间所跨的指定 datepart 边界的计数(带符号的整数)。下面来说说我碰到的这个问题。用户表里user里面有个字段Create_Time记录用户注册日期,Last_Login_Time 记录用户最后登录的时间,要统计注册用户在注册... 阅读全文
动态SQL应用小列子
2010-07-21 11:40 by 潇湘隐者, 1056 阅读, 收藏,
摘要:
呵呵,几乎成标题党了,今天要写个脚本查询7天内所有有登录玩家的数据,要求按注册日期统计,虽然是个简单的问题,但是关键是用户表有30个,分别是user0, user1......到user29 ,光是把它们UNION ALL起来,我都够郁闷了,你想象下脚本有多长吧,一大堆堆在那儿,光是复制都让你难以忍受。[代码]呵呵,下面是我用动态SQL 改写的,呵呵,简洁多了[代码]这里得提提CHAR(10)这个... 阅读全文
SQL性能调优实践——SELECT COUNT
2010-07-16 10:34 by 潇湘隐者, 29794 阅读, 收藏,
摘要:
最近想深入学习SQL,在网上搜索到一些SQL 优化的资料要么是张冠李戴,Oracle 优化的资料硬是弄成啦MS SQL 优化的资料,而且被很多人转载,收藏,有些要么有些含糊不清,好像是那么回事,也没经过验证,实践出真知!下面是我对SELECT COUNT(*), SELECT COUNT(1),SELECT COUNT (0), SELECT COUNT(Field)等孰优孰劣的测试结果,如果测试... 阅读全文
MS SQL开发命名规则
2010-07-13 17:25 by 潇湘隐者, 2366 阅读, 收藏,
摘要:
下面的SQL开发命名规则是我自己开发时总结、整理出来的,以后的开发过程中将不断完善、修改。也希望各位网友指点、批判。 纲领: SQL 语句关键字全部大写, 命名规则建议使用Pascal Case 或 每个单词使用下划线_隔开,不建议全部使用小写。尽量少使用特殊字符比如数字、空格等 使用英文或英文缩写,不建议使用拼音。尽量见名知意。 1: 数据库名命... 阅读全文
XP系统无法运行SQL Server 2005企业版
2010-04-12 21:59 by 潇湘隐者, 2695 阅读, 收藏,
摘要:
一直都是在Windows 2003上面做开发的,直到最近换了XP系统,装了个SQL Server 2005 企业版本,装的时候就觉得比较怪异,发现有些组件都安装不了,印象中在Windows 2003上面安装没有这个现象,安装完后,打开SQL Server Management器,发现打开服务器名称也找不到对应的实例 于是我打开SQL Server 2005外围应用配置器,点击“服务和连接的外围应用配置器”出现如下图错误。刚开始我以为是SQL Server 2005有些组件安装不成功或是配置引起的错误,于是在网上查找这个错误的原因,结果发现有位网友在这篇帖子里有提及和我比较类似的情况, htt. 阅读全文
数据查询表,列名对比
2010-01-19 09:28 by 潇湘隐者, 1261 阅读, 收藏,
摘要:
在数据库里创建、删除表时,往往需要判断这个表是否存在; 有时候在修改表字段,比如添加、删除字段时也需要事先判断该字段是否存在,这往往有对应的脚本或操作,不同的数据库有不同的相关的对象、脚本。下面我们拿Access 2003 , SQL Server 2005 , Oracle 10i来分析对比一下吧。 一:在SQL Server 2005 里查询某个表是否存在以及查询某个表有哪些字段的... 阅读全文
MS SQL 建表SQL的脚本
2009-08-29 03:22 by 潇湘隐者, 4933 阅读, 收藏,
摘要:
数据库里新建一个表的方式比较多,可以在对象资源管理器手动新建一个表,这样的建表方式比较方便、直观。但是如果该表要在几个数据库(开发环境数据库,测试环境数据库、正式系统数据库等)里新建的话,这时反而不如用脚本处理,这样会方便得多。尤其是在创建数据库时要新建上百个表时,那种手工建表方式想都不敢想。这里主要讨论、收集使用脚本来新建表的写法。如有不妥或不对的地方,希望大家多多指教,更正我的错误。下面来看看第一种SQL写法Code SnippetCREATE TABLE UserContactPerson(IDINT PRIMARY KEY,UserIDINT,ContactPersonIDINT)这. 阅读全文
浙公网安备 33010602011771号