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 · 9270 阅读 · 0 评论 -
Id唯一,Date选最近一次的信息
(Id唯一,Date选最近的一次) 执行下面两种方法的结果:SELECT Id, Name, Class, COUNT, DateFROM 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 · 499 阅读 · 0 评论 -
将特殊字符创分开后存入表中
IF OBJECT_ID('udf_split', 'tf') IS NOT NULL Drop function udf_splitGOcreate function udf_split( @str varchar(2000), @spl varchar(2)=',')returns @table table( id int id原创 2012-11-14 14:55:03 · 449 阅读 · 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 · 931 阅读 · 0 评论 -
分段计算像计算个人所得税那样算法的函数
alter function udf_GetSumWithCoefficient(@input int) returns intas BEGIN DECLARE @DCName numeric(8,2) DECLARE @DCCoefficient numeric(8,2) DECLARE @DCStep numeric(8,2) DE原创 2012-08-16 14:25:00 · 813 阅读 · 0 评论 -
同一个服务器上建两个数据库名字不同库相同的数据库
1、先创建一个新的数据库命名为aasd,备份的数据库aa.bak ,需要还原两次的原始库为mySelf2、目标数据库是新建的数据库aasd,如图:3、点击还原数据库下的选项,把覆盖整个库勾上,把同一个库需要附加两次的原始库更改一下他的路径,即时带三个点按钮前面的路径4、这样就可以同一个库还原两次了原创 2012-08-01 17:54:48 · 3793 阅读 · 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 · 713 阅读 · 0 评论 -
使用over函数将表中的某列设为自增列
SELECT Id,carId, ROW_NUMBER() OVER(ORDER BY id ASC) rkFROM dbo.ApplyCar原创 2012-08-01 09:19:37 · 276 阅读 · 0 评论 -
试图扩大物理文件时,MODIFY FILE 遇到操作系统错误 112(磁盘空间不足)
试图扩大物理文件时,MODIFY FILE 遇到操作系统错误 112(磁盘空间不足) 我在还原一个10G的数据库时候出现了一个错误:“试图扩大物理文件时,modify file遇到操作系统错误112(磁盘空间不足)”解决办法如下:先看看你的磁盘格式是不是FAT32的,查看方法是鼠标右击属性就可以看到了,如果是FAT32的,在运行中输入命令:convert C:/fs:ntfs 就行原创 2012-08-13 13:59:52 · 3551 阅读 · 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 ruWH原创 2012-07-27 13:47:32 · 339 阅读 · 0 评论 -
动态的添加条件实现查询
--动态的添加条件--UP3_ChildUser_ByTDetIdUserName '888888','','',156ALTER PROC [dbo].[UP3_ChildUser_ByTDetIdUserName]@comID varchar(50),@TDetId INT,@Name VARCHAR(50),@userId INTASDECLARE @wher原创 2012-07-26 14:43:50 · 761 阅读 · 0 评论 -
使用表函数查找某节点的所有子节点
--查找某节点的所有子节点(包含自己)alter function rerr(@depint)returns @table table (TDtID int)asbegin insert into @table select tdtid from TDept where tdtpid=@dep;begin while @@rowcount原创 2012-07-26 14:38:02 · 633 阅读 · 0 评论 -
使用循环查找父级内容
alter PROCEDURE [dbo].[UP3_TDept_TDtID_BydeptID] @deptID intASBEGIN DECLARE @id INT SET @id=@deptID create table #temp( [TDtID] [int] , [TDtPID] [int]原创 2012-07-26 14:27:11 · 671 阅读 · 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 · 646 阅读 · 0 评论 -
使用游标实现用‘--’连接两列数据
5、实现父级部门和子级部门相连-- select dbo.[Select_TDtID_SelectTpName](123) ALTER function [dbo].[Select_TDtID_SelectTpName](@TDtIDvarchar(60))returns varchar(100)asbegindeclare @id int;decl原创 2012-07-26 14:34:25 · 520 阅读 · 1 评论 -
使用游标查询子部门下的数据
使用游标查询数据 --这个是根据部门ID,和公司,找到这个部门下的子部门,然后根据子部门ID查找该部门有多少人多少辆车-- UP3_Tdept_SelectByTDtPID 2alter proc UP3_Tdept_SelectByTDtPID@TDtID intasbegin create table #aa ( TDtID in原创 2012-07-26 14:47:14 · 709 阅读 · 0 评论 -
--创建表函数查找某节点的所有子节点(包含自己)
--查找某节点的所有子节点(包含自己)alter function rerr(@depint)returns @table table (TDtID int)asbegin insert into @table select tdtid from TDept where tdtpid=@dep;begin while @@rowcount原创 2012-07-26 14:30:03 · 832 阅读 · 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 · 721 阅读 · 0 评论 -
判断两个日期是否在一个周内(星期一做为一周的第1天)
--(星期一做为一周的第1天)DECLARE @date intSelect @date=DateDiff(ww, DATEADD(day,-1,'2012-11-20'),dateadd(day,-1,GETDATE()))如果@date等于零的话就表示是在一个周内(这个日期是在从周一开始的)如果不等于零的话就表示不再一个周内 --(星期日做为一周的第1天)--201原创 2012-11-20 15:56:28 · 1751 阅读 · 0 评论
分享