仓酷云

标题: MSSQL网站制作之营业单号主动增加的处置举措 [打印本页]

作者: 老尸    时间: 2015-1-16 22:28
标题: MSSQL网站制作之营业单号主动增加的处置举措
先说DDL的分类。有一类DDL,是不需要重建表的,比如加非聚簇索引。这类操作其实不会丢数据,也是在原表上直接操作,对于我们“以恢复数据为目的”的闪回,是可以先忽略的。另外一类,则是会影响到表数据的操作。
成绩:在实践营业处置中有些单号必要主动增加,但又不克不及用自增列取代
eg:P031106001--第一名P暗示推销单,031106暗示日期,后三位是流水号。 

/*1:创立测试用的表布局*/
createtabletablename(ponochar(10),bint)
go
/*2:创立一个失掉以后日期的视图,为上面的自字义函数作筹办*/
createviewvGetdate
as
selectgetdate()astoday
go
/*3:用自界说函数来失掉单号(因自定函数内不克不及用getdate()来失掉以后日期,要用到下面的视图)*/
createfunctiongetDH()
returnschar(10)
As
begin
declare@dh1char(10),@dh2char(10)
select@dh1=max(pono)fromtableName
Set@dh1=IsNull(@dh1,P000000000)
select@dh2=Left(@dh1,1)+right(convert(varchar(8),today,112),6)+001fromvGetdate
if@dh1>=@dh2
begin
set@dh2=left(@dh1,7)+right(000+cast(cast(right(@dh1,3)asint)+1asvarchar),3)
end
return(@dh2)
end
go
/*4:在字段默许值中填进dbo.getdh()*/
altertabletablenameaddconstraintdf_tablename_1default(dbo.getdh())forpono
-/*5:测试:*/
inserttablename(b)values(1)
inserttablename(b)values(2)
Select*fromtablename
--测试了局
ponob
---------------------
P0311150011
P0311150022
总结:此办法使用到了一些小技能
1:用字段默许值来完成单号自增
2:用自界说函数来失掉字段的默许值
3:因在自界说函数中不克不及用getdate()之类非断定的函数,用视图来失掉以后日期
Cluster/NDB高冗余的存储引擎,用多台数据机器联合提供服务以提高整体性能和安全性。适合数据量大,安全和性能要求高的应用
作者: 老尸    时间: 2015-1-19 13:53
可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。
作者: 小妖女    时间: 2015-1-25 14:27
而写到本地,我又考虑到效率问题.大家来讨论讨论吧,分数不打紧,就给10分,十全十美,没啥对错,各抒己见,但是要有说服力的哦~
作者: 再现理想    时间: 2015-2-2 22:24
微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。
作者: 变相怪杰    时间: 2015-2-8 14:47
学习SQL语言的话如果要学会去做网站就不是很难!但是要做数据库管理的话就有难度了!
作者: 飘飘悠悠    时间: 2015-2-25 19:08
Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。
作者: 金色的骷髅    时间: 2015-3-8 02:01
如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。
作者: 愤怒的大鸟    时间: 2015-3-15 20:25
作了些试验,发现使用CLR的存储过程或函数在达到一定的阀值的时候,系统性能会呈指数级下滑!这是非常危险的!只使用几个可能没有问题,当一旦大规模使用会造成严重的系统性能问题!
作者: 山那边是海    时间: 2015-3-22 04:08
从底层原理到表层引用,书籍多的很。个人认为没有什么那本书好?这样的说法。主要看和个人的学习方法是否适合。
作者: 因胸联盟    时间: 2015-3-22 04:08
是否碎片会引发效率问题?这都是需要进一步探讨的东西。varbinary(max)代替image也让SQLServer的字段类型更加简洁统一。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2