Microsoft SQL Server,error: 229 解决方案

在网上看了一下相关回答,都不详细,
问题的发生是把添加权限把,db_denydatareader的复选框勾上了。db_denydatareader是拒绝访问。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
此时,如果你想去掉这个复选框,只有换另外一个角色登录,我用的是sa账号
在数据库里相应的用户权限中,把db_denydatareader的复选框的勾去掉。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SP操作Excel技术总结 目录 一、 环境配置 二、 ASP对Excel的基本操作 三、 ASP操作Excel生成数据表 四、 ASP操作Excel生成Chart图 五、 服务器端Excel文件浏览、下载、删除方案 六、 附录 正文 一、 环境配置 服务器端的环境配置从参考资料上看,微软系列的配置应该都行,即: 1.Win9x+PWS+Office 2.Win2000 Professional+PWS+Office 3.Win2000 Server+IIS+Office 目前笔者测试成功的环境是后二者。Office的版本没有特殊要求,考虑到客户机配置的不确定性和下兼容特性,建议服务器端Office版本不要太高,以防止客户机下载后无法正确显示。 服务器端环境配置还有两个偶然的发现是: 1. 笔者开发机器上原来装有金山的WPS2002,结果Excel对象创建始终出现问题,卸载WPS2002后,错误消失。 2. 笔者开发ASP代码喜欢用FrontPage,结果发现如果FrontPage打开(服务器端),对象创建出现不稳定现象,时而成功时而不成功。扩展考察后发现,Office系列的软件如果在服务器端运行,则Excel对象的创建很难成功。 服务器端还必须要设置的一点是COM组件的操作权限。在命令行键入“DCOMCNFG”,则进入COM组件配置界面,选择Microsoft Excel后点击属性按钮,将三个单选项一律选择自定义,编辑中将Everyone加入所有权限。保存完毕后重新启动服务器。 客户端的环境配置没发现什么特别讲究的地方,只要装有Office和IE即可,版本通用的好象都可以。 二、 ASP对Excel的基本操作 1、 建立Excel对象 set objExcelApp = CreateObject("Excel.Application") objExcelApp.DisplayAlerts = false 不显示警告 objExcelApp.Application.Visible = false 不显示界面 2、 新建Excel文件 objExcelApp.WorkBooks.add set objExcelBook = objExcelApp.ActiveWorkBook set objExcelSheets = objExcelBook.Worksheets set objExcelSheet = objExcelBook.Sheets(1) 3、 读取已有Excel文件 strAddr = Server.MapPath(".") objExcelApp.WorkBooks.Open(strAddr & "\Templet\Table.xls") set objExcelBook = objExcelApp.ActiveWorkBook set objExcelSheets = objExcelBook.Worksheets set objExcelSheet = objExcelBook.Sheets(1) 4、 另存Excel文件 objExcelBook.SaveAs strAddr & "\Temp\Table.xls" 5、 保存Excel文件 objExcelBook.Save (笔者测试时保存成功,页面报错。) 6、 退出Excel操作 objExcelApp.Quit 一定要退出 set objExcelApp = Nothing 三、 ASP操作Excel生成数据表 1、 在一个范围内插入数据 objExcelSheet.Range("B3:k3").Value = Array("67", "87", "5", "9", "7", "45", "45", "54", "54", "10") 2、 在一个单元格内插入数据 objExcelSheet.Cells(3,1).Value="Internet Explorer" 3、 选中一个范围 4、 单元格左边画粗线条 5、 单元格右边画粗线条 6、 单元格上边画粗线条 7、 单元格下边画粗线条 8、 单元格设定背景色 9、 合并单元格 10、 插入行 11、 插入列 四、 ASP操作Excel生成Chart图 1、 创建Chart图 objExcelApp.Charts.Add 2、 设定Chart图种类 objExcelApp.ActiveChart.ChartType = 97 注:二维折线图,4;二维饼图,5;二维柱形图,51 3、 设定Chart图标题 objExcelApp.ActiveChart.HasTitle = True objExcelApp.ActiveChart.ChartTitle.Text = "A test Chart" 4、 通过表格数据设定图形 objExcelApp.ActiveChart.SetSourceData objExcelSheet.Range("A1:k5"),1 5、 直接设定图形数据(推荐) objExcelApp.ActiveChart.SeriesCollection.NewSeries objExcelApp.ActiveChart.SeriesCollection(1).Name = "=""333""" objExcelApp.ActiveChart.SeriesCollection(1).Values = "={1,4,5,6,2}" 6、 绑定Chart图 objExcelApp.ActiveChart.Location 1 7、 显示数据表 objExcelApp.ActiveChart.HasDataTable = True 8、 显示图例 objExcelApp.ActiveChart.DataTable.ShowLegendKey = True 五、 服务器端Excel文件浏览、下载、删除方案 浏览的解决方法很多,“Location.href=”,“Navigate”,“Response.Redirect”都可以实现,建议用客户端的方法,原因是给服务器更多的时间生成Excel文件。 下载的实现要麻烦一些。用网上现成的服务器端下载组件或自己定制开发一个组件是比较好的方案。另外一种方法是在客户端操作Excel组件,由客户端操作服务器端Excel文件另存至客户端。这种方法要求客户端开放不安全ActiveX控件的操作权限,考虑到通知每个客户将服务器设置为可信站点的麻烦程度建议还是用第一个方法比较省事。 删除方案由三部分组成: A: 同一用户生成的Excel文件用同一个文件名,文件名可用用户ID号或SessionID号等可确信不重复字符串组成。这样新文件生成时自动覆盖上一文件。 B: 在Global.asa文件中设置Session_onEnd事件激发时,删除这个用户的Excel暂存文件。 C: 在Global.asa文件中设置Application_onStart事件激发时,删除暂存目录下的所有文件。 注:建议目录结构 \Src 代码目录 \Templet 模板目录 \Temp 暂存目录 六、 附录 出错时Excel出现的死进程出现是一件很头疼的事情。在每个文件前加上“On Error Resume Next”将有助于改善这种情况,因为它会不管文件是否产生错误都坚持执行到“Application.Quit”,保证每次程序执行完不留下死进程。 补充两点: 1、其他Excel具体操作可以通过录制宏来解决。 2、服务器端打开SQL企业管理器也会产生问题。 New Document
SQLSERVER2008的系统数据库迁移 意义: 就是从C盘移动其他分区 从这个硬盘移动其他硬盘,数据库还能启动 为一般数据库的迁移做准备 系统数据库迁移主要迁移以下数据库 第一类:tempdb,model和msdb 第二类:master,mssqlsystemresource 具体的迁移步骤: 一、对于master数据库 默认SQL Server安装完成后,SQL Server的4个系统数据库(Master,Model,MSDB和TempDB)都会被自动安放在安装路径 下,也就是系统盘的Program Files文件夹下。所带来的问题就是绝大多数数据库服务器为了同时照顾到性能,成本和 高可用性这三个方面,都会将系统安装在一个Raid1阵列上,通常这个Raid1阵列还不一 定会用上15K的SAS,有的只是用10K的SAS,更有甚者,为了成本,装2个7.2K的SATA也就 完事了。再加上Raid1阵列本身就是一种读取性能非常强,但是写入性能相当差的阵列形 式,所以,对于系统数据库,尤其是对TempDB数据库来说,是非常不利的,也肯定会对 整个SQLServer的性能造成影响。所以将系统数据库迁移到性能更加高的阵列上,是一个 解决硬件性能瓶颈的基础解决方案。 下面就像大家介绍一下如何将系统数据库迁移到其他分区上(以Microsoft SQL Server 2008 R2为例): 1. 首先迁移master数据库,master数据库是整个SQL Server实例的核心,所有的设置都存放在master数据库里,如果master数据库出现问 题,整个实例都将瘫痪。首先打开SQL Server Configuration Manager,在左边的列表框中选中SQL Server Services节点,然后在右边的列表框中找到需要迁移系统数据库的实例的那个SQL Server服务,比如说SQLServer(MSSQLSERVER),停止这个实例的服务(不会停的去 菜场买块豆腐撞死算了),然后右键单击,选中最底下的"Properties",并且切换到 "Advanced"标签,如下图所示: 2. 看到"Startup Parameters"了吧,这里的参数就是需要我们更改的。如下图所示: 把这段字符整理一下就是这样: -dC:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA\master.mdf; -eC:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG; -lC:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA\mastlog.ldf 基本上看出来了吧,"-d"后面的就是master数据库数据文件的位置,"-e"是该SQL Server实例的错误日志所在的位置,至于"- l"就是master数据库日志文件所在的位置了。修改数据文件和日志文件的路径到适当 为位置,错误日志的位置一般不需要做变更,例如将数据文件存放到D盘的SQLData文 件夹下,日志文件存放到E盘的SQLLog文件夹下,则参数如下: -dD:\SQLData\master.mdf;-eC:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG;-lE:\SQLLog\mastlog.ldf 点击"OK"保存并关闭对话框。 3. 然后需要做的是将master数据库的数据文件和日志文件剪切到刚刚"Startup Parameters"定义的路径中,接着就可以启动该实例SQL Server服务了。 注意,此时可能仍然会有出现SQL Server服务无法启动的情况,确保刚刚配置准确无误,然后就是NTFS权限的事情了, 如果你不是用Local System来启动SQL Server服务,那么更改完存放路径后,你需要给新的盘符或文件夹相应的权限,这样 服务才能启动,建议直接给相应账号"Full Control"的权限,至于为什么嘛,那是经验,原因得要问Microsoft了。 好了,到这里,master数据库就算迁移完成了。 对于empdb,model和msdb 1、修改文件 路径 1、修改文件 路径 --Move tempdb ALTER DATABASE tempdb MODIFY FILE(NAME='tempdev',FILENAME='D:\Database\tempdb.mdf'); ALTER DATABASE tempdb

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值