数据库导出动态复杂结构的问题
2013-07-12 13:21
148 查看
在导出一些比较恶心的表设计的数据时,比如几张表,每个表都有和上一个表的父子级对应关系,当从一个环境导出到另一个环境时,id不一定相同,那么如果要保持它们之间的对应关系该如何搞定。其实有一个非常好用的办法。
比如我们有一张表,system_stack_space
View Code
这里首先,我们获取当前库中system_stack_space这个表真正的最大id取出来
然后从临时表#system_stack_space中查出数据,并把他的自增长id加上当前最大的id作为其最终的id,并把第三段sql中的new_space_id作为他的父级id,最后插入到数据库中
对于第二个临时表,我们同样获取当前库中system_stack_space这个表真正的最大id取出来(这时候的最大id已经和上一步不一样了,他应该是上一步的最大id 加上 临时表#system_stack_space中的最大id),所以我们还是要取当前最大id加上临时表#system_stack_space2的id,来作为这批数据的最终id,而这里的父级id,应该是第一次插入数据时的最大id加上临时表#system_stack_space2的父级id(这里就相当于是临时表#system_stack_space的id),那么等同于对于到其上一级的id,这样父子级关系也就清楚了。
比如我们有一张表,system_stack_space
declare @current_space_id int select @current_space_id=max(space_id) from system_stack_space insert into system_stack_space select (@current_space_id+id),space_name,@new_space_id,tstamp from #system_stack_space declare @current_space_id2 int select @current_space_id2=max(space_id) from system_stack_space insert into system_stack_space select @current_space_id2+id,space_name,(@current_space_id+parent_id),tstamp from #system_stack_space
View Code
这里首先,我们获取当前库中system_stack_space这个表真正的最大id取出来
然后从临时表#system_stack_space中查出数据,并把他的自增长id加上当前最大的id作为其最终的id,并把第三段sql中的new_space_id作为他的父级id,最后插入到数据库中
对于第二个临时表,我们同样获取当前库中system_stack_space这个表真正的最大id取出来(这时候的最大id已经和上一步不一样了,他应该是上一步的最大id 加上 临时表#system_stack_space中的最大id),所以我们还是要取当前最大id加上临时表#system_stack_space2的id,来作为这批数据的最终id,而这里的父级id,应该是第一次插入数据时的最大id加上临时表#system_stack_space2的父级id(这里就相当于是临时表#system_stack_space的id),那么等同于对于到其上一级的id,这样父子级关系也就清楚了。
相关文章推荐
- 导入导出数据库表结构、视图相关问题汇总
- Toad导出数据字典,把数据库所有的表结构导出到htm中。(写文档很有用。)
- spring 返回 JSON乱码问题的解决 及个人 动态加载ztree树结构的json数据代码
- 导出数据库表为world文档说明,以及PowerDesigner导出表结构pdm设计文档
- 浅谈数据库导入导出格式问题
- 关于用navicat for mysql导出和导入数据库的问题
- 阿里云数据库结构分析与“脑裂”问题的解决思路
- mysqldump导出数据库锁表问题
- 类斐波那契问题中动态规划的时间复杂度优化
- 数据库导入导出数据以及字段类型为timestamp时的设值问题
- MySql导入(导出【导出部分表结构及数据】)数据库
- PowerDesigner设计数据库及导出数据库文件相关问题PowerDesigner Could not Initialize JavaVM!
- win7 64位数据库连接问题:在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配
- 搞到凌成3点的数据库导出问题
- mysql 执行 大数据 sql文件 与 集群结构 授权 数据库导出导入
- Power Designer 连接SqlServer 数据库 导出表结构
- 关于ORACLE 11g数据库不能导出空表问题解决
- 导出数据库数据的方法,适合简单的数据库表格结构
- 动态加载DLL实现不同DLL的相同导出函数调用问题
- mysql 数据库导入 导出,解决 导入 错误问题