仓酷云

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

[学习教程] MSSQL编程:多个DW同时更新,且表中有干系存在,需...

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

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

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

x
出于效率方面的考虑,InnoDB数据表的数据行级锁定实际发生在它们的索引上,而不是数据表自身上。显然,数据行级锁定机制只有在有关的数据表有一个合适的索引可供锁定的时候才能发挥效力。成绩
一次在做到多个表同时更新的时分,出了些成绩。

有需要写出来,引发注重。

固然多个DW(3个)各自对应的都是一个表,但这些表间存在着干系,并且DW是同时更新。

好比:table_1:ID,name,sex.......

table_2:...ID(与table_1有对应干系),pro_1,pro_2......

table_3:...ID(与table_1有对应干系),reg_time.....

因为没有履历:

第一次,后两个DW里在计划的时分,没有选择与第一个表相干的项----ID。

厥后,发明没法更新。

只能重新计划,将table_2和table_3的ID项都分离选在各自的DW中,

但在界面中又不想让其呈现,最好的举措---

设置他们的visable属性为False,也就是往失落属性里visable前的“钩”。

计划好后的编码中,我先入手下手的编码是:

ifdw_1.update()=1then

ifdw_2.update()=1then

ifdw_3.update()=1then

commit;

else

rollback;

endif

endif

endif

----------------------------

但最好仍是写成上面对照好:

file://加的SQLCA属性的处置(通用目标)
booleanlb_Tran
lb_Tran=sqlca.AutoCommit
sqlca.AutoCommit=false

IFdw_1.Update()1THEN
MessageBox("操纵提醒","dw_1数据保留失利!")
ROLLBACK;
sqlca.AutoCommit=lb_Tran
RETURN
ELSEIFdw_2.Update()1THEN
MessageBox("操纵提醒","dw_2数据保留失利!")
ROLLBACK;
sqlca.AutoCommit=lb_Tran
RETURN
ELSEIFdw_3.Update()1THEN
MessageBox("操纵提醒","dw_3数据保留失利!")
ROLLBACK;
sqlca.AutoCommit=lb_Tran
RETURN
ELSE
COMMIT
ENDIF

------------------------------------------------------------------------


这类操作的执行过程是,1)按照新的表定义建立一个临时表tmpa,2)将原表数据拷贝到临时表,3)将原始表改名tmpb,4)将tmpa改名为原表名,5)将tmpb删除。
兰色精灵 该用户已被删除
沙发
发表于 2015-1-19 13:03:46 | 只看该作者
也可谈一下你是怎么优化存储过程的?
第二个灵魂 该用户已被删除
板凳
发表于 2015-1-25 14:19:19 | 只看该作者
分区表是个亮点!从分区表也能看出微软要做大作强SQLServer的信心。资料很多,这里不详细说。但是重点了解的是:现在的SQLServer2005的表,都是默认为分区表的。因为它要支持滑动窗口的这个特性。这种特性对历史数据和实时数据的处理是很有帮助的。
分手快乐 该用户已被删除
地板
发表于 2015-2-2 22:23:06 | 只看该作者
你觉得我的非分区索引无法对起子分区,你可以提醒我一下呀!没有任何的提醒,直接就变成了非分区表。不知道这算不算一个bug。大家也可以试试。
深爱那片海 该用户已被删除
5#
发表于 2015-2-8 14:35:26 | 只看该作者
对递归类的树遍历很有帮助。个人感觉这个真是太棒了!阅读清晰,非常有时代感。
灵魂腐蚀 该用户已被删除
6#
发表于 2015-2-25 18:58:15 | 只看该作者
学习SQL语言的话如果要学会去做网站就不是很难!但是要做数据库管理的话就有难度了!
再见西城 该用户已被删除
7#
发表于 2015-3-8 01:54:49 | 只看该作者
我们学到了什么?思考问题的时候从表的角度来思考问
小魔女 该用户已被删除
8#
发表于 2015-3-15 19:50:36 | 只看该作者
原来公司用过MYSQL自己也只是建个表写个SQL
透明 该用户已被删除
9#
发表于 2015-3-22 03:11:36 | 只看该作者
where子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-23 04:37

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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