![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
sqlserver数据库
meilanhaohe
这个作者很懒,什么都没留下…
展开
-
恢复误删sqlserver数据库表中的数据
想要恢复误删的数据需要满足以下条件: 1. 至少有一个误删除之前的数据库完全备份。 2. 数据库的恢复模式(Recovery mode)是“完全(Full)”。 同时满足两个条件只需要两条sql语句就行了 a) 、备份数据库事务:restore database ZYXF from disk='e:\zyxf.BAK' with norecovery --ZYXF 是数据库的名称 --原创 2012-08-09 16:36:12 · 8991 阅读 · 0 评论 -
Id唯一,Date选最近一次的信息
(Id唯一,Date选最近的一次) 执行下面两种方法的结果: SELECT Id, Name, Class, COUNT, Date FROM test t WHERE (Date = (SELECT MAX(Date) FROM test WHERE Id = t .Id)) SELECT * FROM dbo.test a WHERE NOT EXIST原创 2012-11-15 15:20:50 · 440 阅读 · 0 评论 -
将特殊字符创分开后存入表中
IF OBJECT_ID('udf_split', 'tf') IS NOT NULL Drop function udf_split GO create function udf_split ( @str varchar(2000), @spl varchar(2)=',' ) returns @table table ( id int id原创 2012-11-14 14:55:03 · 400 阅读 · 0 评论 -
动态的行转列
declare @sqlOne varchar(800), @sqlTwo varchar(800) select @sqlOne = isnull(@sqlOne + '],[' , '') + TgcName from dbo.TTask group by TgcName select @sqlOne = '[' + @sqlOne + ']' select @sqlTwo=''原创 2012-10-16 17:05:16 · 756 阅读 · 0 评论 -
分段计算像计算个人所得税那样算法的函数
alter function udf_GetSumWithCoefficient(@input int) returns int as BEGIN DECLARE @DCName numeric(8,2) DECLARE @DCCoefficient numeric(8,2) DECLARE @DCStep numeric(8,2) DE原创 2012-08-16 14:25:00 · 753 阅读 · 0 评论 -
同一个服务器上建两个数据库名字不同库相同的数据库
1、先创建一个新的数据库命名为aasd,备份的数据库aa.bak ,需要还原两次的原始库为mySelf 2、目标数据库是新建的数据库aasd,如图: 3、点击还原数据库下的选项,把覆盖整个库勾上,把同一个库需要附加两次的原始库更改一下他的路径,即时带三个点按钮前面的路径 4、这样就可以同一个库还原两次了原创 2012-08-01 17:54:48 · 3714 阅读 · 0 评论 -
输入字符串,分割字符,分别显示结果
--传递字符串 分割字符串 分别显示 -- select * from dbo.[f_Sstringsplit]('123,16,14,17',',') create function [dbo].[f_Sstringsplit] ( @Sql varchar(8000),--输入的一个字符串 例如:'123,16,14' @strSeprate varchar(100) --输入的原创 2012-08-01 10:17:52 · 629 阅读 · 0 评论 -
使用over函数将表中的某列设为自增列
SELECT Id,carId, ROW_NUMBER() OVER(ORDER BY id ASC) rk FROM dbo.ApplyCar原创 2012-08-01 09:19:37 · 215 阅读 · 0 评论 -
试图扩大物理文件时,MODIFY FILE 遇到操作系统错误 112(磁盘空间不足)
试图扩大物理文件时,MODIFY FILE 遇到操作系统错误 112(磁盘空间不足) 我在还原一个10G的数据库时候出现了一个错误:“试图扩大物理文件时,modify file遇到操作系统错误112(磁盘空间不足)” 解决办法如下:先看看你的磁盘格式是不是FAT32的,查看方法是鼠标右击属性就可以看到了, 如果是FAT32的,在运行中输入命令:convert C:/fs:ntfs 就行原创 2012-08-13 13:59:52 · 3378 阅读 · 0 评论 -
sqlserver中的列转行
SELECT max(case mb.TMbName when '批注' then 1 else 0 end ), max(case mb.TMbName when '审核' then 2 else 0 end) FROM dbo.TRoleButton rb, dbo.TMenu m, dbo.TMenuButton mb, dbo.TRoleUser ru WH原创 2012-07-27 13:47:32 · 280 阅读 · 0 评论 -
动态的添加条件实现查询
--动态的添加条件 --UP3_ChildUser_ByTDetIdUserName '888888','','',156 ALTER PROC [dbo].[UP3_ChildUser_ByTDetIdUserName] @comID varchar(50), @TDetId INT, @Name VARCHAR(50), @userId INT AS DECLARE @wher原创 2012-07-26 14:43:50 · 675 阅读 · 0 评论 -
使用表函数查找某节点的所有子节点
--查找某节点的所有子节点(包含自己) alter function rerr(@dep int) returns @table table (TDtID int ) as begin insert into @table select tdtid from TDept where tdtpid=@dep; begin while @@rowcount原创 2012-07-26 14:38:02 · 587 阅读 · 0 评论 -
使用循环查找父级内容
alter PROCEDURE [dbo].[UP3_TDept_TDtID_BydeptID] @deptID int AS BEGIN DECLARE @id INT SET @id=@deptID create table #temp ( [TDtID] [int] , [TDtPID] [int]原创 2012-07-26 14:27:11 · 613 阅读 · 0 评论 -
使用with as查询某节点的所有父节点(包含自己)
查询某节点的所有父节点(包含自己) with RTU1 as( select TDtID ,TDtPID,[TDtName] from TDept ), RTU2 as( select * from RTU1 where TDtID=1 union all原创 2012-07-26 14:40:09 · 578 阅读 · 0 评论 -
使用游标实现用‘--’连接两列数据
5、实现父级部门和子级部门相连 -- select dbo.[Select_TDtID_SelectTpName](123) ALTER function [dbo].[Select_TDtID_SelectTpName](@TDtID varchar(60)) returns varchar(100) as begin declare @id int; decl原创 2012-07-26 14:34:25 · 450 阅读 · 1 评论 -
使用游标查询子部门下的数据
使用游标查询数据 --这个是根据部门ID,和公司,找到这个部门下的子部门,然后根据子部门ID查找该部门有多少人多少辆车 -- UP3_Tdept_SelectByTDtPID 2 alter proc UP3_Tdept_SelectByTDtPID @TDtID int as begin create table #aa ( TDtID in原创 2012-07-26 14:47:14 · 659 阅读 · 0 评论 -
--创建表函数查找某节点的所有子节点(包含自己)
--查找某节点的所有子节点(包含自己) alter function rerr(@dep int) returns @table table (TDtID int ) as begin insert into @table select tdtid from TDept where tdtpid=@dep; begin while @@rowcount原创 2012-07-26 14:30:03 · 776 阅读 · 0 评论 -
使用标量函数创建无限的查找子部门
使用标量函数创建无限的查找子部门(不包含自身) alter Function F_GetChildren(@Pid int) Returns @Tree Table (TDtID Int) As Begin Insert @Tree Select TDtID From T原创 2012-07-26 14:36:35 · 677 阅读 · 0 评论 -
判断两个日期是否在一个周内(星期一做为一周的第1天)
--(星期一做为一周的第1天) DECLARE @date int Select @date=DateDiff(ww, DATEADD(day,-1,'2012-11-20'),dateadd(day,-1,GETDATE())) 如果@date等于零的话就表示是在一个周内(这个日期是在从周一开始的) 如果不等于零的话就表示不再一个周内 --(星期日做为一周的第1天) --201原创 2012-11-20 15:56:28 · 1577 阅读 · 0 评论