小女巫 发表于 2015-1-16 22:28:54

MSSQL网页设计将表中的某个字段转换成标识字段,并保存...

既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。转换
/*--将表中的某个字段转换成标识字段,并保存本来的值

注重,由于要删除原表,以是,假如表和其他表的联系关系,这些联系关系要从头创立

--邹建2003.12--*/

/*--挪用示例

execp_setid表名,要转换的字段名
--*/

ifexists(select*fromdbo.sysobjectswhereid=object_id(N.)andOBJECTPROPERTY(id,NIsProcedure)=1)
dropprocedure.
GO

CREATEPROCP_SETID
@tbnamesysname,--要处置的表名
@fdnamesysname--要转换为标识字段的字段名
as
declare@s1varchar(8000),@s2varchar(8000),@tmptbsysname
select@s1=,@s2=,@tmptb=
select@s1=@s1+,[+name+]
+casenamewhen@fdnamethen=identity(bigint,1,1)elseend
,@s2=@s2+,[+name+]
fromsyscolumnswhereobject_id(@tbname)=id
select@s1=substring(@s1,2,8000),@s2=substring(@s2,2,8000)
exec(selecttop0+@s1+into+@tmptb+from[+@tbname+]
setidentity_insert+@tmptb+on
insertinto+@tmptb+(+@s2+)select+@s2+from[+@tbname+]
setidentity_insert+@tmptb+off
)
exec(droptable[+@tbname+])
execsp_rename@tmptb,@tbname
go



/*==========================================================*/

--利用测试

--创立测试的表
createtable表(编号bigint,姓名varchar(10))
insertinto表
select1,张三
unionallselect2,李四
unionallselect4,王五
go

--挪用存储历程,将编号字段改成标识字段
execp_setid表,编号
go

--显现处置了局
select*from表

--显现是不是修正乐成
selectnamefromsyscolumns
whereobject_id(表)=idandstatus=0x80
go

--删除测试
droptable表

MySQL最初的开发者的意图是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。经过一些测试后,开发者得出结论:mSQL并没有他们需要的那么快和灵活。

只想知道 发表于 2015-1-18 06:46:02

where子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。

再见西城 发表于 2015-1-21 12:35:05

两个月啃那本sqlserver2005技术内部-存储引擎,花了几个月啃四本书

第二个灵魂 发表于 2015-1-30 18:23:10

相信各位对数据库和怎么样学习数据库都有一些经验和看法,也会有人走了一些弯路总结出自己的经验来,希望大家能把各自的看法和经验拿出来分享,给别人一份帮助,给自己一份快乐

若相依 发表于 2015-2-6 14:51:03

一直以来个人感觉SQLServer的优化器要比Oracle的聪明。SQL2005的更是比2k聪明了不少。(有次作试验发现有的语句在200万级时还比50万级的相同语句要快show_text的一些提示没有找到解释。一直在奇怪。)

仓酷云 发表于 2015-2-16 17:23:11

XML字段类型更好的解决了XML数据的操作。XQuery确实不错,但是个人对其没好感。(CSDN的开发者应该是相当的熟了!)

谁可相欹 发表于 2015-3-5 07:43:00

不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关

飘飘悠悠 发表于 2015-3-19 17:28:21

SQLServer的异构移植功能个人感觉最好了。(如果对比过SQLServer的链接服务器和Oracle的透明网关的朋友会发现SQLServer的sp_addlinkedserver(openquery)异构数据库系列比Oracle真是强太多了。)
页: [1]
查看完整版本: MSSQL网页设计将表中的某个字段转换成标识字段,并保存...