随笔分类 -  数据库知识

Microsoft SQL Server
摘要:很经常我们都要在sql中拼凑字符串,如果需要的评凑的目标字符串的来源都已经在一个表中,那很简单,我们只要写个类似的语句,就可以搞定。declare@Va1varchar(500);set@Va1='';select@Va1=@Va1+',['+ColumnName+']'fromItemColumnwhereyear=2008andmonth=1orderbySortIDdescprint@Va1比如输出为:,[总分],[主题检测],[常规检测],[扣分项],[总体评价],[无推诿],[环境设施],[业务能力],[服务规范]但是如果我们的数据来源 阅读全文
posted @ 2011-05-18 18:19 Code技术人生 阅读(1445) 评论(0) 推荐(0)
摘要:本篇文章着重讨论两个问题:1、主键设为Int型与Varchar型,性能有何差异?2、非聚集索引在大数量下能否提高性能?测试环境:Cpu:T2300 1.66G 内存:1G系统:Windows Xp Sp3数据库:SQL Server 2005步骤:一、建立两个表字段ABdtAdtB表:TestA类型intvarchardatetimedatetime说明主键 字段ABdtAdtB表:TestB类型intvarchardatetimedatetime说明 主键 非聚集索引二、填充数据declare@aintset@a=1useextdatawhile(@a<5000000)beginins 阅读全文
posted @ 2011-05-17 17:52 Code技术人生 阅读(700) 评论(0) 推荐(0)
摘要:创建索引索引被创建于已有的表中,它可使对行的定位更快速更有效。可以在表格的一个或者多个列上创建索引,每个索引都会被起个名字。用户无法看到索引,它们只能被用来加速查询。注释:更新一个包含索引的表需要比更新一个没有索引的表更多的时间,这是由于索引本身也需要更新。因此,理想的做法是仅仅在常常用于搜索的列上面创建索引。唯一的索引 (Unique Index)在表格上面创建某个一个唯一的索引。唯一的索引意味着两个行不能拥有相同的索引值。CREATE UNIQUE INDEX 索引名称ON 表名称 (列名称) "列名称" 规定你需要索引的列。简单的索引在表上创建一个简单的索引。当我们省 阅读全文
posted @ 2011-05-17 17:50 Code技术人生 阅读(295) 评论(0) 推荐(0)
摘要:什么是索引拿汉语字典的目录页(索引)打比方:正如汉语字典中的汉字按页存放一样,SQL Server中的数据记录也是按页存放的,每页容量一般为4K 。为了加快查找的速度,汉语字(词)典一般都有按拼音、笔画、偏旁部首等排序的目录(索引),我们可以选择按拼音或笔画查找方式,快速查找到需要的字(词)。同理,SQL Server允许用户在表中创建索引,指定按某列预先排序,从而大大提高查询速度。• SQL Server中的数据也是按页( 4KB )存放• 索引:是SQL Server编排数据的内部方法。它为SQL Server提供一种方法来编排查询数据 。• 索引页:数据库中存储索引的数据页;索引页类似于 阅读全文
posted @ 2011-05-17 17:44 Code技术人生 阅读(379) 评论(0) 推荐(0)
摘要:索引是以表列为基础的数据库对象。索引中保存着表中排序的索引列,并且纪录了索引列在数据库表中的物理存储位置,实现了表中数据的逻辑排序。通过索引,可以加快数据的查询速度和减少系统的响应时间;可以使表和表之间的连接速度加快。 但是,不是在任何时候使用索引都能够达到这种效果。若在不恰当的场合下,使用索引反而会事与愿违。所以,在SQL Server数据库中使用索引的话,还是需要遵守一定的规则。笔者觉得,主要是需要遵守六大铁律。 铁律一:天下没有免费的午餐,使用索引是需要付出代价的。 索引的优点有目共睹,但是,却很少有人关心过采用索引所需要付出的成本。若数据库管理员能够对索引所需要付出的代价有一个充分的认 阅读全文
posted @ 2011-05-17 17:35 Code技术人生 阅读(209) 评论(0) 推荐(0)
摘要:关键字: 字符串 截取 SUBSTRING 返回字符、binary、text 或 image 表达式的一部分。有关可与该函数一起使用的有效 Microsoft&reg; SQL Server&#8482; 数据类型的更多信息,请参见数据类型。 语法 SUBSTRING ( expression , start , length ) 参数 expression 是字符串、二进制字符串、text、image、列或包含列的表达式。不要使用包含聚合函数的表达式。 start 是一个整数,指定子串的开始位置。 length 是一个整数,指定子串的长度(要返回的字符数或字节数)。 subs 阅读全文
posted @ 2011-05-17 16:10 Code技术人生 阅读(308) 评论(0) 推荐(0)
摘要:插入一条记录后想要立刻获取其数据表中的主键返回值。这个主键是自动生成的,其实实现的方式有很多,比如再进行一次查询,获取出来等。 插入一条记录后想要立刻获取其数据表中的主键返回值。这个主键是自动生成的,其实实现的方式有很多,比如再进行一次查询,获取出来。或者在插入数据之前取出最大值,在最大值上面加一等等,方法很多,但是有些很不方便。 个人感觉最快的方式就是,在插入数据后直接获取主键的值,然后返回过来。 方法如下: sql语句如下:INSERTINTOtableName(fieldname...)values(value...)SELECT@@IDENTITYASreturnName; 在sql. 阅读全文
posted @ 2011-05-17 10:57 Code技术人生 阅读(4685) 评论(0) 推荐(0)
摘要:此转载源自李洪根的blog.作者是微软的MVP!希望大家参考以下3种方案,按实际情况选择!建立表:CREATE TABLE [TestTable] ([ID] [int] IDENTITY (1, 1) NOT NULL ,[FirstName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,[LastName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL ,[Country] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,[Note] [n 阅读全文
posted @ 2011-05-17 00:04 Code技术人生 阅读(235) 评论(0) 推荐(0)
摘要:SQL Server 索引结构及其使用(一)作者:freedk一、深入浅出理解索引结构 实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别: 其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字,就会很自然地翻开字典的前几页,因为“安”的拼音是“an”,而按照拼音排序汉字的字典是以英文字母“a”开头并以“z”结尾的,那么“安”字就自然地排在字典的前 阅读全文
posted @ 2011-05-16 22:31 Code技术人生 阅读(224) 评论(0) 推荐(0)
摘要:我们经常出于某种目的需要使用各种各样的日期格式,当然我们可以使用字符串操作来构造各种日期格式,但是有现成的函数为什么不用呢? SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如: select getdate() 2004-09-12 11:06:08.177 整理了一下SQL Server里面可能经常会用到的日期格式转换方法: 举例如下: select CONVERT(varchar, getdate(), 120 ) 2004-09-12 11:06:08 select replace(replace(replace(CO 阅读全文
posted @ 2011-03-11 17:00 Code技术人生 阅读(269) 评论(0) 推荐(0)
摘要:客户服务器上装了sqlserver 2000 同时装了sqlserver 2005在程序里连接sqlserver 2005时,有时候会报一个错误:“sa”登陆失败。原因:未与信任的sqlserver 连接相关联。或者错误:???解决办法从网上找到,如下:如何打开sql server 2005 的1433端口 配置工具->Sql Server Configuration Manager->MSSQLSERVER的协议看看TCP/IP协议是否启动,如果启动,右键菜单点"属性" ,在分页菜单中选"IP地址",把"IP1"和&qu 阅读全文
posted @ 2011-03-09 08:58 Code技术人生 阅读(12232) 评论(0) 推荐(1)
摘要:不想人工干预地自动执行存储过程?当目的表发生变动时自动执行相应的存储过程?本存储过程就是提供这样一个方法…… /** * 关于: MS SQL Server 2000 触发器调用存储过程 * 作者:彭建军 * 测试环境:SQL Server 2000 SP4 + Windows XP Sp2 * 更新时间:2006-7-8 16:36 **/ --创建测试环境 USE Master GO IF EXISTS (SELECT NAME FROM SYSOBJECTS WHERE XTYPE = 'U' AND NAME = '卷烟销售表') DROP TABLE 卷烟销售表 GO IF EXIS 阅读全文
posted @ 2010-12-17 19:25 Code技术人生 阅读(377) 评论(0) 推荐(0)
摘要:配置sql server 2000以允许远程访问适合故障: 1. 用sql企业管理器能访问sql server 2000(因为它是采用命名管道(named pipes)方式进行方式),但用ado.net 方式(udp)不能访问. 2. 采用ado.net方式不能远程访问. 故障的可能原因有:(1).sql server 2000没有安装sql server 2000 sp3a及以上升级包,还未启用... 阅读全文
posted @ 2010-12-01 12:06 Code技术人生 阅读(19674) 评论(0) 推荐(1)
摘要:装sql server sp4时,出现以前进行的程序安装创建了挂起的文件操作.运行程序之前,必须重新起动计算机在安装Sql或sp补丁的时候系统提示之前有挂起的安装操作,要求重启,这里往往重启无用,解决办法:  到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager  删除PendingFileRenameOperat... 阅读全文
posted @ 2010-12-01 11:35 Code技术人生 阅读(921) 评论(0) 推荐(0)
摘要:网站开发未与信任SQL Server连接相关联Image is everythingDate:2009-11-26  Type:网站知识在网站开发中出现,未与信任SQL Server连接相关联,今天把电脑系统还原了,电脑上装的SQL2000在进行SQL连接时,又遇到这个问题,将解决方案整理一下供朋友分享。问题简述:1,用户 ’sa’ 登录失败,原因:未与信任 SQL Ser... 阅读全文
posted @ 2010-11-26 17:51 Code技术人生 阅读(744) 评论(0) 推荐(0)
摘要:代码 阅读全文
posted @ 2010-11-25 23:44 Code技术人生 阅读(358) 评论(0) 推荐(0)
摘要:以下两个视图均基于系统表sysobjects、syscomments和系统视图sysconstraints,查询结果中包括表ID、表名、列ID、列名、CHECK约束ID、CHECK约束名、CHECK约束status值以及CHECK约束的内容,TCCView为Table-Column-Check View,结果中均为列级CHECK约束,TCView为Table-Check View,结果中均为表级C... 阅读全文
posted @ 2010-11-25 23:38 Code技术人生 阅读(747) 评论(0) 推荐(0)
摘要:代码 阅读全文
posted @ 2010-11-25 18:30 Code技术人生 阅读(611) 评论(0) 推荐(0)
摘要:代码 阅读全文
posted @ 2010-11-25 18:29 Code技术人生 阅读(1182) 评论(0) 推荐(0)
摘要:代码 阅读全文
posted @ 2010-11-25 18:26 Code技术人生 阅读(2659) 评论(0) 推荐(0)