仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 726|回复: 9
打印 上一主题 下一主题

[学习教程] MSSQL网站制作之营业单号主动增加的处置举措

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:28:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
先说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:08 | 只看该作者
可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。
小妖女 该用户已被删除
板凳
发表于 2015-1-25 14:27:33 | 只看该作者
而写到本地,我又考虑到效率问题.大家来讨论讨论吧,分数不打紧,就给10分,十全十美,没啥对错,各抒己见,但是要有说服力的哦~
再现理想 该用户已被删除
地板
发表于 2015-2-2 22:24:51 | 只看该作者
微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。
变相怪杰 该用户已被删除
5#
发表于 2015-2-8 14:47:08 | 只看该作者
学习SQL语言的话如果要学会去做网站就不是很难!但是要做数据库管理的话就有难度了!
飘飘悠悠 该用户已被删除
6#
发表于 2015-2-25 19:08:49 | 只看该作者
Mirror可以算是SQLServer的Dataguard了。但是能不能被大伙用起来就不知道了。
金色的骷髅 该用户已被删除
7#
发表于 2015-3-8 02:01:33 | 只看该作者
如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。
愤怒的大鸟 该用户已被删除
8#
发表于 2015-3-15 20:25:15 | 只看该作者
作了些试验,发现使用CLR的存储过程或函数在达到一定的阀值的时候,系统性能会呈指数级下滑!这是非常危险的!只使用几个可能没有问题,当一旦大规模使用会造成严重的系统性能问题!
因胸联盟 该用户已被删除
9#
发表于 2015-3-22 04:08:59 | 只看该作者
是否碎片会引发效率问题?这都是需要进一步探讨的东西。varbinary(max)代替image也让SQLServer的字段类型更加简洁统一。
山那边是海 该用户已被删除
10#
发表于 2015-3-22 04:08:56 | 只看该作者
从底层原理到表层引用,书籍多的很。个人认为没有什么那本书好?这样的说法。主要看和个人的学习方法是否适合。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 00:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表