如何备份一个数据库里面的一个表

时间:2022-09-08 15:17:12
如题:这个表是单独建的,跟别的表没有什么关联。怎么样备份,备份后能还原成原来的样子吗?怎么样还原?是要写存储过程还是直接使用工具就行了?网上看了好多资料,完全没看明白。

22 个解决方案

#1


直接备份你整个数据库就可以了!

#2


sql server没有单独备份表的功能

你可以生成表结构及数据的insert sql

#3


LZ是嫌整个数据库太庞大了么……

#4


可以生成建表脚本来保存

#5


生成脚本文件。

#6


引用 3 楼 cainlai 的回复:
LZ是嫌整个数据库太庞大了么……


有上百G

#7


引用 2 楼 vivai2010 的回复:
sql server没有单独备份表的功能

你可以生成表结构及数据的insert sql

那样的话怎么样生成?

#8


引用 4 楼 fredrickhu 的回复:
可以生成建表脚本来保存

脚步文件,那里面的数据还有吗?

#9


 脚本~

#10


脚本文件的话当然需要依赖数据库本身才行了……

#11


引用楼主 zhangzhen_927116 的回复:
如题:这个表是单独建的,跟别的表没有什么关联。怎么样备份,备份后能还原成原来的样子吗?怎么样还原?是要写存储过程还是直接使用工具就行了?网上看了好多资料,完全没看明白。


首先你的要求,SQL SERVER无法帮助直接完成,你需要做的是

1 建立另一个数据库,最好在本机
2 做一个脚本,或者导入导出工具来生成你要的导出的数据表的脚步,直接将这个表导入到你新的数据库,并定期运行
3 正常备份那个新的数据库。

关于恢复

则1 恢复表为其他名字在你的源数据库库中,检查无误后,删除原数据库中的表,将你恢复后的表改名为你要的

#13


生成表的结构和导出表的insert sql

#14


我是个菜鸟..难道不能直接用拷贝表这个语句么? 将这个表内容及表结构拷贝到别的数据库里面的表去..这个算不算备份- - 

#15


可以把表导入另一个库,备份那个库,
也可以把这个表做个快照,或者右键任务,生成脚本,把数据也生成脚本的选项选上,再生成脚本.

#16


引用 14 楼 investruth 的回复:
我是个菜鸟..难道不能直接用拷贝表这个语句么? 将这个表内容及表结构拷贝到别的数据库里面的表去..这个算不算备份- -


可以啊,比如你有两个database 分别为a,b;你想把a库中的表a_tb备份到b中,你可右键点击a_tb-》所有任务->导出数据。。。。。。便可实现咯 

#17


关注楼主的问题,以前我用过sybase数据库,他提供了个BCP命令,就可以对单个表进行数据备份,好像SQL没有这种功能了!~~

我是在需要的表上点右键-所有任务-生成脚本,生一个建表的脚本,然后把表里的数据复制出来备份为TXT,新建数据库,运行生成的脚本建新表,复制TXT粘贴到新表,OK

#18


可以分两种途径
1 直接导出整个表
2 先保留表结构及表的生成语句,然后导出数据
第二种方法比较保险一些。但是第一种方法快捷。

#19


引用 18 楼 acupofnescafe 的回复:
可以分两种途径
1 直接导出整个表
2 先保留表结构及表的生成语句,然后导出数据
第二种方法比较保险一些。但是第一种方法快捷。

在SQL里面没有直接导出整个表的功能吧
至于第二种方法怎么导出数据?生成结构我知道。

#20


都没说到重点。我问的是怎么实现,不是问能不能实现用什么方法。

#21


硬是找不到办法
可以考虑自己用高级语言生成此表的脚本文件 
前面的表的结构啊什么的都是固定的 主要是表里面的内容:
insert into tb (col , col2)  values('{1}','{2}')  这些里面就是这些内容{1} {2}需要替换。
我想高级语言来拼接字符串 并且生成文件应该不是很难。

#22


引用楼主 zhangzhen_927116 的回复:
如题:这个表是单独建的,跟别的表没有什么关联。怎么样备份,备份后能还原成原来的样子吗?怎么样还原?是要写存储过程还是直接使用工具就行了?网上看了好多资料,完全没看明白。


