SQL-bcp(导入导出数据)
--更新使用sp_configure 系统存储过程更改的配置选项的当前已配置值(sp_configure 结果集中的config_value 列)。
--由于有些配置选项需要服务器停止并重新启动才能更新当前运行的值,因此RECONFIGURE 并不总是为已更改的配置值更新当前运行的值(sp_configure 结果集中的run_value 列)。
-- 语法
RECONFIGURE [ WITH OVERRIDE ]
-- 参数
RECONFIGURE
-- 指定如果配置设置不需要服务器停止并重新启动,则更新当前运行的值。
-- RECONFIGURE 还会检查新的配置值中是否有无效值(例如,在syscharsets 中不存在的排序顺序值)或非建议值。
-- 对于那些不需要服务器停止并重新启动的配置选项,其当前运行的值和当前配置的值在指定RECONFIGURE 之后应当相同。
WITH OVERRIDE
-- 禁用对recoveryinterval 高级配置选项的配置值检查(以查找无效值或非建议值)。
-- 任何配置选项都可以通过使用WITH OVERRIDE 选项来重新配置。另外,RECONFIGURE WITH OVERRIDE 使用指定值强制重新配置。
-- 例如,可使用大于maxservermemory 配置选项中指定的值来配置minservermemory 配置选项。但是,这将被认为是错误。
-- 因此,指定RECONFIGURE WITH OVERRIDE 将不禁用配置值检查。
-- 注释
-- sp_configure 不接受超出所记录的各配置选项值有效范围的新配置选项值。
-- 不允许在显式或隐式事务中使用RECONFIGURE。同时对多个选项进行重新配置时,如果任意重新配置操作失败,所有重新配置操作都将无效。
-- 权限
-- 默认情况下,被授予ALTER SETTINGS 权限的用户同时拥有RECONFIGURE 权限。sysadmin 和serveradmin 固定服务器角色隐式持有该权限。
-- 示例
-- 以下示例将recovery interval 配置选项的上限设置为90 分钟,并使用RECONFIGURE WITH OVERRIDE 进行安装。
-- 建议恢复间隔不要大于60 分钟,并且默认情况下是不接受的。
-- 但是,由于指定了WITH OVERRIDE 选项,因此SQL Server 不会检查指定的值(90) 是否为recovery interval 配置选项的有效值。
EXEC sp_configure 'recovery interval', 90
RECONFIGURE WITH OVERRIDE
GO
-- 配置数据库高级选项 配置下面的高级选项时必须先打开高级选项开关 否则会报错
sp_configure 'show advanced options', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
sp_configure 'show advanced options', 0;
GO
RECONFIGURE WITH OVERRIDE;
GO
-- SQL Server 阻止了对组件'Ole Automation Procedures' 的过程'sys.sp_OACreate' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。
-- 系统管理员可以通过使用sp_configure 启用'Ole Automation Procedures'。
-- 有关启用'Ole Automation Procedures' 的详细信息,请参阅SQL Server 联机丛书中的"外围应用配置器"。
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE WITH OVERRIDE;
GO
-- powershelll
EXEC sp_configure N'xp_cmdshell', N'1'
GO
RECONFIGURE WITH OVERRIDE
GO
-- 数据库纤程开关
-- 需要重新启动sql服务生效
EXEC sp_configure N'MAX DEGREE OF PARALLELISM', N'0';
go
RECONFIGURE WITH OVERRIDE;
go
-- BCP数据导入导出常用
EXEC master..xp_cmdshell 'BCP "select CloudCallCenterGroup.dbo.Apply_400Number_TypeList from a" queryout D:\tset1.txt -c -U"crm" -P"crm123"'
EXEC master..xp_cmdshell 'bcp CloudCallCenterGroup.dbo.Apply_400Number_TypeList in D:\tset1.txt -c -T'
======================================================================================================================
总结汇总:
--SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程 'sys.sp_OACreate
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO
EXEC sp_configure N'show advanced options', N'1'
RECONFIGURE WITH OVERRIDE
EXEC sp_configure N'xp_cmdshell', N'1'
RECONFIGURE WITH OVERRIDE
EXEC sp_configure N'show advanced options', N'0'
RECONFIGURE WITH OVERRIDE
EXEC master..xp_cmdshell 'BCP "select * from [CallCenterGroupCTI].[dbo].[t_CallerCallInLog] where EnterpriseID=''4006279388''and endtime>''2013-04-02''" queryout D:\4006279388.txt -c -U"crm" -P"crm123"'
EXEC master..xp_cmdshell 'bcp [CallCenterGroupCTI].[dbo].[t_CallerCallInLog] in D:\4006279388(1).txt -c -T'
![](https://img2018.cnblogs.com/blog/406456/201911/406456-20191123142112777-1240738304.jpg)