随笔分类 -  SQL

1 2 下一页
SQL
sql2008问题大全
摘要:第一、sql server 2008 提示”重新启动计算机失败”和评估期已过的解决方法昨天看了一下visual studio 2010,发现里面带了SQL SERVER 2008数据库,自带的数据是精简版有很多东西都没有,结果还是要自己下载下来安装.装好了数据库,又带了一个visual studio 2008.sql server 2008序列号:开发版(Developer): PTTFM-X467G-P7RH2-3Q6CG-4DMYB企业版(Enterprise): JD8Y6-HQG69-P9H84-XDTPG-34MBB当安装到安装程序支持规则的时候出现"重新启动计算机失败&q 阅读全文
posted @ 2012-07-19 15:54 成天狂 阅读(247) 评论(0) 推荐(0)
安装sqlServer2000问题大全
摘要:问题一、以前的某个程序安装已经在计算机上创建挂起的文件操作,必须重启计算机1)添加/删除程序中彻底删除sql server 2)将没有删除的sql serv er目录也删除掉。 3)运行-regedit打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ Session Manager中找到PendingFileRenameOperations项目 ,并删除它。这样就可以清除安装暂挂项目。 4)如果上面的操作还是没有解决,运行-regedit--编辑--查找输入sql server 找到一个删一个,删完后,按F3,直到全部 阅读全文
posted @ 2012-07-19 15:53 成天狂 阅读(500) 评论(0) 推荐(0)
游标
摘要:ALTER procedure P_Test(@startdate nvarchar(50),@enddate nvarchar(50),@companyid int,@depid nvarchar(50))asdeclare @id int --定义变量来保存ID号declare @code_cursor nvarchar(50) --定义变量来保存ID号begin trandeclare mycursor cursor for select A.codefrom dbo.T_OfficeCardException A left outer join T_EMPLOYEEBASEINFO D 阅读全文
posted @ 2012-07-19 15:26 成天狂 阅读(128) 评论(0) 推荐(0)
sql得到一个数据库中的触发器的信息
摘要:--得到触发器的名字select type,xtype, * from sysobjects where xtype='tr'--得到触发器的其他信息select * from sysobjects where id in(select parent_obj from sysobjects where xtype='tr') 阅读全文
posted @ 2012-07-19 15:22 成天狂 阅读(217) 评论(0) 推荐(0)
sql最新的模糊查询的方法
摘要:--最新的模糊查询的方法declare @s nvarchar(50)select @s=BillNo from dbo.T_Receipt where ID='976d57fa-ee94-4a8d-9ce8-d54c694eea14'if(@s like '45%')beginprint 'adsfas'end 阅读全文
posted @ 2012-07-19 15:22 成天狂 阅读(184) 评论(0) 推荐(0)
sql得到存储过程的参数列表
摘要:select syscolumns.*, systypes.* from syscolumns left join systypes on syscolumns.xusertype=systypes.xusertype where id in (select id from sysobjects where name='存储过程的名字' ) 阅读全文
posted @ 2012-07-19 15:21 成天狂 阅读(224) 评论(0) 推荐(0)
sql得到表自动增长的ID的最后的一个值
摘要:--得到表自动增长的ID的最后的一个值,就是出现过的最大的一个值1.select ID = IDENT_CURRENT('表名')2.select BillNo = IDENT_CURRENT('表名')1和2的答案是一样的IDENT_CURRENT 返回为“任何会话“和“任何作用域”中的“特定表”最后生成的标识值。@@IDENTITY 返回为“当前会话”的“所有作用域”中的“任何表”最后生成的标识值。SCOPE_IDENTITY 返回为“当前会话”和“当前作用域“中的“任何表”最后生成的标识值。 阅读全文
posted @ 2012-07-19 15:20 成天狂 阅读(240) 评论(0) 推荐(0)
sql触发器
摘要://sql update 触发器 获得被update的行的信息create trigger TgName on tb for update as if update(recommend) begin update tb set commenddate=(getdate()) from tb inner join inserted on tb.vlistid=Inserted.vlistid end 关键在于Inserted表 触发器语句中使用了两种特殊的表:deleted 表和 inserted 表。 Deleted 表用于存储 DELETE 和 UPDATE 语句所影响的行的复本。在执行 . 阅读全文
posted @ 2012-07-19 15:19 成天狂 阅读(155) 评论(0) 推荐(0)
sql查询从m到n的这几条记录
摘要:查询从m到n的这几条记录m-ngoselect top (n-m+1) * from stu where id not in (select top (m-1) ID from stu )--51-100select top 50 * from stu where id not in (select top 50 ID from stu ) 阅读全文
posted @ 2012-07-19 15:19 成天狂 阅读(131) 评论(0) 推荐(0)
sql查询重复的数据
摘要:--查询重复的数据select * from stu where Code in(select Code from stu group by Code,Namehaving Count(ID) > 1)and Name in (select Name from stu group by Code,Namehaving Count(ID) > 1)--用重复的字段分组,不重复的字段Count--第二种 只能查询出Code这一个字段重复的数据select * from stu where Code=( select Code from stu group by Code having 阅读全文
posted @ 2012-07-19 15:18 成天狂 阅读(570) 评论(0) 推荐(0)
使用SQL语句添加和删除约束
摘要:--主键约束(Primary Key constraint):要求主键列的数据唯一,并且不允许为空。--唯一约束(Unique Constraint):要求该列唯一,允许为空,但只能出现一个空值。--检查约束(Check Constraint):某列取值范围限制、格式限制等,如有关年龄的约束。--默认约束(Default Constraint):某列的默认值,如我们的男性同学较多,性别默认为男。--外键约束(Foreign Key):用于在两表之间建立关系需要制定引用主表的哪一列。语法如下alter table 表名add constraint 约束名 约束类型 具体的约束说明示例:--添加主 阅读全文
posted @ 2012-07-19 15:17 成天狂 阅读(245) 评论(0) 推荐(0)
SQL中判断对象是否存在
摘要:判断数据库是否存在 if exists (select * from sys.databases where name = '数据库名') drop database [数据库名] 判断表是否存在 if exists (select * from sysobjects where id = object_id(N'[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [表名] 判断存储过程是否存在 if exists (select * from sysobjects wher 阅读全文
posted @ 2012-07-19 15:15 成天狂 阅读(337) 评论(0) 推荐(0)
sql行列倒置
摘要:PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P完整语法:table_sourcePIVOT(聚合函数(value_column)FOR pivot_columnIN(<column_list>))UNPIVOT用于将列明转为列值(即列转行),在SQL Server 2000可以用UNION来实现完整语法:table_sourceUNPIVOT(value_columnFOR pivot_columnIN(<column_lis 阅读全文
posted @ 2012-07-19 15:14 成天狂 阅读(686) 评论(0) 推荐(0)
sql去除重复列(行)
摘要:有重复数据主要有一下几种情况: 1.存在两条完全相同的纪录 这是最简单的一种情况,用关键字distinct就可以去掉 example: select distinct * from table(表名) where (条件) 2.存在部分字段相同的纪录(有主键id即唯一键) 如果是这种情况的话用distinct是过滤不了的,这就要用到主键id的唯一性特点及group by分组 example: select * from table where id in (select max(id) from table group by [去除重复的字段名列表,....]) 3.没有唯一键ID 这种情况我 阅读全文
posted @ 2012-07-19 15:13 成天狂 阅读(264) 评论(0) 推荐(0)
sql进行数据累加
摘要:比如有这样一个需求,一张表格(User_Salary)包含每个人(UserName)每个月份(Month)发的薪水(Salary)求这样一个结果集:每个人每月所发薪水及累计所得薪水和,如下表UserNameMonthSalaryAAA2010/121000AAA2011/012000AAA2011/023000BBB2010/122000BBB2011/012500BBB2011/022500结果UserNameMonthSalaryCumulationAAA2010/1210001000AAA2011/0120003000AAA2011/0230006000BBB2010/122000200 阅读全文
posted @ 2012-07-19 15:11 成天狂 阅读(4742) 评论(0) 推荐(0)
sql时间类型的操作
摘要:最常用的://取到天数 例如:2012-02-02select substring(convert(nvarchar,getdate(),21),1,10)//取到秒数 例如:2012-02-02 13:52:41select substring(convert(nvarchar,getdate(),21),1,19)Sql Server 中一个非常强大的日期格式化函数Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVERT(varchar(100), GETDATE(), 1): 05/16/06 阅读全文
posted @ 2012-07-19 15:08 成天狂 阅读(203) 评论(0) 推荐(0)
SQL获取某年某个月份的最后一天
摘要:/* 用SQL获取某年某个月份的最后一天的日期 思路:首先把某日期的月份加一,再把结果的日期减一*/--@Date为字符串的日期:例如 dbo.GetLastDay('2011-2-5') 得到结果为 2月份的最后一天create function GetLastDay(@Date nvarchar(50))returns datetimeasbeginDECLARE @DateChar AS nVarChar(19) declare @LastDay datetime--返回你需要的 SET @DateChar = CONVERT(Char(8), CAST(@Date AS 阅读全文
posted @ 2012-07-19 15:06 成天狂 阅读(2184) 评论(0) 推荐(0)
sql分隔字符串
摘要:create function split(@Long_str varchar(8000),@split_str varchar(100)) returns @tmp TABLE( ID int IDENTITY PRIMARY KEY, short_str varchar(8000) ) AS BEGIN DECLARE @long_str_Tmp varchar(8000), @short_str varchar(8000), @split_str_length int SET @split_str_length = LEN(@split_str) IF CHARINDEX(@s... 阅读全文
posted @ 2012-07-19 15:05 成天狂 阅读(162) 评论(0) 推荐(0)
sql的IndexOf和LastIndexOf
摘要:sql sever中 没有indexof函数 你说的indexof函数是什么功能?如果是字符串操作,可以看看charindex函数的帮助Select CharIndex('a', '1235ab') --5DECLARE @Name NVARCHAR (50)SET @Name = '12345.67890ABCDE.FGHIJKLMNOPQRSTUVWXYZTest'DECLARE @Position INT//sql的IndexOF的用法SET @Position = CHARINDEX('.', @Name);SELECT 阅读全文
posted @ 2012-07-19 15:03 成天狂 阅读(413) 评论(0) 推荐(0)
sql不能使用OpenRowset
摘要:问题:SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用'Ad Hoc Distributed Queries' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。解决方案:select 阅读全文
posted @ 2012-07-19 15:02 成天狂 阅读(224) 评论(0) 推荐(0)

1 2 下一页