多建个表不久完了。那有这么纠结的事情。

select * into TB_Backup  from TB 

不用的时候就删除。

#1


直接备份你整个数据库就可以了!

#2


sql server没有单独备份表的功能

你可以生成表结构及数据的insert sql

#3


LZ是嫌整个数据库太庞大了么……

#4


可以生成建表脚本来保存

#5


生成脚本文件。

#6


引用 3 楼 cainlai 的回复:
LZ是嫌整个数据库太庞大了么……


有上百G

#7


引用 2 楼 vivai2010 的回复:
sql server没有单独备份表的功能

你可以生成表结构及数据的insert sql

那样的话怎么样生成?

#8


引用 4 楼 fredrickhu 的回复:
可以生成建表脚本来保存

脚步文件,那里面的数据还有吗?

#9


 脚本~

#10


脚本文件的话当然需要依赖数据库本身才行了……

#11


引用楼主 zhangzhen_927116 的回复:
如题:这个表是单独建的,跟别的表没有什么关联。怎么样备份,备份后能还原成原来的样子吗?怎么样还原?是要写存储过程还是直接使用工具就行了?网上看了好多资料,完全没看明白。


首先你的要求,SQL SERVER无法帮助直接完成,你需要做的是

1 建立另一个数据库,最好在本机
2 做一个脚本,或者导入导出工具来生成你要的导出的数据表的脚步,直接将这个表导入到你新的数据库,并定期运行
3 正常备份那个新的数据库。

关于恢复

则1 恢复表为其他名字在你的源数据库库中,检查无误后,删除原数据库中的表,将你恢复后的表改名为你要的

#12


#13


生成表的结构和导出表的insert sql

#14


我是个菜鸟..难道不能直接用拷贝表这个语句么? 将这个表内容及表结构拷贝到别的数据库里面的表去..这个算不算备份- - 

#15


可以把表导入另一个库,备份那个库,
也可以把这个表做个快照,或者右键任务,生成脚本,把数据也生成脚本的选项选上,再生成脚本.

#16


引用 14 楼 investruth 的回复:
我是个菜鸟..难道不能直接用拷贝表这个语句么? 将这个表内容及表结构拷贝到别的数据库里面的表去..这个算不算备份- -


可以啊,比如你有两个database 分别为a,b;你想把a库中的表a_tb备份到b中,你可右键点击a_tb-》所有任务->导出数据。。。。。。便可实现咯 

#17


关注楼主的问题,以前我用过sybase数据库,他提供了个BCP命令,就可以对单个表进行数据备份,好像SQL没有这种功能了!~~

我是在需要的表上点右键-所有任务-生成脚本,生一个建表的脚本,然后把表里的数据复制出来备份为TXT,新建数据库,运行生成的脚本建新表,复制TXT粘贴到新表,OK

#18


可以分两种途径
1 直接导出整个表
2 先保留表结构及表的生成语句,然后导出数据
第二种方法比较保险一些。但是第一种方法快捷。

#19


引用 18 楼 acupofnescafe 的回复:
可以分两种途径
1 直接导出整个表
2 先保留表结构及表的生成语句,然后导出数据
第二种方法比较保险一些。但是第一种方法快捷。

在SQL里面没有直接导出整个表的功能吧
至于第二种方法怎么导出数据?生成结构我知道。

#20


都没说到重点。我问的是怎么实现,不是问能不能实现用什么方法。

#21


硬是找不到办法
可以考虑自己用高级语言生成此表的脚本文件 
前面的表的结构啊什么的都是固定的 主要是表里面的内容:
insert into tb (col , col2)  values('{1}','{2}')  这些里面就是这些内容{1} {2}需要替换。
我想高级语言来拼接字符串 并且生成文件应该不是很难。

#22


引用楼主 zhangzhen_927116 的回复:
如题:这个表是单独建的,跟别的表没有什么关联。怎么样备份,备份后能还原成原来的样子吗?怎么样还原?是要写存储过程还是直接使用工具就行了?网上看了好多资料,完全没看明白。


多建个表不久完了。那有这么纠结的事情。

select * into TB_Backup  from TB 

不用的时候就删除。