数据库垂直分割的问题

rainfall007 2009-08-26 09:49:06

foxpro表是一个旧软件中的,把一个资料所有的字段都放在一个表中

1信息表 (不包含n_id列)

我用sql数据库重做的时候,做了三个表,都用n_id做主键,其中档案信息表 中n_id设置为自动编号。
1档案信息表
2合同信息表
3工程信息表

这样虽然很清晰,但是用起来很麻烦,因为有很多查询需要用到两个或三个表里的信息,如果只读可以用视图,可是写数据不能对跨表视图操作,操作起来只能全用存储过程了。。

问题如下:
我是数据库初学者,
不知道各位有什么好的办法,操作起来不那么麻烦呢?

另外 我想把这个foxpro数据表导入到三个sql数据库表里应该怎么操作呢?
...全文
139 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinjazz 2009-08-26
  • 打赏
  • 举报
回复
我们以前的系统,因为表字段太多,用了垂直分割,后来版本更新又都合并了。使用起来太麻烦了
rainfall007 2009-08-26
  • 打赏
  • 举报
回复
ok 那就准备重做吧。。。。T_T
feixianxxx 2009-08-26
  • 打赏
  • 举报
回复
重做吧
避免日后麻烦
SQL77 2009-08-26
  • 打赏
  • 举报
回复
为啥要垂直分割呀???晕
jinjazz 2009-08-26
  • 打赏
  • 举报
回复
如果不是非常必要,建议不要做垂直分割
SQL77 2009-08-26
  • 打赏
  • 举报
回复
学习
xuejie09242 2009-08-26
  • 打赏
  • 举报
回复
表如果做垂直分割,要根据数据更新的特点进行分割,不应该出现更新时要同时更新多个表的问题,你的表分割可能不合理,或者,你的程序功能设计上有问题。
直接用MSSQL的数据导入导出就行了,select n_id,..... from tb后面是你需要的字段就行了。
rainfall007 2009-08-26
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 guguda2008 的回复:]
引用 3 楼 rainfall007 的回复:
我想把这个foxpro数据表导入到三个sql数据库表里应该怎么操作呢?

这个问题好解决么?

可以先用查询把原表分成有三个结果集再分别插入三个表
[/Quote]

但是能确保查询出来的数据放到新数据库里位置正确么, 也就是说
同一个n_id对映的内容
n_id档案信息 n_id合同信息 n_id工程信息 对映的数据会不会出错,如果措开了就糟了

有没有事例代码呢?
guguda2008 2009-08-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 rainfall007 的回复:]
我想把这个foxpro数据表导入到三个sql数据库表里应该怎么操作呢?

这个问题好解决么?
[/Quote]
可以先用查询把原表分成有三个结果集再分别插入三个表
rainfall007 2009-08-26
  • 打赏
  • 举报
回复
我想把这个foxpro数据表导入到三个sql数据库表里应该怎么操作呢?

这个问题好解决么?
--小F-- 2009-08-26
  • 打赏
  • 举报
回复
多表查询是可以的

但是同时把数据插入3个数据库 有难度了 建议重新设计下表
Yang_ 2009-08-26
  • 打赏
  • 举报
回复
查询如果用到多表,连接就可以了
如果是插入需要用到多表,说明你分表不合理

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