-
sqlserverexists,notexists的用法
学生表:createtablestudent( idnumber(8)primarykey, namevarchar2(10),deptmentnumber(8))选课表:createtableselect_course( ID NUMBER(8)primarykey, STUDENT_IDNUMBER(8)foreignkey(COURSE_ID)referencescourse(ID), COURSE_ID NUMBER(8)foreignkey(STUDENT_ID)referencesstudent(ID))课程表:createtableCOURSE( ID NUMBER(8)notnull, C_NAMEVARCHAR2(20), C_NO VARCHAR2(10))student表的数据: &...
数据库操作教程 2022-09-23 16:52:55 -
Cont()与Where().Count()有时性能差别如此之大!
想起我之前在此列表中加入了一个字段,用于方便提示管理员公司的产品列表是否有修改之类的状态字段,于是可以断定是加了此字段的原因。首先,先看看我之前是如何写这个提示状态字段的,实体中加入ContentStatus,然后直接在Linq语句中Select实体对象中加入ContentStatus=Product_Maintain.Count(C=>C.CompanyID==company.ID&&C.IsDeleted==0&&(C.AuditStatus==0||C.AuditStatus==4))>0?"产品有更新":""...
数据库操作教程 2022-09-23 16:52:48 -
SQLServer服务器优化技巧浅谈
1.数据和日志文件分开存放在不同磁盘上 数据文件和日志文件的操作会产生大量的I/O。在可能的条件下,日志文件应该存放在一个与数据和索引所在的数据文件不同的硬盘上以分散I/O,同时还有利于数据库的灾难恢复...
数据库操作教程 2022-09-23 16:52:42 -
sqlserver自动备份所有数据库的SQL
复制代码代码如下:usemasterdeclare@DbNamevarchar(60)declare@BackSqlvarchar(1000)declaremyCursorcursorforSELECT[name]FROMSYSDATABASESwhere[name]notin('master','model','msdb','tempdb')orderby[name]openmyCursorfetchnextfrommyCursorinto@DbNamewhile(@@FETCH_STATUS=0)beginifdatename(weekday,getdate())='星期三'--每周三覆盖上周三的beginselect@BackSql='BackupDATABASE['+@DbName+']todisk=''E:DbBackUp'+@DbName+'星期三.bak''withformat'endelse--每天覆盖上一天的beginselect@BackSql='BackupDATABASE['+@DbName+']todisk=''E:DbBackUp'+@DbName+'Aut...
数据库操作教程 2022-09-23 16:52:39 -
mssqlinsertinto和insertintoselect性能比较
使用insertintotable(field,...)values(value,...),insertintotable(field,...)values(value,...)...的情况 使用insertintotable(field,...)select(value,...)unionallselect(value,...)unionallselect(value,...)...的情况我一次插入的数据是:1190条。用insertinto所用的时间在510毫秒上下徘徊,而用insertintoselect所用的时间在16毫秒上下徘徊...
数据库操作教程 2022-09-23 16:52:19 -
教你几种在SQLServer中删除重复数据方法
方法一复制代码代码如下:declare@maxinteger,@idintegerdeclarecur_rowscursorlocalforselect主字段,count(*)from表名groupby主字段havingcount(*)>1opencur_rowsfetchcur_rowsinto@id,@maxwhile@@fetch_status=0beginselect@max=@max-1setrowcount@maxdeletefrom表名where主字段=@idfetchcur_rowsinto@id,@maxendclosecur_rowssetrowcount0方法二有两个意义上的重复记录,一是完全重复的记录,也即所有字段均重复的记录,二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略。1、对于第一种重复,比较容易解决,使用复制代码代码如下:selectdistinct*fromtableName就可以得到无重复记录的结果集...
数据库操作教程 2022-09-23 16:52:07 -
SQL高级应用之使用SQL查询Excel表格数据的方法
复制代码代码如下:execsp_configure'showadvancedoptions',1reconfigureexecsp_configure'AdHocDistributedQueries',1reconfigure复制代码代码如下:SELECT*FROMOPENDATASOURCE('Microsoft.Jet.OLEDB.4.0','DataSource=E:HaierWebMyWebDocabc.xls;ExtendedProperties=Excel8.0')...Sheet1$第一行当做表头。其余行当成一种数据类型,且不能转换,如果有文本,有数字,按出现多的一项显示,其余为Null员工信息 F2NULL 姓名664754张三664783李四Null处应该是员工编号...
数据库操作教程 2022-09-23 16:51:58 -
SQLServer附加数据库后出现只读或失败的解决方法
解决此问题的几个关键点如下:1、该现象只会出现在NTFS文件系统中。2、由NTFS文件系统的访问权限导致...
数据库操作教程 2022-09-23 16:51:55 -
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