关于BCP备份的存储过程!

bqj 2004-03-09 08:27:43
declare @command_str varchar(1000)
declare @server_str varchar(50)
declare @pass_str varchar(50)

set @server_str = 'yu'
set @pass_str = '111'

set @command_str = 'bcp "select * from yurong..buyerplanoverall " queryout d:\yurong\data\buyerplanoverall.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..buyerplandetail " queryout d:\yurong\data\buyerplandetail.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..factoryplanoverall " queryout d:\yurong\data\factoryplanoverall.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..factoryplandetail " queryout d:\yurong\data\factoryplandetail.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..stowageoverall " queryout d:\yurong\data\stowageoverall.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..stowagedetail " queryout d:\yurong\data\stowagedetail.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..itemcode " queryout d:\yurong\data\itemcode.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..company " queryout d:\yurong\data\company.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..country " queryout d:\yurong\data\country.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..employeecode " queryout d:\yurong\data\employeecode.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..utcode " queryout d:\yurong\data\utcode.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..state " queryout d:\yurong\data\state.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..destination " queryout d:\yurong\data\destination.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..buyercode " queryout d:\yurong\data\buyercode.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..buyprice " queryout d:\yurong\data\buyprice.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..facplannote " queryout d:\yurong\data\facplannote.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..factorycode " queryout d:\yurong\data\factorycode.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..stockname " queryout d:\yurong\data\stockname.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..priceclause " queryout d:\yurong\data\priceclause.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..trademode " queryout d:\yurong\data\trademode.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..paymentmode " queryout d:\yurong\data\paymentmode.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..containersize " queryout d:\yurong\data\containersize.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str
set @command_str = 'bcp "select * from yurong..incasement " queryout d:\yurong\data\incasement.txt -c -S' + @server_str + ' -Usa -P' + @pass_str
EXEC master..xp_cmdshell @command_str


以上代码为一存储过程中问题部分的代码。
该存储过程在SQL SERVER 查询分析器中执行完全正常,所有的表都可以备份出来。
用PB中调用该存储过程时,如果是在单机环境下也正常。
但如果在网络环境下用PB调用该存储过程时,却总是只能备份前四个表,是何原因?
...全文
81 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pb8oracle 2004-05-11
  • 打赏
  • 举报
回复
help!
bqj 2004-03-22
  • 打赏
  • 举报
回复
help!
bqj 2004-03-18
  • 打赏
  • 举报
回复
help!
bqj 2004-03-16
  • 打赏
  • 举报
回复
help
dmec 2004-03-15
  • 打赏
  • 举报
