执行transact-sql 语句或批处理时发生异常。

执行transact-sql 语句或批处理时发生异常。,第1张

执行transact-sql 语句或批处理时发生异常是设置错误造成的,解决方法为:

1、打开HeidiSQL,选择要 *** 作的服务器连接,然后点击打开。

2、此时进入数据服务器管理界面。

3、点击数据库实例,如store数据库。

4、此时显示数据库基本信息。

5、点击查询标签页。

6、输入sql语句,若是多条语句就分号隔开。

7、点击执行按钮。

8、此时会在下方显示执行结果。

通过使用sql命令:

from

disk

=

'e:\ahbbsqlbak\ahbb_net12-14ambak'

得到下面结果:

消息

3241,级别

16,状态

0,第

1

设备

'e:\ahbbsqlbak\ahbb_net12-14ambak'

上的媒体簇的结构不正确。sql

server

无法处理此媒体簇。

消息

3013,级别

16,状态

1,第

1

verify

database

正在异常终止。

这个数据库备份文件本来是存储在移动硬盘中,因为移动硬盘损坏,找的数据恢复公司还原数据库文件,但是现在还原数据库就是提示:

上的媒体簇的结构不正确。sql

server

无法处理此媒体簇。

请求有遇到过的高手帮忙解决不胜感激!

前言

实现磁带备份数据的功能有两方面的困难 首先 MS SQL Server(以下简称SQL)所提供的数据库的整体备份及恢复功能不能直接满足本系统要求的数据滚动备份 其次 需要解决如何在Web环境下实现磁带数据备份功能

利用SQL中现有的数据库备份和恢复的命令以及NT中的IDC技术 实现SQL数据库中数据滚动备份到磁带的功能 本系统所实现功能既能保证近一段时间的数据总在数据库中 又能保证系统管理员可随时恢复备份数据 供用户查询 本文所实现的功能具有普遍的意义 特别适用于中小型企业开发基于Intranet技术的管理信息系统

磁带数据备份及恢复的工作过程

为了充分利用SQL中现有的数据库备份与恢复功能 以降低实现磁带数据备份的代价 我们特地在硬盘上建立了一个与磁带的容量相当的数据库 我们称之为桥数据库 如FJJDBBK 可方便地实现数据的滚动备份了 其工作过程是 管理员把某月的数据从主数据库移到桥数据库中;然后用SQL的备份功能把桥数据库备份到磁带上 用户需要查看磁带中的历史数据时 系统又用SQL的恢复备份功能把磁带中的数据恢复到桥数据库中 用户直接在桥数据库中查阅历史数据 此外 在数据备份到磁带后 在进行下次数据备份前 必须清空备份数据库中的数据 为了提高工作效率 我们建立了一个空白桥数据库(没有数据时的桥数据库) 每次进行磁带备份数据之前 就用此空白数据库恢复桥数据库 空白数据库文件建立后要保存好 不可随便删除

建立该备份空白数据库过程为 先建立主数据库FJJDBBK 然后在 FJJDBBK中建立与当前数据库中一样结构的表 建立这些表结构时最好的方法是先用Enterprise Manager的Object菜单下的Generate SQL Scripts功能生成建立这些表的Scripts文件 然后选择FJJDBBK数据库 用Enterprise Manager的Tools菜单下的Query Analyzer功能运行该文件 就建立了这些所需表 显然 这时的FJJDBBK为空数据库 我们再利用备份命令或运行Tools菜单下的 Backup/Restore功能备份该空数据库

磁带数据备份及恢复的实现

