-
获取SQLServer表字段的各种属性实例代码
复制代码代码如下:--SQLServer2000SELECTa.nameAS字段名,CASEWHENEXISTS(SELECT1FROMsysobjectsWHERExtype='PK'ANDparent_obj=a.idANDnameIN(SELECTnameFROMsysindexesWHEREindidIN(SELECTindidFROMsysindexkeysWHEREid=a.idANDcolid=a.colid)))THEN'1'ELSE'0'ENDAS主键,CASEWHENCOLUMNPROPERTY(a.id,a.name,'IsIdentity')=1THEN'1'ELSE'0'ENDAS标识,b.nameAS类型,a.lengthAS占用字节数,COLUMNPROPERTY(a.id,a.name,'PRECISION')AS长度,a.xscaleAS小数,a.isnullableAS可空,ISNULL(e.text,'')AS默认值,ISNULL(g.[value],'')AS字段说明FROMsyscolumnsaLEFTOUTERJOINsystypesbONa...
数据库操作教程 2022-09-23 20:40:11 -
用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等
用SQL语句添加删除修改字段1.增加字段altertabledocdspadddspcodechar(200)2.删除字段ALTERTABLEtable_NAMEDROPCOLUMNcolumn_NAME3.修改字段类型ALTERTABLEtable_nameALTERCOLUMNcolumn_namenew_data_type4.sp_rename改名更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。语法sp_rename[@objname=]'object_name',[@newname=]'new_name'[,[@objtype=]'object_type']如:EXECsp_rename'newname','PartStock'5.sp_help显示表的一些基本情况sp_help'object_name'如:EXECsp_help'PartStock'6.判断某一表PartStock中字段PartVelocity是否存在ifexists(select*fromsyscolumnswhereid=object_id('PartStock')andname='Pa...
数据库操作教程 2022-09-23 20:34:32 -
mssql30万条数据搜索文本字段的各种方式对比
数据库:30万条,有ID列但无主键,在要搜索的“分类”字段上建有非聚集索引过程T-SQL:复制代码代码如下:/*用户自定义函数:执行时间在1150-1200毫秒左右CREATEFUNCTION[dbo].[gethl](@typesnvarchar(4))RETURNStableASreturnselect书名from图书三十万条Where分类Like'%'+@types+'%'存储过程:CREATEPROCEDURE[dbo].[getfl](@typennvarchar(4))ASselect书名from图书三十万条Where分类Like'%'+@typen+'%'*/复制代码代码如下:declare@adatetime,@bnvarchar(4)set@a=getDate()select书名from图书三十万条Where分类Like'%医学%'--“分类”列有非聚集索引,比聚集索引1150快一点,差不多执行时间在1100左右--select书名fromgethl('医学')--使用用户自定义函数,效率和建立聚集索引一样,还稍慢一点在1150-1200--Executegetfl'...
数据库操作教程 2022-09-23 20:24:39 -
对有自增长字段的表导入数据注意事项
对有自增长字段的表导入数据注意事项:1、把自增长字段暂时设置成非自增长的;导入数据成功后,再设置成自增长字段。2、导出、导入数据时,注意选择文本格式,防止出现乱码、数据转换不成功等情况...
数据库操作教程 2022-09-23 20:21:42 -
列出SQLServer中具有默认值的所有字段的语句
专家解答 通过查询任何数据库中的三个系统表,你可以获得每个表的每一个字段的默认值。下面是这个核心查询...
数据库操作教程 2022-09-23 20:12:48 -
SqlServer给表增加多个字段的语法
添加字段语法altertabletable_nameaddcolumn_name+字段类型+约束条件给一个表增加多个字段:useNatureDatagoaltertableXunHuaddMaleCountvarchar(50)null,FemaleCountvarchar(50)null,SubadultCountvarchar(50)null,LarvaeCountvarchar(50)null,TraceTypevarchar(50)null,MountainAreavarchar(50)null,BehaviourTypevarchar(50)null,Areavarchar(50)null,Phenologyvarchar(50)null;go总结以上所述是小编给大家介绍的SqlServer给表增加多个字段语法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!...
数据库操作教程 2022-09-23 18:18:03 -
SQLServer聚焦存储过程性能优化、数据压缩和页压缩提高IO性能方法(一)
前言关于SQLServer基础系列尚未结束,还剩下最后一点内容未写,后面会继续。有园友询问我什么时候开始写SQLServer性能系列,估计还得等一段时间,最近工作也比较忙,但是会陆陆续续的更新SQLServer性能系列,本篇作为性能系列的基本引导,让大家尝尝鲜...
数据库操作教程 2022-09-23 18:17:37 -
当masterdown掉后,pt-heartbeat不断重试会导致内存缓慢增长的原因及解决办法
最近同事反映,在使用pt-heartbeat监控主从复制延迟的过程中,如果masterdown掉了,则pt-heartbeat则会连接失败,但会不断重试。重试本无可厚非,毕竟从使用者的角度来说,希望pt-heartbeat能不断重试,直到重新连接上数据库...
数据库操作教程 2022-09-23 18:14:48 -
浅谈sqlserver下float的不确定性
很多时候,大家都知道,浮点型这个东西,本身存储就是一个不确定的数值,你永远无法知道,它是0=0.00000000000000123还是0=0.00000000000999这样的东西。也许一开始使用的时候没有问题,但是有时候做统计的时候,就会看出端倪简单的举个例子,就知道统计的时候,有可能出现意外的效果,导致可能需要存储过程或者接收程序的代码左额外的取舍数位的处理,所以在此其实我是推荐使用Numeric来替代float进行一个替代使用,避免一个sum,然后明明明细看每一条数据都是正常的2,3位小数,一汇总就变成了8,9位的样子CREATETABLE#T(IDINTIDENTITY,VaFLOAT)CREATETABLE#T1(IDINTIDENTITY,VaNUMERIC(15,9))--分开执行-------------------------------------------------INSERTINTO#T(Va)VALUES(0.60000000)INSERTINTO#T1(Va)VALUES(0.60000000)GO100SELECTSUM(Va)FROM#TSELECT...
数据库操作教程 2022-09-23 18:13:48 -
SQL语句实现表中字段的组合累加排序
有表如下:idinoutindex1101222982312831993112032518222002这三个字段均为integer类型现要求如下:1、按index=2查找2、将所有id相同的和在一起,数据要加在一起3、最后呈现的数据要按in+out进行排序,按由大到小为满足以上的要求:设计的SQL语句如下(假设表名为tab)复制代码代码如下:selectid,sum(in)asin,sum(out)asoutfromtabwhereindex=2groupbyidorderbyin+outdesc;以上就是SQL语句实现表中字段的组合累加排序的全部内容,希望能给大家一个参考,也希望大家多多支持脚本之家。...
数据库操作教程 2022-09-23 18:03:04 -
通过使用正确的searcharguments来提高SQLServer数据库的性能
原文地址:http://www.sqlpassion.at/archive/2014/04/08/improving-query-performance-by-using-correct-search-arguments/今天的文章给大家谈谈在SQLServer上关于indexing的一个特定的性能问题。问题看看下面的简单的query语句,可能你已经在你看到过几百次了--ResultsinanIndexScanSELECT*FROMSales.SalesOrderHeaderWHEREYEAR(OrderDate)=2005ANDMONTH(OrderDate)=7GO上门的代码查询一个销售信息,需要一个特定的月份和年份的,这不是很复杂...
数据库操作教程 2022-09-23 18:00:56 -
SQLServer中检查字段的值是否为数字的方法
最近有一个项目,需要检查某个字符型字段的值是否为数字,由于数据行是海量,所以需要通过SQL语句来筛查,这里拿来做个备忘。用到的函数为IsNumeric,具体语句如下所示:复制代码代码如下:SELECT*FROM表WHEREIsNumeric(需要检查的字段名)=0ISNUMERIC 确定表达式是否为一个有效的数字类型...
数据库操作教程 2022-09-23 17:56:51