- 博客(59)
- 收藏
- 关注
原创 /*-----------实现对科目分组下显示最大的成绩算法---------------*/
/**//*-----------实现对科目分组下显示最大的成绩算法---------------*/create table liangfei2(学号 varchar(10),姓名 varchar(10),科目 varchar(10), 成绩 int)----建表insert liangfei2select 1,张三,语文,80 union allselect 2,李四
2006-10-11 17:58:00
1039
转载 转贴马克的关于删除存在外键引用的主表之存储过程!!!
最近在做假资料时经常需要删除一些表中的内容。但是:设置外键后,想删除表中的数据无法删除,这时需删除外键后重建,或找到外键后用 alter table 表名 nocheck 外键名 来暂时屏蔽外键,然后删除。---alter table fktable nocheck干脆写个存储过程,设置外键的开关。exec fk_switch 表名,0 屏蔽外键 ----status 状态位(bit
2006-10-10 19:40:00
1276
原创 转学用存储过程传入参数显示多行重复记录的实现过程!
create table bb(aid int,aname char(1),acom char(1))-------- 建测试表goinsert bb ---------------------插入记录select 1,a,d union allselect 2,b,c union allselect 3,k,s goselect *from bbgocreate pr
2006-10-10 15:55:00
914
原创 转群友一个关于显示了分组方式下问题!!!!
/**//*--------------------- 建立测试表-----------------------------------------------------------------------------------*/CREATE TABLE [tx] ( [name] [char] (2) COLLATE Chinese_PRC_CI_AS N
2006-10-10 13:24:00
951
原创 看优快云测试后,关于领导职工显示的问题!!!
create table staff(staff_id int,staff_name varchar(6))---建测试表,职工表goinsert staffselect 1,小王 union allselect 2,小刘 union allselect 3,赵科长union allselect 4,吴经理 union allselect 5, 董主任 goselect *
2006-10-09 22:28:00
932
原创 转优快云关于显示目录父子表算法!!!
一个部门的数据表,里面是目录树结构.如: deptID deptName parentID里面的数据 是 1 所有部门 0 2 财务部 1 3 市场部 1 4 仓库管理 1 5
2006-10-09 22:12:00
987
原创 查指定表中每列的排序规则信息!!!
select a.name,b.collationfrom syscolumns a join syscolumns b ------a, 得出表中的列名,b,得出 collation on a.id =b.idwhere a.id=object_id(staff) and b.id=object_id(staff) and b.collation is not n
2006-10-09 07:23:00
979
原创 试一下优快云 BLOG的功能,哈哈!!!
1,通过AD可以访问复制发布和订阅2,AD的发布及特性与SQLSERVER的发布属性存在差异??3,你把要SQLSERVER实例添加到AD,要有帐户系统管理员。4,用T-SQL添加到AD,sp_activeDIrectory_SCP @ACTION=CREATE|DELETE ----把实例添加或删除到AD中5,将发布添加到AD中,在发布属性常规选项KAN中设置。6,使
2006-10-09 03:34:00
839
转载 转邹大哥显示同行中最小和最大的值!!!
create table t(col1 int,col2 int,col3 int) ---- 创建一个测试表goinsert t ---插入记录select 1,2,3 union allselect 0,2,9 union allselect 8,4,7 union allselect 7,1,15 goselect * ---查询表记录from tgo--------------查询显
2006-10-09 02:05:00
780
原创 相关子查询!!!!!!!!!!
zxy(66915870) 10:40:39(表名为: t)有个表,属性为:编号 客户 订货产品 1 无锡 钢材 2 无锡 汽配件 3 无锡 电线
2006-10-08 19:28:00
886
原创 关于T-SQL 存储过程的学习!!!(加深理解)
create proc p_getstr( @s varchar(8000),---- 测试串 @new varchar(8000) output--- 输出串)as declare @pos int ---定义位置参数set @pos=patindex(%[a-z]%,@s) ------FU值,目的用来下面的WHILE判断set @new= -----FU值wh
2006-10-07 15:47:00
810
原创 复制又学习,温故!!!
对于还原用于分布式复制的数据库时,分几种情况1,如果此数据库复制类型为事务和合并,采用备份还原后,保持原有的复制配置2, 如果要从中恢复的故障要求完全重新创建将要还原到的数据库,则需要运行 sp_replicationdboption,或者在还原备份前启用数据库用于事务和合并发布。注意 如果未运行 sp_replicationdboption,复制设置将在还原操作中丢失。(sp_rel
2006-10-03 05:40:00
906
原创 利用binary_checksum(*)来查看基础表的更新!!!及 bulk insert 补充!!!
BULK INSERT pubs..authors2 FROM c:authors.txtWITH ( DATAFILETYPE = char, FIELDTERMINATOR = ,, CHECK_CONSTRAINTS)注:1,数据源可以是各种文件类型如:TXT,DAT,TBL等。2, firstrow -----lastrow定义复制数据的记录数据及其位置。3,D
2006-10-02 07:36:00
1907
转载 对所有表进行类似处理
eg1:大家知道,如果将一个表所有者改为dbo,只需sp_changeobjectowner 表名,dbo即可但要将所有的表的所有者都改为dbo,可以用循环处理,此处略其实用SQL的系统存储过程sp_MSForEachTable可以轻松搞定只需exec sp_MSForEachTable sp_changeobjectowner ?, dbo当然,可能运行时会
2006-10-01 04:11:00
787
原创 分析邹健大哥的算法,终于问题解决了!!!(关于统计两日期间工作日)
--计算两个日期之间相差的工作天数(本算法以2006-9-1至2006-9-30为例说明) CREATE FUNCTION f_WorkDateDiff( @dt_begin datetime, ----统计开始日期 @dt_end datetime)----统计结束日期 RETURNS int ----返回相差天数 AS BEGIN /**//*------@workday,工作日;@bz,
2006-10-01 01:12:00
997
原创 根据属性多少删除指定条件的重复记录!!!
where col1 in (select col1 from tb as t where t.col1=col1 group by col1 having count(col1)>1) --------根据单属性查重复值----上面运行结果如下:---col1 col21 a1 a1 a1 a2 c2 d--------
2006-09-30 03:17:00
917
原创 同名记录汇总!!!
如下表A AA1A AA2B BB1B BB2相应记录合并,并把字段二的合在一块,得出的结果为A AA1,AA2B BB1,BB2--测试数据create table csdn(id int,txt varchar(10))insert csdnselect 1,a union allselect 1,b union allselect 1,c union
2006-09-29 13:51:00
818
原创 动态语句学习·!!!~!
-----用exec----- select * from tablename exec(select * from tablename) --------用sp_executesql---- exec sp_executesql Nselect * from tablename ---一定要加上N --------------------------------------------
2006-09-29 12:38:00
858
原创 看了群友的帖子,加深对相关子查询的理解!!!
create table test (CPBH char(7),LSH int default 0)insert test(CPBH) select 6666122insert test(CPBH) select 6666122insert test(CPBH) select 6666122insert test(CPBH) select 6666133insert test(C
2006-09-29 10:47:00
862
原创 currently look same sex some question!!!
create table wage(wage money,name1 char(4),sex char(2))insert wage values(100.1,zxy1,男)select *from wageinsert wage values(100.2,zxz,男)goinsert wage values(100.2,zxl,女)goinsert wage values
2006-09-29 08:44:00
1974
原创 转贴一个SQLSERVER圈子的作品!!!
-----返回对象名,表名,FUNCTION或其它同级附属定义语句,比如列出表与其下属对象的的SQL STATEMENTSELECT o.name, t.TABLE_NAME, c.text FROM syscomments c JOIN sysobjects o ON c.id = o.id JOIN INFORMATION_SCHEMA.Tables t ON c.
2006-09-29 06:53:00
977
原创 转学一个优快云群友的好问题案例!!!关于把科目属性用数字替换如下:
有一个表,数据是学生选课情况,例如: 姓名: 科目: 张三 语文 李四 数学 王五 历史 西的 数学,历史 似的 化学 地方 语文,化学 等等, 我想将科目用编号代替,结果如下: 姓名: 科目: 张三 1 李四 2 王五 3 西的 2,3 似的 4 地方 1,4 完整的解决方案为:先建好科目表,结构如下:Create table cls (clsid int,clsname varchar(
2006-09-29 06:28:00
770
原创 某些FUNCTION用法的复习!!!
1,char(int ascii value) ------返回ASCII码(INT BETWEEN 0 AND 255)2,CREATE FUNCTION FUNNAME()---可有参数也可无AS BEGIN RETURN (COMPLEX EXP) ENDGO
2006-09-29 04:39:00
794
原创 关于SET IDENTITY_INSERT !!!
/* 如果插入记录的标识值大于表的当前标识值,则SQL Server自动将新插入值作为当前标识值使用*/create table tb (id int identity(1,1),col int)goset identity_insert tb oninsert tb values(10,1)set identity_insert tb offinsert tb(co
2006-09-29 00:58:00
1072
原创 按指下长度分拆中英文混合字符串!!!!
if object_id(testfunc) is not null drop function testfuncgocreate function testfunc(@Title varchar(200), @len int) returns varchar(200)---dbo.testfunc(12345678, 5)asbegin--------------------------
2006-09-28 11:51:00
900
原创 和同学破解了一个邹老大的短信分拆算法!!!!!!!!!!1
/*==============================================*/if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[f_splitSTR]) and xtype in (NFN, NIF, NTF))drop function [dbo].[f_splitS
2006-09-28 00:40:00
2968
4
原创 又学邹老大算法,模式匹配有重感昌!!!!
/*==============================================*/if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[f_splitSTR]) and xtype in (NFN, NIF, NTF))drop function [dbo].[f_splitS
2006-09-26 20:27:00
1620
原创 学习算法,有感,邹健老大好厉害!!!!!!
/*==============================================*/if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[f_splitSTR]) and xtype in (NFN, NIF, NTF))drop function [dbo].[f_split
2006-09-25 22:21:00
897
原创 short or long (date and time)format display
declare @dt datetimeset @dt=getdate()------short date format(yyyy-m-d)select replace(convert(varchar(10),@dt,120),N-0,-)--------long date format(yyyy年mm月dd日)select stuff(stuff(convert(c
2006-09-22 19:39:00
752
原创 set language对DATENAME和DATEPART和CONVERT时间处理FUNCTION的影响
--以下示例演示了在不同的语言环境(SET LANGUAGE)下,DATENAME与CONVERT函数的不同结果。USE master--设置会话的语言环境为: EnglishSET LANGUAGE NEnglish ------------------n一定要大写,对于UNICODESELECT DATENAME(Month,GETDATE()) AS [Month], DAT
2006-09-22 19:08:00
895
原创 学习DATETIME和SMALLTIME有感
/*--说明 如果输入的日期不包含日期分隔符,那么SQL Server在对日期进行解释时 将忽略SET DATEFORMAT的设置。--*/--示例,在下面的代码中,不包含日期分隔符的字符日期,在不同的SET DATEFORMAT设置下,其解释的结果是一样的。DECLARE @dt datetime--设置SET DATEFORMAT为:月日年SET DATEFORMAT MDYSET
2006-09-22 18:43:00
821
原创 学习TEMPDB
--A. 将tempdb数据库的主数据文件大小设置为10MB。ALTER DATABASE tempdbMODIFY FILE( name=tempdev, size=100 MB)GO--B. 将tempdb数据库的主数据文件移动到指定的磁盘分区上,并且为其添加一个数据文件。--移动主数据文件ALTER DATABASE tempdb MODIFY FILE ( NAME=tempde
2006-09-22 18:30:00
680
原创 进一步学习文件组对于数据库的作用???
/*--功能说明 下面的代码是在SQL Server 2000上创建名为 MyDB 的数据库 该数据库包括1个主要数据文件、3个用户定义的文件组和1个日志文件 ALTER DATABASE语句将用户定义文件组指定为默认文件组。 之后,通过指默认的文件组来创建表,并且将图像数据和索引放到指定的文件组中。 最后,将文件组中的指定数据文件删除--*/--切换到 master 数据库USE ma
2006-09-22 18:14:00
1965
原创 学习CURSOR之我见!!!
B. 使用嵌套游标生成报表输出下例显示如何嵌套游标以生成复杂的报表。为每个作者声明内部游标。SET NOCOUNT ONDECLARE @au_id varchar(11), @au_fname varchar(20), @au_lname varchar(40), @message varchar(80), @title varchar(80)PRINT "
2006-09-22 01:45:00
927
原创 进一步理解触发器原理!!!!
二个表ORDERS和ORDER DETAIL算法如下:在我更新ORDER DETAIL时,一起更新ORDERS,用触发器实现如下:------------插入操作时 CREATE TRIGGER intOrderdetail ON [ORDER DETAILS] FOR INSERT ASupdate orders set SUM_MONEY=SUM_MONEY+u
2006-09-21 22:24:00
1303
原创 非常好的SQLSERVER2000范例数据库NORTHWIND SQL学习
1. 订单创建时间最早的一笔订单订单号( ) select * from orders where orderdate=(select min(orderdate) from orders) 1. 求货品金额最大的订单订单号( ) select top 1 orderid,sum(unitprice*quantity
2006-09-21 22:12:00
1674
原创 学习关于聚合FUNCTION(count(*|fieldname))
-----------------结果集为刚好分组后每组中记录数为3个select * from b t where (select count(*) from b where a = t.a and b > t.b) and exists(select count(*) from b where a=t.a group by a having count(*)>=3)go--------
2006-09-21 15:47:00
756
原创 如何取相同字duan值第一条记录??
表:aid name11 aaaa11 bbbb11 cccc22 dddd22 eeee22 ffff如何将表中的相同id号的第一条记录取出来?即:id name11 aaaa22 ddddselect id1=identity(int,1,1),* into #t from agoselect id,name from #t where id1 in(select min(id1) from
2006-09-21 14:24:00
1034
原创 引用邹老大的关于相关表删除的代码,我学好多:
-- SQL Server 2000 对错误处理不好控制, 一般还是建议做判断-- 通过系统表查询系统表,可以获取某个表关联的所有外键表 -- 示例存储过程CREATE PROC dbo.p_Delete @tbname sysname, -- 基础数据表名 @PkFieldName sysname, -- 基础数据表关键字段名
2006-09-20 14:12:00
793
原创 学习他人的东东啊,好东东。!!!
SQLServer语法(要求不使用游标)单表T字段 a(int) b(int) c(int) d(int) 1 0 0 10 2 10 5 Null 3 20 10 Null 4 30 15 Null
2006-09-19 01:02:00
658
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人