-
MSSQLServer查询优化方法整理
1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)2、I/O吞吐量小,形成了瓶颈效应。3、没有创建计算列导致查询不优化...
数据库操作教程 2022-09-23 16:51:43 -
SQLServer数据库备份和还原认识和总结(一)
可能许多同学对SQLServer的备份和还原有一些了解,也可能经常使用备份和还原功能,我相信除DBA之外我们大部分开发员队伍对备份和还原只使用最基础的功能,对它也只有一个大概的认识,如果对它有更深入的认识,了解它更全面的功能岂不是更好,到用时会得心应手。因为经常有中小型客户公司管理人员对数据库不了解或掌握不牢,会请我们技术人员出马找回丢失的数据或硬件损坏移动数据的现象,或其它情况的发生...
数据库操作教程 2022-09-23 16:51:30 -
sqlserver字符串非空判断实现方法
复制代码代码如下:CREATEfunctiongetcolor(@井号varchar(50),@层位varchar(50))returnsvarchar(200)asbegindeclare@sqlvarchar(2000);set@sql=''--distinctselect@sql=@sql+颜色+','from(selectdistinct颜色fromyourtablenamewhere井号=@井号and层位=@层位and颜色isnotnull)aaset@sql=substring(@sql,1,len(@sql)-1)return@sqlend我发现set@sql=substring(@sql,1,len(@sql)-1)这句有的时候会报错,原因是@sql在用substring的时候,有时候会为空字符串请问在函数中,如何在substring之前判断下@sql是否为空?if@sqlisnotnullandlen(@sql)>=1set@sql=substring(@sql,1,len(@sql)-1)else....
数据库操作教程 2022-09-23 16:51:26 -
SQLServer数据库实用SQL语句
--查看指定表的外键约束select*fromsysobjectswhereparent_objin(selectidfromsysobjectswherename='表名')andxtype='PK'--查看所有表select*fromsysobjectswherextype='PK'--删除列中含数字的deletenewswherepatindex('%[0-9]%',title)>0--删除删去字段title值重复的行,且只保留id较小的这个deletenewswhereexists(select1fromnewstwheret.title=news.titleandt.id<news.id)--查看数据库信息select*fromsys.databaseswherename='master'1.按姓氏笔画排序:Select*FromTableNameOrderByCustomerNameCollateChinese_PRC_Stroke_ci_as2.分页SQL语句select*from(select(row_number()OVER(ORDERBYtab.IDDe...
数据库操作教程 2022-09-23 16:51:16 -
CPQuery解决拼接SQL的新方法
我一直都不喜欢在访问数据库时采用拼接SQL的方法,原因有以下几点:1.不安全:有被SQL注入的风险。2.可能会影响性能:每条SQL语句都需要数据库引擎执行[语句分析]之类的开销...
数据库操作教程 2022-09-23 16:50:57 -
SQLServer自动更新统计信息的基本算法
自动更新统计信息的基本算法是:·如果表格是在tempdb数据库表的基数是小于6,自动更新到表的每个六个修改。·如果表的基数是大于6,但小于或等于500,更新状态每500的修改...
数据库操作教程 2022-09-23 16:50:50 -
jdbc连接sqlserver数据库问题分析
SQLServer连接中问题还真多。不进行设置还真连接不上,这里小记一下!(部分资料来源于互联网)JDBC连接MySQL出现的问题(例子里面自带JDBC2005的驱动,在lib文件夹下,右键点击BuildPath--->addtobuildbuildpath即可)运行connectionSqlServer2005包下的JavaConnectionSQL类即可!1.驱动问题:JDBC2005与JDBC2008一定要对号入座,否则会报错!(本人用的是2008)2.服务启动问题:其实很多情况下连接不上,是因为你的服务没有启动!运行----->输入services.msc-----找到SQLServer的服务,启动就行...
数据库操作教程 2022-09-23 16:50:43 -
sqlserver获取系统时间的方法
SqlServer中一个非常强大的日期格式化函数:获得当前系统时间,GETDATE():2008年01月08日星期二14:59SelectCONVERT(varchar(100),GETDATE(),0):0516200810:57AMSelectCONVERT(varchar(100),GETDATE(),1):05/16/08SelectCONVERT(varchar(100),GETDATE(),2):08.05...
数据库操作教程 2022-09-23 16:50:30 -
sqlserverCONVERT()函数用法小结
CONVERT的使用方法:格式:CONVERT(data_type,expression[,style])说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到.例子:SELECTCONVERT(varchar(30),getdate(),101)now结果为now---------------------------------------09/15/2001style数字在转换时间时的含义如下-------------------------------------------------------------------------------------------------Style(2位表示年份)|Style(4位表示年份)|输入输出格式--------------------------------------------------------------------------------------------------|0or100|monddyyy...
数据库操作教程 2022-09-23 16:50:30 -
sqlserver中触发器+游标操作实现
复制代码代码如下:Createtriggertri_wk_CSVHead_Historyonwk_CSVHead_History--声明一个tri_wk_CSVHead_History触发器,insteadofinsert---插入操作被代替执行下面的操作asbegindeclareYBcursor--声明一个游标for selectNoteNOfrominserted--这里的NoteNO要和下面的匹配 openYB declare@NoteNOvarchar(50)--这里的NoteNO要和上面的匹配,定义一个游标变量@NoteNO,用来操作insered表中的NoteNo. fetchnextfromYBinto@NoteNO--这里的NoteNO要是上面的匹配,移动游标 while(@@fetch_status=0)--0操作成功,-1FETCH语句失败或此行不在结果集中,-2被提取的行不存在 begin deletefromwk_CSVDetail_HistorywhereNoteNO=@NoteNO deletefromwk_CSVHead_Historywhe...
数据库操作教程 2022-09-23 16:50:27 -
SqlServer数据库全角转换成半角
复制代码代码如下:CREATE FUNCTION f_Convert(@str NVARCHAR(4000), --要转换的字符串@flag bit --转换标志,0转换成半角,1转换成全角)RETURNS nvarchar(4000)ASBEGINDECLARE @pat nvarchar(8),@step int,@i int,@spc intIF @flag=0SELECT &nbs...
数据库操作教程 2022-09-23 16:50:27 -
SQLServer正则表达式替换函数应用详解
--SQL正则替换函数复制代码代码如下:CREATEfunctiondbo.regexReplace(@sourcentext,--原字符串@regexpvarchar(1000),--正则表达式@replacevarchar(1000),--替换值@globalReplacebit=1,--是否是全局替换@ignoreCasebit=0--是否忽略大小写)returnSvarchar(1000)ASbegindeclare@hrintegerdeclare@objRegExpintegerdeclare@resultvarchar(5000)exec@hr=sp_OACreate'VBScript...
数据库操作教程 2022-09-23 16:50:27