回复
ding!
适用于AWS的Lambda备份BCP功能 总览 这是我的一些肮脏脚本集(通过Lambda和自动生成的EC2实例包装并执行,并使用无服务器框架部署),用于备份整个AWS账户中的所有关键基础架构(这些脚本将遍历每个AWS区域并检查要备份的资源) 。 备份尽可能使用标准文件格式(例如DNS区域文件,SQL Dump等)存储在单个S3存储桶中。 目标是尝试使用标准的现有脚本/工具来执行这些任务,而不是重新发明轮子-来自无数作者的几种现有脚本和工具已被包含或分叉(并包装)在无服务器功能中,以执行这些任务。 在EC2实例上或Lambda函数中运行的标准工具(例如mysqldump , cli53 , dd等)用于创建“标准”文件格式,以便将来可以轻松地将备份读取/导入到所需的任何基础架构中。 基础架构是通过“资源标签”自动备份和管理的(可以在AWS控制台中的任何基础架构上进行虚拟定义),从而使组织内执行DevOps的任何人都可以根据需要快速启用资源备份。 如果您将这些功能用作灾难恢复和业务连续性计划的一部分,则还可以选择将备份从S3存储桶复制到您选择的其他云或基础架构提供商。 如果您使用的
⼤数据迁移实践之路 ⼤数据迁移实践之路 随着业务的迅速发展,农业银⾏某系统承担的运⾏压⼒越来越⼤。现阶段, 该系统每天的交易量在2300 万笔以上,峰值达2950 万笔。交易 量的攀升导致了后台数据库数据量的激增,从⽽影响了联机程序响应时间,也增加了系统各类资源开销和后续数据分析的处理时间。为保障 系统稳定运⾏,项⽬组从增加系统资源、优化资源配置、优化重点程序和升级系统数据库等多个维度对系统进⾏了综合优化。下⾯笔者从⼤ 表、热表的数据分析和优化⾓度,阐述对⼤数据量表进⾏的存储优化。   ⼀、⼤表数据分析   ⽬前农业银⾏某系统⼯作流数据量最⼤且访问最频繁的两张核⼼表:   (1)流程实例表,⽤于存储系统发起的所有流程实例,包括基本流程、会签流程、补充资料流程和抄送流程;   (2)任务实例表,⽤于存储每个流程实例的流转记录。   截⾄2013 年4 ⽉1 ⽇, ⼯作流两张⼤表的数据量如表1 所⽰。其中任务实例表为系统中数据量最⼤的⼀张表,达到了1.2 亿。根据 ProDBA 抓取的执⾏次数最多且执⾏时间最长的前30 条SQL 信息中,显⽰流程实例表和任务实例表压⼒⽐较⼤。⼤表中的数据按照结束时 间和状态两个维度可以区分为三类:   (1)正在运⾏的流程数据,即业务正在办理过程中,尚未结束;   (2)已结束流程⼀年内的数据,即业务总体流程已经结束,期限在⼀年内(包含⼀年);   (3)已经结束流程⼀年以上的数据,即业务总体流程已经结束,期限在⼀年以上(如表2 所⽰)。事实上,由于存在业务制度等⽅⾯的规 定,已经结束⼀年以上的数据基本处于静态⽆变化的情况,不会发⽣修改、删除等数据操作,但是占据了⼀定的表空间,同时也影响了对其 他运⾏中数据的访问效率。为降低⼤数据量对系统访问的影响,需制定迁移规则,进⾏数据拆分。   ⼆、拆分规则   根据上述⼤数据表的数据分布特点,建⽴三套表结构:运⾏表、历史表和备份表。运⾏表仅存储正在运⾏的流程数据,流程结束后(正 常完成或者终⽌)将基本流程以及其所属⼦流程相关的所有数据(流程实例、任务实例、流程变量、异常、分⽀等)实时迁移⾄历史表。如业务 需要将已结束的流程恢复,系统⽀持流程从历史表实时迁回到运⾏表继续流转,整个过程对⽤户是完全透明的。   由于已完成和终⽌⼀年以上的流程,需恢复的业务需求很少(系统上线以来未发⽣过类似业务),因此由备份表存放第三类数据,形成三 级存储模式如图1 所⽰。历史表中的数据,每年执⾏⼀次批量拆分操作,拆分⾄备份表。   为保障数据平稳的迁移,应采取分布实施的策略。2012 年12 ⽉8⽇,流程结束数据实时迁移到历史表功能先期投产,因此⽬前⼯作流 运⾏表中存放的数据包含三种情况:正在运⾏的数据;2012 年5 ⽉⾄2012 年12 ⽉结束的流程;2012 年5 ⽉前结束⼀年以上的流程(如图2所 ⽰)。   按照数据三级存储规则,需要对⼤数据表进⾏拆分、剥离及整合,最终实现运⾏表只存储运⾏的数据,降低系统压⼒(如图3 所⽰)。   三、问题分析及拆分策略   1. 数据表重命名   数据迁移前需要对流程实例表和任务表进⾏BCP 数据备份,以确保出现异常情况时,可及时恢复数据。任务实例表(1.2 亿)和流程实例 表(2 千万),备份估计需要2~3个⼩时。数据迁移最终要达到运⾏表中仅存放流程正在运⾏中的数据,因此采取如下策略,节省BCP 备份时 间。   ⾸先,创建任务实例和流程实例中间表,表结构和运⾏表保持完全⼀致;其次,将运⾏表中正在运⾏的数据迁移⾄中间表;再次,对流程 运⾏表和中间表重命名,实现中间表转换为运⾏表,运⾏表转换为备份表。如出现数据迁移异常和验证不通过等情况,由于备份表保存了迁 移当⽇的全量数据,因此,再次执⾏数据表重命名即可解决问题,⽆需再对两张⼤表进⾏BCP 备份。数据表重命名脚本执⾏时间,经测试 在1 分钟内即可完成,⼤⼤减少迁移时间。   2. 数据完整性   ⼀笔完整的流程,包含⼀条流程实例和多条任务实例,任务实例根据流程实例编号和状态等属性,确定所属流程。迁移⽅法⼀:为保障 迁移数据完整,需要根据流程的状态,查询流程和关联任务的记录,⼀次性迁移两张表的记录,如迁移失败同时回滚,因此,需要进⾏任务 实例表和流程实例表关联。考虑到两张表的数据量,此⽅案将会导致迁移效率很低。经测试,迁移5万笔流程(5 万条流程和36 万条任务记 录) 数据约7分钟,循环执⾏迁移,迁移完全部流程数据需要约42 个⼩时。   为提⾼拆分效率,减少对投产时间窗⼝的占⽤,对拆分⽅法进⾏了优化。迁移⽅法⼆:⾸先,流程实例表按照I D 号升序排列,取前50 万条记录存放⾄临时表;其次,将临时表(50 万)和任务表(1.2 亿)进⾏关联,迁移流程所属的所有任务;再次,再迁移50
第 2 章 日期处理 23 2.1 日期类型概述 23 2.2 日期处理函数 25 2.2.1 日期增减函数 25 2.2.2 日期信息获取函数 26 2.2.3 日期差值计算函数 27 2.2.4 其他日期处理相关函数 27 2.3 日期选项设置 29 2.3.1 default language选项 30 2.3.2 SET DATEFIRST 31 2.3.3 SET DATEFORMAT 31 2.3.4 SET LANGUAGE 33 2.4 日期格式化与日期推算处理 34 2.4.1 日期格式化处理 34 2.4.2 日期推算处理 35 2.4.3 日期加减处理 38 2.5 日期处理实例 40 2.5.1 生日处理 40 2.5.2 生成日期列表 42 2.5.3 工作日处理 46 2.5.4 工作时间计算 49 2.6 日期处理疑难解答 51 2.6.1 日期处理中常犯的错误 51 2.6.2 常见的低效率日期处理方法 52 2.6.3 日期与数字 53 第 3 章 字符处理 55 3.1 字符类型概述 55 3.2 字符串分拆 56 3.2.1 循环截取法 57 3.2.2 动态Transact-SQL语句法 57 3.2.3 辅助表法 59 3.2.4 分拆数据到列 61 3.2.5 分拆数字数据 62 3.2.6 分拆短信数据 63 3.3 字符串合并 64 3.3.1 游标合并法 65 3.3.2 SELECT语句合并法 66 3.3.3 临时表合并法 68 3.3.4 固定行合并法 69 3.4 其他字符串处理要求 70 3.4.1 分段截取 70 3.4.2 分段更新 72 3.4.3 IP地址处理 72 3.5 字符串分拆与合并处理应用实例 74 3.5.1 字符串比较 74 3.5.2 字符串交集/并集 75 3.5.3 分拆字符串并统计 78 3.5.4 借用字符串实现无规律排序 82 3.5.5 列车车次查询 82 3.6 字符串在动态Transact-SQL语句中的应用 85 3.6.1 动态Transact-SQL语句概述 85 3.6.2 字符串在编号查询中的使用 87 3.6.3 动态参数存储过程 90 3.6.4 动态Transact-SQL语句中常见问题 92 3.7 text与ntext字段处理 96 3.7.1 text与ntext数据的存储 96 3.7.2 管理text与ntext数据 97 3.7.3 text与ntext字段的复制和合并 99 3.7.4 text与image字段转换 101 3.7.5 ntext字段的REPLACE处理 103 第 4 章 排序规则 107 4.1 字符存储编码与排序规则 107 4.1.1 字符数据的存储编码 107 4.1.2 UNICODE 108 4.1.3 排序规则 109 4.1.4 排序规则比较和排列规则 111 4.1.5 使用排序规则 112 4.1.6 如何选择字符字段类型 116 4.2 排序规则应用 117 4.2.1 拼音处理 117 4.2.2 全角与半角字符处理 120 第 5 章 编号处理 123 5.1 自动编号 123 5.1.1 IDENTITY 123 5.1.2 ROWGUIDCOL 129 5.2 手工编号 131 5.2.1 查表法 131 5.2.2 独立编号表法 135 5.2.3 随机编号 139 5.3 缺号与补号 143 5.3.1 检查缺号 143 5.3.2 补号处理 143 5.3.3 编号重排 146 5.4 编号查询 150 5.4.1 已用编号分布查询 150 5.4.2 缺号分布查询 151 5.4.3 生成已用编号和缺号分布字符串 152 5.4.4 缺勤天数统计 155 第 6 章 数据统计与汇总 159 6.1 基本查询 159 6.1.1 空(NULL)值对查询的影响 159 6.1.2 联接 161 6.1.3 UNION与UNION ALL 165 6.1.4 数据填充查询 167 6.1.5 上限与下限区间统计 169 6.1.6 随机记录查询 170 6.2 分级汇总 173 6.2.1 实现分级汇总处理 173 6.2.2 分级汇总结果的过滤 176 6.2.3 分级汇总结果显示格式处理 177 6.2.4 分级汇总结果的排序处理 179 6.3 交叉数据报表 181 6.3.1 实现原理 181 6.3.2 多列转置 184 6.3.3 动态列 185 6.3.4 动态列中的字符溢出处理 188 6.3.5 特殊的交叉报表 191 6.4 典型数据统计案例 193 6.4.1 库存明细账查询 193 6.4.2 同期及上期数据对比 197 6.4.3 动态分组统计 199 6.4.4 销售排行榜 200 第 7 章 分页处理 205 7.1 应用程序中的分页处理 205 7.2 数据库中的分页处理 207 7.2.1 使用TOP N实现分页 207 7.2.2 使用字符串 211 7.2.3 使用临时表 213 7.2.4 使用SQL Server的系统存储过程处理分页 216 7.3 特殊要求的分页处理 217 7.3.1 随机显示的分页处理 217 7.3.2 分类数据的分页处理 221 第 8 章 树形数据处理 223 8.1 单编号处理法 223 8.1.1 方法概述 223 8.1.2 逐级汇总 225 8.1.3 编码重排 226 8.1.4 调整编码规则 229 8.1.5 调整编码隶属关系 233 8.2 双编号处理法 238 8.2.1 方法概述 239 8.2.2 树形数据排序 240 8.2.3 查找子节点 244 8.2.4 查找父节点 245 8.2.5 编码校验 246 8.2.6 节点复制 249 8.2.7 节点删除 251 8.2.8 逐级汇总 253 8.3 树形数据的扩展形式 256 8.3.1 产品配件清单 256 8.3.2 公交车乘车线路查询 258 第 9 章 数据导入与导出 261 9.1 访问外部数据 261 9.1.1 链接服务器 261 9.1.2 OPENROWSET与OPENDATASOURCE 268 9.1.3 外部数据访问方法总结 270 9.2 文本文件的导入与导出 274 9.2.1 查询文本文件内容 274 9.2.2 BCP与BULK INSERT 277 9.3 导入与导出中的常见问题 285 9.3.1 访问外部数据的注意事项 285 9.3.2 使用BCP或者BULK INSERT时的注意事项 286 9.3.3 外部数据文件位置及文件访问权限问题 287 9.4 在客户端实现SQL Server数据导入与导出处理 288 9.4.1 在Access数据库中实现与SQL Server之间的数据交换 288 9.4.2 实现客户端其他OLE DB数据源与SQL Server之间的数据交换 289 9.4.3 在客户端实现SQL Server数据导入与导出处理的一些说明 289 9.5 在数据库中存取文件 290 9.5.1 SQL Server中的文件存取方法 290 9.5.2 程序中的文件存取处理方法 292 第 10 章 作业 295 10.1 作业概述 295 10.1.1 定义作业 295 10.1.2 使用系统存储过程定义作业的常用模板 300 10.2 作业的应用 303 10.2.1 定时启用(或者停用)数据库 303 10.2.2 执行耗时的存储过程 304 10.2.3 秒级作业 305 10.3 使用作业的疑难解答 309 第 11 章 数据备份与还原 315 11.1 数据库备份与还原方法介绍 315 11.1.1 完全备份与还原 315 11.1.2 差异备份与还原 317 11.1.3 日志备份与还原 319 11.1.4 数据文件或文件组备份与还原 320 11.1.5 备份设备 321 11.1.6 数据库恢复模型对数据库备份和还原的影响 322 11.2 制订数据库备份方案 326 11.2.1 备份方案制订原则 326 11.2.2 建立数据备份方案 327 11.3 数据库备份与还原的实践应用 332 11.3.1 系统数据库的备份与还原 332 11.3.2 数据库迁移 336 11.3.3 部分数据库还原 339 11.3.4 抢救损坏数据库中的数据 341 11.3.5 将数据还原到指定时间点 343 11.3.6 将数据还原到指定标记点 345 11.3.7 同步备用服务器 346 11.4 数据备份与还原疑难解答 349 11.4.1 数据备份与还原中的常见问题 349 11.4.2 使用媒体集备份时的常见问题 354 11.4.3 数据库还原中的孤立用户问题 356 11.4.4 查询备份文件中的信息 360 第 12 章 用户定义数据类型 361 12.1 用户定义数据类型概述 361 12.1.1 创建和删除用户定义数据类型 361 12.1.2 为用户定义的数据类型绑定规则 365 12.1.3 为用户定义的数据类型绑定默认值 370 12.2 修改用户定义数据类型 373 12.2.1 修改被表引用的用户定义数据类型 373 12.2.2 修改被存储过程引用的用户定义数据类型 379 第 13 章 数据库安全 383 13.1 SQL Server的存取构架 383 13.1.1 表格格式数据流(TDS) 383 13.1.2 Net-Library与网络协议 384 13.1.3 Net-Library加密 387 13.2 用户管理 388 13.2.1 身份验证模式 388 13.2.2 登录、用户、角色和组 390 13.2.3 管理用户 395 13.3 数据文件安全 403 13.4 SQL Server安全配置 405 13.4.1 安全配置建议 405 13.4.2 使用安全套接字层(SSL)加密 408 13.5 应用程序上的安全 417 13.5.1 防止SQL注入式攻击 417 13.5.2 限制应用程序访问 418 13.5.3 不安全的扩展存储过程 419 第 14 章 系统表应用实例 423 14.1 系统对象概述 423 14.1.1 每个数据库中都存在的系统表 424 14.1.2 仅在系统数据库中存在的系统表 424 14.1.3 系统表应用中三个重要的系统存储过程 426 14.2 系统表在对象信息检索中的应用 429 14.2.1 搜索指定的对象所处的数据库 429 14.2.2 获取存储过程参数定义 432 14.2.3 搜索指定字符在哪个表的哪个字段中 435 14.2.4 非UNICODE字段改为UNICODE字段的可行性查询 438 14.2.5 字段相关对象查询 439 14.2.6 生成数据库字典 443 14.3 系统对象在处理中的应用 444 14.3.1 批量处理数据库中的对象 444 14.3.2 将所有的char、varchar改为nchar、nvarchar 445 14.3.3 标识列与普通列的相互转换 447 14.3.4 把列添加指定位置 450 14.3.5 在两个SQL Server数据库之间复制对象 451 第 15 章 SQL Server应用疑难解答 455 15.1 访问SQL Server实例的常见问题 455 15.1.1 连接失败 455 15.1.2 用户登录失败 458 15.1.3 测试连接到SQL Server实例的方法总结 458 15.1.4 超时 459 15.1.5 单用户的问题 460 15.1.6 默认数据库问题 461 15.2 索引中的疑难解答 462 15.2.1 索引对查询条件的影响 462 15.2.2 索引对查询结果顺序的影响 465 15.2.3 索引对数据操作的影响 469 15.3 数据库日志疑难解答 470 15.3.1 影响日志文件增长的因素 471 15.3.2 从事务日志中删除日志记录 472 15.3.3 日志文件处理中的误区 472 15.3.4 合理解决日志文件增长 473 15.4 错误处理疑难解答 474 15.4.1 错误处理概述 474 15.4.2 错误处理严重程度 475 15.4.3 使用@@ERROR的疑难解答 476 15.4.4 XACT_ABORT与RAISERROR的疑难解答 477 15.5 游标处理疑难解答 479 15.5.1 全局游标与本地游标 479 15.5.2 检查指定的游标是否存在 480 15.5.3 事务提交或者回滚对游标的影响 482 15.5.4 可更新的游标 483 15.6 SQL Server处理中的其他疑难解答 484 15.6.1 并发工作负荷调控器 484 15.6.2 存储过程中的疑难解答 486 15.6.3 标识值疑难解答 488 15.6.4 全文检索疑难解答 491 15.6.5 发布与订阅中的常见问题 494 15.6.6 其他疑难解答 496
中文版SQL Server 2000开发与管理应用实例-目录: 第 1 章 安装和配置SQL Server 1 1.1 SQL Server的版本和版本选择 1 1.2 安装SQL Server的常见问题 3 1.3 如何理解实例 5 1.4 如何实现无值守安装 5 1.5 Desktop Engine 9 1.5.1 MSDE 2000概述 9 1.5.2 获取MSDE 2000 9 1.5.3 安装MSDE 2000 10 1.5.4 管理MSDE 2000 11 1.5.5 支持的并发用户数和数据库容量 12 1.6 SQL Server Service Pack 12 1.6.1 确定已安装SQL Server的版本 12 1.6.2 SQL Server Service Pack 4介绍 13 1.6.3 SQL Server Service Pack 4的内容 13 1.6.4 安装SQL Server Service Pack 4的常见问题 14 1.7 SQL Server服务 15 1.8 服务账户 15 1.9 影响SQL Server运行的设置 18 1.9.1 内存配置 18 1.9.2 数据存储 20 第 2 章 日期处理 23 2.1 日期类型概述 23 2.2 日期处理函数 25 2.2.1 日期增减函数 25 2.2.2 日期信息获取函数 26 2.2.3 日期差值计算函数 27 2.2.4 其他日期处理相关函数 27 2.3 日期选项设置 29 2.3.1 default language选项 30 2.3.2 SET DATEFIRST 31 2.3.3 SET DATEFORMAT 31 2.3.4 SET LANGUAGE 33 2.4 日期格式化与日期推算处理 34 2.4.1 日期格式化处理 34 2.4.2 日期推算处理 35 2.4.3 日期加减处理 38 2.5 日期处理实例 40 2.5.1 生日处理 40 2.5.2 生成日期列表 42 2.5.3 工作日处理 46 2.5.4 工作时间计算 49 2.6 日期处理疑难解答 51 2.6.1 日期处理中常犯的错误 51 2.6.2 常见的低效率日期处理方法 52 2.6.3 日期与数字 53 第 3 章 字符处理 55 3.1 字符类型概述 55 3.2 字符串分拆 56 3.2.1 循环截取法 57 3.2.2 动态Transact-SQL语句法 57 3.2.3 辅助表法 59 3.2.4 分拆数据到列 61 3.2.5 分拆数字数据 62 3.2.6 分拆短信数据 63 3.3 字符串合并 64 3.3.1 游标合并法 65 3.3.2 语句合并法 66 3.3.3 临时表合并法 68 3.3.4 固定行合并法 69 3.4 其他字符串处理要求 70 3.4.1 分段截取 70 3.4.2 分段更新 72 3.4.3 IP地址处理 72 3.5 字符串分拆与合并处理应用实例 74 3.5.1 字符串比较 74 3.5.2 字符串交集/并集 75 3.5.3 分拆字符串并统计 78 3.5.4 借用字符串实现无规律排序 82 3.5.5 列车车次查询 82 3.6 字符串在动态Transact-SQL语句中的应用 85 3.6.1 动态Transact-SQL语句概述 85 3.6.2 字符串在编号查询中的使用 87 3.6.3 动态参数存储过程 90 3.6.4 动态Transact-SQL语句中常见问题 92 3.7 text与ntext字段处理 96 3.7.1 text与ntext数据的存储 96 3.7.2 管理text与ntext数据 97 3.7.3 text与ntext字段的复制和合并 99 3.7.4 text与image字段转换 101 3.7.5 ntext字段的REPLACE处理 103 第 4 章 排序规则 107 4.1 字符存储编码与排序规则 107 4.1.1 字符数据的存储编码 107 4.1.2 UNICODE 108 4.1.3 排序规则 109 4.1.4 排序规则比较和排列规则 111 4.1.5 使用排序规则 112 4.1.6 如何选择字符字段类型 116 4.2 排序规则应用 117 4.2.1 拼音处理 117 4.2.2 全角与半角字符处理 120 第 5 章 编号处理 123 5.1 自动编号 123 5.1.1 IDENTITY 123 5.1.2 ROWGUIDCOL 129 5.2 手工编号 131 5.2.1 查表法 131 5.2.2 独立编号表法 135 5.2.3 随机编号 139 5.3 缺号与补号 143 5.3.1 检查缺号 143 5.3.2 补号处理 143 5.3.3 编号重排 146 5.4 编号查询 150 5.4.1 已用编号分布查询 150 5.4.2 缺号分布查询 151 5.4.3 生成已用编号和缺号分布字符串 152 5.4.4 缺勤天数统计 155 第 6 章 数据统计与汇总 159 6.1 基本查询 159 6.1.1 空(NULL)值对查询的影响 159 6.1.2 联接 161 6.1.3 UNION与UNION ALL 165 6.1.4 数据填充查询 167 6.1.5 上限与下限区间统计 169 6.1.6 随机记录查询 170 6.2 分级汇总 173 6.2.1 实现分级汇总处理 173 6.2.2 分级汇总结果的过滤 176 6.2.3 分级汇总结果显示格式处理 177 6.2.4 分级汇总结果的排序处理 179 6.3 交叉数据报表 181 6.3.1 实现原理 181 6.3.2 多列转置 184 6.3.3 动态列 185 6.3.4 动态列中的字符溢出处理 188 6.3.5 特殊的交叉报表 191 6.4 典型数据统计案例 193 6.4.1 库存明细账查询 193 6.4.2 同期及上期数据对比 197 6.4.3 动态分组统计 199 6.4.4 销售排行榜 200 第 7 章 分页处理 205 7.1 应用程序中的分页处理 205 7.2 数据库中的分页处理 207 7.2.1 使用TOP N实现分页 207 7.2.2 使用字符串 211 7.2.3 使用临时表 213 7.2.4 使用SQL Server的系统存储过程处理分页 216 7.3 特殊要求的分页处理 217 7.3.1 随机显示的分页处理 217 7.3.2 分类数据的分页处理 221 第 8 章 树形数据处理 223 8.1 单编号处理法 223 8.1.1 方法概述 223 8.1.2 逐级汇总 225 8.1.3 编码重排 226 8.1.4 调整编码规则 229 8.1.5 调整编码隶属关系 233 8.2 双编号处理法 238 8.2.1 方法概述 239 8.2.2 树形数据排序 240 8.2.3 查找子节点 244 8.2.4 查找父节点 245 8.2.5 编码校验 246 8.2.6 节点复制 249 8.2.7 节点删除 251 8.2.8 逐级汇总 253 8.3 树形数据的扩展形式 256 8.3.1 产品配件清单 256 8.3.2 公交车乘车线路查询 258 第 9 章 数据导入与导出 261 9.1 访问外部数据 261 9.1.1 链接服务器 261 9.1.2 OPENROWSET与OPENDATASOURCE 268 9.1.3 外部数据访问方法总结 270 9.2 文本文件的导入与导出 274 9.2.1 查询文本文件内容 274 9.2.2 BCP与BULK  277 9.3 导入与导出中的常见问题 285 9.3.1 访问外部数据的注意事项 285 9.3.2 使用BCP或者BULK 时的注意事项 286 9.3.3 外部数据文件位置及文件访问权限问题 287 9.4 在客户端实现SQL Server数据导入与导出处理 288 9.4.1 在Access数据库中实现与SQL Server之间的数据交换 288 9.4.2 实现客户端其他OLE DB数据源与SQL Server之间的数据交换 289 9.4.3 在客户端实现SQL Server数据导入与导出处理的一些说明 289 9.5 在数据库中存取文件 290 9.5.1 SQL Server中的文件存取方法 290 9.5.2 程序中的文件存取处理方法 292 第 10 章 作业 295 10.1 作业概述 295 10.1.1 定义作业 295 10.1.2 使用系统存储过程定义作业的常用模板 300 10.2 作业的应用 303 10.2.1 定时启用(或者停用)数据库 303 10.2.2 执行耗时的存储过程 304 10.2.3 秒级作业 305 10.3 使用作业的疑难解答 309 第 11 章 数据备份与还原 315 11.1 数据库备份与还原方法介绍 315 11.1.1 完全备份与还原 315 11.1.2 差异备份与还原 317 11.1.3 日志备份与还原 319 11.1.4 数据文件或文件组备份与还原 320 11.1.5 备份设备 321 11.1.6 数据库恢复模型对数据库备份和还原的影响 322 11.2 制订数据库备份方案 326 11.2.1 备份方案制订原则 326 11.2.2 建立数据备份方案 327 11.3 数据库备份与还原的实践应用 332 11.3.1 系统数据库的备份与还原 332 11.3.2 数据库迁移 336 11.3.3 部分数据库还原 339 11.3.4 抢救损坏数据库中的数据 341 11.3.5 将数据还原到指定时间点 343 11.3.6 将数据还原到指定标记点 345 11.3.7 同步备用服务器 346 11.4 数据备份与还原疑难解答 349 11.4.1 数据备份与还原中的常见问题 349 11.4.2 使用媒体集备份时的常见问题 354 11.4.3 数据库还原中的孤立用户问题 356 11.4.4 查询备份文件中的信息 360 第 12 章 用户定义数据类型 361 12.1 用户定义数据类型概述 361 12.1.1 创建和删除用户定义数据类型 361 12.1.2 为用户定义的数据类型绑定规则 365 12.1.3 为用户定义的数据类型绑定默认值 370 12.2 修改用户定义数据类型 373 12.2.1 修改被表引用的用户定义数据类型 373 12.2.2 修改被存储过程引用的用户定义数据类型 379 第 13 章 数据库安全 383 13.1 SQL Server的存取构架 383 13.1.1 表格格式数据流(TDS) 383 13.1.2 Net-Library与网络协议 384 13.1.3 Net-Library加密 387 13.2 用户管理 388 13.2.1 身份验证模式 388 13.2.2 登录、用户、角色和组 390 13.2.3 管理用户 395 13.3 数据文件安全 403 13.4 SQL Server安全配置 405 13.4.1 安全配置建议 405 13.4.2 使用安全套接字层(SSL)加密 408 13.5 应用程序上的安全 417 13.5.1 防止SQL注入式攻击 417 13.5.2 限制应用程序访问 418 13.5.3 不安全的扩展存储过程 419 第 14 章 系统表应用实例 423 14.1 系统对象概述 423 14.1.1 每个数据库中都存在的系统表 424 14.1.2 仅在系统数据库中存在的系统表 424 14.1.3 系统表应用中三个重要的系统存储过程 426 14.2 系统表在对象信息检索中的应用 429 14.2.1 搜索指定的对象所处的数据库 429 14.2.2 获取存储过程参数定义 432 14.2.3 搜索指定字符在哪个表的哪个字段中 435 14.2.4 非UNICODE字段改为UNICODE字段的可行性查询 438 14.2.5 字段相关对象查询 439 14.2.6 生成数据库字典 443 14.3 系统对象在处理中的应用 444 14.3.1 批量处理数据库中的对象 444 14.3.2 将所有的char、varchar改为nchar、nvarchar 445 14.3.3 标识列与普通列的相互转换 447 14.3.4 把列添加指定位置 450 14.3.5 在两个SQL Server数据库之间复制对象 451 第 15 章 SQL Server应用疑难解答 455 15.1 访问SQL Server实例的常见问题 455 15.1.1 连接失败 455 15.1.2 用户登录失败 458 15.1.3 测试连接到SQL Server实例的方法总结 458 15.1.4 超时 459 15.1.5 单用户的问题 460 15.1.6 默认数据库问题 461 15.2 索引中的疑难解答 462 15.2.1 索引对查询条件的影响 462 15.2.2 索引对查询结果顺序的影响 465 15.2.3 索引对数据操作的影响 469 15.3 数据库日志疑难解答 470 15.3.1 影响日志文件增长的因素 471 15.3.2 从事务日志中删除日志记录 472 15.3.3 日志文件处理中的误区 472 15.3.4 合理解决日志文件增长 473 15.4 错误处理疑难解答 474 15.4.1 错误处理概述 474 15.4.2 错误处理严重程度 475 15.4.3 使用@@ERROR的疑难解答 476 15.4.4 XACT_ABORT与RAISERROR的疑难解答 477 15.5 游标处理疑难解答 479 15.5.1 全局游标与本地游标 479 15.5.2 检查指定的游标是否存在 480 15.5.3 事务提交或者回滚对游标的影响 482 15.5.4 可更新的游标 483 15.6 SQL Server处理中的其他疑难解答 484 15.6.1 并发工作负荷调控器 484 15.6.2 存储过程中的疑难解答 486 15.6.3 标识值疑难解答 488 15.6.4 全文检索疑难解答 491 15.6.5 发布与订阅中的常见问题 494 15.6.6 其他疑难解答 496 中文版SQL Server 2000开发与管理应用实例-简介: 《中文版SQL Server 2000开发与管理应用实例》 本书全面系统地介绍了SQL Server开发和管理的应用技术,涉及安装和配置SQL Server、日期处理、字符处理、排序规则、编号处理、数据统计与汇总、分页处理、树形数据处理、数据导入与导出、作业、数据备份与还原、用户定义数据类型、数据库安全、系统表应用实例、SQL Server应用疑难解答等内容。本书不但融合了作者在使用SQL Server 2000过程中遇到的各种常见问题和应用案例,还总结了作者几年来在CSDN 社区SQL Server版所解决的大量问题,面向实际项目需求,涉及不同类型的应用,能够多角度地引导读者学习相关知识。而且针对各类问题,提供了详细的操作步骤和解决思路,具有很强的实用性和可操作性。
*修正 +增加 -去除 ^调整 1.2.9 *修正查看我的表中编辑、删除用户视图、存储过程、用户函数时列表为空时的报错; +在查看我的表中增加导出表结构、索引、视图、存储过程、用户函数为SQL语句的功能。 1.2.8 ^允许修改密码处使用空密码,以方便一些要求空密码的软件连接; *修正win10下查询分析器缺少动态库和语法高亮未激活的问题; +增加了大容量数据的存取支持,增加bcp命令,允许在SQL中使用bcp命令进行大数据的导入导出; +增加BULK INSERT、OPENROWSET这些数据批处理SQL命令的支持。 示例:--OPENROWSET SELECT CustomerID, CompanyName FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'C:\Program Files\Microsoft Office\OFFICE11\SAMPLES\Northwind.mdb'; 'admin';'',Customers); 这种通过OPENROWSET,把access,excell,cvs,txt都变成一个表来取。 示例:--BULK INSERT fmt由bcp生成 BULK INSERT xxxTable FROM 'c:\xxx.csv' WITH (FORMATFILE = 'fieldMap.fmt', BATCHSIZE=10000) 1.2.7 +配置中添加Debug条件项,其值非0,则在启动时不会锁定面板,便于程序员使用; +计划任务中备份部分增加对备份文件个数的定义,允许保留5~99个备份,旧的备份自动删除; +托盘区菜单添加“查找”项,用来快速打开程序所在目录,方便开启多个副本的用户查找对应目录; ^数据库页右键菜单启动事件探查器时,自动加载标准模板,方便使用。 1.2.6 *还原数据库时,修正输入库名时点取消后没有中止还原等错误; +查询分析器添加语法高亮支持; *修正关闭服务时,有机率卡顿的现象,进行了优化处理; +在操作系统关闭时,自动停止服务,防止数据丢失。 1.2.5 +数据库页增加查看我的表功能菜单项,可管理视图、存储过程及自定义函数和查看表结构等; ^部分菜单及按钮增加图标,增加美观度; +内存管理页增加AWE开关,以解决部分电脑内存不足造成运行缓慢的问题,AWE功能也占内存。 1.2.4 ^选择开机启动时,会自动删除与软件关联的注册表项,防止变更实例名造成注册表残留,对于已登记开机启动,又直接删除了软件的,请手工删除注册表Run项中的残留; *修正部分win7系统下无法正常解锁的问题(系统无法访问127.0.0.1造成); *修正部分文字描述内容错误(漏字或多打字等)。 1.2.3 +数据库页面,集成外部工具“查询分析器”与“事件探查器”,系SQL自带程序,方便使用; -删除内置“查询分析”功能页; ^数据库页面,密码修改,允许任意字符,不再限制只能为0~9a~z了,但不允许为空; ^数据库内核升级至8.00.2305,开启AWE,支持大内存(超2G)及修复漏洞; +增加SQL Tips页,记录一些常用的SQL语句,方便查阅; ^标题栏解锁界面和密码修改页面进行调整,增加多语言支持。 1.2.2 *附加数据库时,修正输入库名时点取消后没有中止附加等错误; +增加面板锁,点击左上角的金锁,输入SA用户密码,输入正确则打开面板,否则隐藏面板,不限制开、关服务; +数据库页面,右键菜单增加打开文件目录,方便用户操作; +增加内存管理页,控制SQL Server内存占用,与企业管理器相同。 1.2.1 ^未开启服务时,关闭窗口会退出程序,开启服务时,关窗窗口则是隐藏; *附加数据库时,修正目标目录与源目录相同时无法附加的问题。 1.2.0 +增加托盘区菜单项“重启”,方便重启SQL服务; ^附加数据库文件时,将移动改为复制,原文件不会被删除; +计划任务在备份数据库后,自动清除旧备份,只保留最后5个备份(按文件,不按时间); *修正计划任务无法正确执行的问题,由皮肤引起的。 1.1.9 +增加win8的支持,增加皮肤以美化界面; +增加查询分析器,方便使用SQL操作数据库; +增加简体、繁体语言切换,方便港台及深圳用户使用。 1.1.8 ^计划任务中执行SQL语句变更为执行SQL脚本文件,支持GO分隔,方便执行复杂任务。 1.1.7 +配置文件中增加AppTitle字符串项,如果有输入内容,则在启动时会以该项的值为窗口标题;繁体用户请将配置文件保存为Unicode格式; *修正没有清除默认实

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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