在NT中 Web服务器IIS(Internet Information Server)提供了完善的访问SQL的技术IDC IDC是一个DLL文件(>

重启后无权限打开数据库,可能是因为数据库文件被锁定或权限设置不正确。您可以尝试以下几个步骤解决这个问题:

1 检查数据库文件的权限设置:在win2012上,可以右键单击数据库文件,选择属性,然后转到安全选项卡,查看权限设置是否正确。如果缺少必要的权限,需要添加。

2 检查数据库文件是否被锁定:在win2012上,可以使用Process Explorer工具检查数据库文件是否被任何进程占用。如果数据库文件被其他进程占用,则需要关闭这些进程。

3 手动启动数据库服务:如果数据库服务没有启动,您可以手动启动它。可以按下Win键+R键,打开运行框,输入“servicesmsc”,打开服务管理器,寻找与您的数据库名称相匹配的服务,然后右键单击并选择启动。

4 尝试通过SQL Server Management Studio打开数据库:打开SQL Server Management Studio应用程序,选择您的服务器,并使用Windows身份验证或者SQL登录方式登录,然后在处理器中选择“新建查询”,在查询中输入"USE mydatabase" (mydatabase是您要打开的数据库名),运行查询。

如果以上 *** 作都不能解决问题,建议您考虑联系数据库管理员或微软支持。

1、打开企业管理器,右键单击你需要还原到的“数据库”节点,选择“所有任务”-“还原数据库”。

2、在“还原数据库”对话框的“常规”选项卡中选择“从设备”。

3、“还原自”-“磁盘”-“添加”,定位至备份文件bak所在目录,选择该文件。依次确定退出。

4、切换至“选项”选项卡查看“将数据库文件还原为”下的路径当前是否存在且路径,如果路径不存在,则还原出错。同时如果路径下存在同名文件,需选中“在现有数据库强制还原”完成 *** 作。

四方财务软件错误代码5通常是指应用程序无法访问指定的目录或文件的错误。可能的原因是权限设置或磁盘问题。以下是几种可能的解决方案:

1 尝试以管理员身份运行应用程序:右键单击四方财务软件的快捷方式或可执行文件,选择“以管理员身份运行”,然后再次尝试打开应用程序。

2 检查文件或目录的拥有者和权限设置:您可以检查四方财务软件安装文件或数据文件夹的拥有者和权限设置是否正确。确保用户具有读取和写入文件或目录的权限。

3 检查磁盘错误:如果出现磁盘错误,可以使用Windows系统自带的磁盘检查工具进行修复。右键单击计算机图标,选择“属性”> “工具”,然后单击“检查”以查找和修复磁盘错误。

4 关闭安全软件和防火墙:安全软件和防火墙可能会阻止应用程序的访问,您可以尝试暂时关闭安全软件和防火墙,然后再次尝试打开应用程序。

5 重新安装应用程序:如果所有方法都无法解决这个问题,可以尝试卸载并重新安装四方财务软件。

以上是几种可能解决此错误代码5的方案,您可以尝试这些方法,以便于解决此问题。

事情的起因 昨天 系统管理员告诉我 我们一个内部应用数据库所在的磁盘空间不足了 我注意到数据库事件日志文件XXX_Data ldf文件已经增长到了 GB 于是我决意缩小这个日志文件 经过收缩数据库等 *** 作未果后 我犯了一个自进入行业以来的最大最愚蠢的错误:竟然误删除了这个日志文件!后来我看到所有论及数据库恢复的文章上都说道: 无论如何都要保证数据库日志文件存在 它至关重要 甚至微软甚至有一篇KB文章讲如何只靠日志文件恢复数据库的 我真是不知道我那时候是怎么想的!这下子坏了!这个数据库连不上了 企业管理器在它的旁边写着 (置疑) 而且最要命的 这个数据库从来没有备份了 我唯一找得到的是迁移半年前的另外一个数据库服务器 应用倒是能用了 但是少了许多记录 表和存储过程 真希望这只是一场噩梦!数据库日志文件的误删或别的原因引起数据库日志的损坏 方法一 新建一个同名的数据库 再停掉sql server(注意不要分离数据库) 用原数据库的数据文件覆盖掉这个新建的数据库 再重启sql server 此时打开企业管理器时会出现置疑 先不管 执行下面的语句(注意修改其中的数据库名) 完成后一般就可以访问数据库中的数据了 这时 数据库本身一般还要问题 解决办法是 利用数据库的脚本创建一个新的数据库 并将数据导进去就行了 USE MASTERGOSP_CONFIGURE ALLOW UPDATES RECONFIGURE WITH OVERRIDEGOUPDATE SYSDATABASES SET STATUS = WHERE NAME= 置疑的数据库名 Gosp_dboption 置疑的数据库名 single user true GoDBCC CHECKDB( 置疑的数据库名 )Goupdate sysdatabases set status = where name= 置疑的数据库名 Gosp_configure allow updates reconfigure with overrideGosp_dboption 置疑的数据库名 single user false Go 方法二 事情的起因昨天 系统管理员告诉我 我们一个内部应用数据库所在的磁盘空间不足了 我注意到数据库事件日志文件XXX_Data ldf文件已经增长到了 GB 于是我决意缩小这个日志文件 经过收缩数据库等 *** 作未果后 我犯了一个自进入行业以来的最大最愚蠢的错误:竟然误删除了这个日志文件!后来我看到所有论及数据库恢复的文章上都说道: 无论如何都要保证数据库日志文件存在 它至关重要 甚至微软甚至有一篇KB文章讲如何只靠日志文件恢复数据库的 我真是不知道我那时候是怎么想的!这下子坏了!这个数据库连不上了 企业管理器在它的旁边写着 (置疑) 而且最要命的 这个数据库从来没有备份了 我唯一找得到的是迁移半年前的另外一个数据库服务器 应用倒是能用了 但是少了许多记录 表和存储过程 真希望这只是一场噩梦!没有效果的恢复步骤附加数据库_Rambo讲过被删除日志文件中不存在活动日志时 可以这么做来恢复: 分离被置疑的数据库 可以使用sp_detach_db 附加数据库 可以使用sp_attach_single_file_db但是 很遗憾 执行之后 SQL Server质疑数据文件和日志文件不符 所以无法附加数据库数据文件 DTS数据导出不行 无法读取XXX数据库 DTS Wizard报告说 初始化上下文发生错误 紧急模式怡红公子讲过没有日志用于恢复时 可以这么做: 把数据库设置为emergency mode 重新建立一个log文件 把SQL Server 重新启动一下 把应用数据库设置成单用户模式 做DBCC CHECKDB 如果没有什么大问题就可以把数据库状态改回去了 记得别忘了把系统表的修改选项关掉我实践了一下 把应用数据库的数据文件移走 重新建立一个同名的数据库XXX 然后停掉SQL服务 把原来的数据文件再覆盖回来 之后 按照怡红公子的步骤走 但是 也很遗憾 除了第 步之外 其他步骤执行非常成功 可惜 重启SQL Server之后 这个应用数据库仍然是置疑!不过 让我欣慰的是 这么做之后 倒是能够Select数据了 让我大出一口气 只不过 组件使用数据库时 报告说: 发生错误: 未能在数据库 XXX 中运行 BEGIN TRANSACTION 因为该数据库处于回避恢复模式 最终成功恢复的全部步骤设置数据库为紧急模式停掉SQL Server服务;把应用数据库的数据文件XXX_Data mdf移走;重新建立一个同名的数据库XXX;停掉SQL服务;把原来的数据文件再覆盖回来;运行以下语句 把该数据库设置为紧急模式;运行 Use MasterGosp_configure allow updates reconfigure with overrideGo 执行结果:DBCC 执行完毕 如果 DBCC 输出了错误信息 请与系统管理员联系 已将配置选项 allow updates 从 改为 请运行 RECONFIGURE 语句以安装 接着运行 update sysdatabases set status = where name = XXX 执行结果:(所影响的行数为 行)重启SQL Server服务;运行以下语句 把应用数据库设置为Single User模式;运行 sp_dboption XXX single user true 执行结果:命令已成功完成 ü 做DBCC CHECKDB;运行 DBCC CHECKDB( XXX ) 执行结果: XXX 的 DBCC 结果 sysobjects 的 DBCC 结果 对象 sysobjects 有 行 这些行位于 页中 sysindexes 的 DBCC 结果 对象 sysindexes 有 行 这些行位于 页中 syscolumns 的 DBCC 结果 ………ü 运行以下语句把系统表的修改选项关掉;运行 sp_resetstatus XXX gosp_configure allow updates reconfigure with overrideGo 执行结果:在 sysdatabases 中更新数据库 XXX 的条目之前 模式 = 状态 = (状态 suspect_bit = ) 没有更新 sysdatabases 中的任何行 因为已正确地重置了模式和状态 没有错误 未进行任何更改 DBCC 执行完毕 如果 DBCC 输出了错误信息 请与系统管理员联系 已将配置选项 allow updates 从 改为 请运行 RECONFIGURE 语句以安装 重新建立另外一个数据库XXX Lost;DTS导出向导运行DTS导出向导;复制源选择EmergencyMode的数据库XXX 导入到XXX Lost;选择 在SQL Server数据库之间复制对象和数据 试了多次 好像不行 只是复制过来了所有表结构 但是没有数据 也没有视图和存储过程 而且DTS向导最后报告复制失败;所以最后选择 从源数据库复制表和视图 但是后来发现 这样总是只能复制一部分表记录;于是选择 用一条查询指定要传输的数据 缺哪个表记录 就导哪个;视图和存储过程是执行SQL语句添加的 维护Sql Server中表的索引在使用和创建数据库索引中经常会碰到一些问题 在这里可以采用一些另类的方法解决… 第一步:查看是否需要维护 查看扫描密度/Scan Density是否为 %declare @table_id intset @table_id=object_id( 表名 )dbcc showcontig(@table_id) 第二步:重构表索引dbcc dbreindex( 表名 pk_索引名 ) 重做第一步 如发现扫描密度/Scan Density还是小于 %则重构表的所有索引 并不一定能达 % dbcc dbreindex( 表名 ) lishixinzhi/Article/program/SQLServer/201311/22169

以上就是关于执行transact-sql 语句或批处理时发生异常。全部的内容,包括:执行transact-sql 语句或批处理时发生异常。、还原数据库时 设备上的媒体簇结构不正确、Web环境下的SQL Server数据备份与恢复[1]等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10194527.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存