给点意见.....

weiyou 2003-01-10 03:51:55
现在,我所做的系统中数据表中的关联全部不用,所有的业务关系由逻辑控制,在需要更新时,处理级联更新,但对删除操作,因考虑数据可能对用户有用,不做物理的级联删除..... 这样,损失是数据表中无用数据可能会多一些.


这样处理是否合理, 大家讨论一下如何 ?
...全文
13 12 打赏 收藏 举报
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
weiyou 2003-01-11
请各位继续发言.... ,多thks 各位捧厂!!!!

To: nielisheng --- 可否详细讲不合理的地方, 请.....
To: Haiwer and jxl816:

在MS上看, SQL Server 可管理一地理信息系统,数据容量有十几TB,且系统速度可以,国内一般的应用,其数据量只在GB级,有一定的冗余数据我认为未尝不可....,

一般,我认为效率的提高主要体现在用数据这一环上,而编辑数据在其次,用数据体现在Select上,而不是体现在物理关联上....只要为用充分建立合适的索引,其优化则应行到体现....

效率在数据增量到一定程度时,其是量与效率则体现是平滑曲线,即先可能呈45度角或小于45度角线上升, 上到一定程度则化为一种小角度的线了.
  • 打赏
  • 举报
回复
jxl816 2003-01-10
给客户删前提示,如要删除这是否可表示这数据不要了呢?如要就重新录入。
我个人认为,在数据库中留越少的垃圾越好。

要不就建两个数据库,一个存放垃圾吗
  • 打赏
  • 举报
回复
逻辑删除应该要有限度,只有重要的数据不多的基础表才做这样的处理。
还有,你不用关联,而用程序代替,代价太大,效率的提高和优化加变得困难,个人认为不合适。
  • 打赏
  • 举报
回复
nielisheng 2003-01-10
你的想法一般说来不合理,不过你可能有你的特殊情况
  • 打赏
  • 举报
回复
weiyou 2003-01-10
to: Haiwer(海阔天空)
但不是真正删除,只是逻辑删除而已,若真正删除,是可以在逻辑中保证删除的完整性.
  • 打赏
  • 举报
回复
这样考虑不合理,关联的数据失去了一方,其他的就是没有意义的了,应该也要级联删除。

千万不要在表里留垃圾!
  • 打赏
  • 举报
回复
pengdali 2003-01-10
你建立作业来转嘛!

EXEC sp_add_job @job_name = 'test'


EXEC sp_add_jobstep @job_name = 'test',
@step_name = 'test_1',
@subsystem = 'TSQL',
@command = 'update yourtable set yourcol=0', /*这是你每次想执行的东西*/
@retry_attempts = 5,
@retry_interval = 5
EXEC sp_add_jobschedule @job_name = 'test',
@name = 'Schedule_test',
@freq_type = 16, -- daily
@freq_interval = 26,
@active_start_time = 10000
  • 打赏
  • 举报
回复
pengdali 2003-01-10
对建立历史表,或数据仓库,为你的表减轻,来自数据增多的压力!!
  • 打赏
  • 举报
回复
weiyou 2003-01-10
to: tj_dns(愉快的登山者)

若建立垃圾表,则需要建立两套同等的数据库结构,在删除正库时,由逻辑来保证向副本的增加,这样不是更多工作量? thks u
  • 打赏
  • 举报
回复
建立垃圾表,将删除的数据移到垃圾表中;
定期删除垃圾表中的过期数据。

  • 打赏
  • 举报
回复
weiyou 2003-01-10
楼上的兄弟可否谈谈为什么不合理
  • 打赏
  • 举报
回复
My_first 2003-01-10
不合理.
  • 打赏
  • 举报
回复
发帖
MS-SQL Server

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
帖子事件
创建了帖子
2003-01-10 03:51
社区公告
暂无公告