环境

  WIN平台IIS服务器

    经常出现于ASPX页面

汇总

1.权限问题

  出现场景 : 基于ACCESS数据库

    原因解析 :

    1.首先需要排除自身问题,例如建表使用关键字,格式错误,插入数据与数据库类型不匹配等等

    2.TEMP权限检查,当数据写入数据库的时候需要获取当前服务器权限只有设置了IIS的temp写入权限才能进行数据写入

  解决办法 :

    第一种解决方法:使用Ms Access里的“工具->数据库实用工具->压缩和修复数据库”来修复db/global.asa。如果修复后还是出错,请查看db目录下是否有global.dbl文件,如果有请删除,如无法删除请结束服务器w3wp.exe进程(win2003)或Aspnet_wp.exe进程(win2000)后再删除。
    说明:该种方法适用于数据库设置错误问题导致数据写入失败,比较容易发现问题所在

    第二种解决办法:
    设置Internet信息服务(IIS)管理器中的应用程序池,更改网站的程序池属性见下图:

    

    调整后即可解决问题。
    说明:标准的IIS服务器权限设置问题,一般企业有运维部门专门维护通常不会出现该情况

    第三种解决方法:
    其实只要很简单的几步:
    开始。。。运行。。。regsvr32 jscript.dll开始。。。
    运行。。。regsvr32 vbscript.dll开始。。。
    运行。。。iisreset

    说明:简单百度了一下 REGSVR32为系统注册与反注册工具,该工具主要用于修复系统文件比如上面所指regsvr32 jscript.dll 修复的是js文件本机注册问题相当于重新修复引用的概念(不确定)它里面包含很多工具具体自行查看,最后一句IISRESET 重启iis服务

  2.系统服务问题

    出现场景:各种文件上传,EXCEL WORD 等等

    原因分析:win平台下上传文件大多数分为两种 OLDB 与NPOI

      OLDB:当文件上传到服务器的时候服务器需要调用本身的解析器去读取当前文件通过链接字符串形式获取到数据从而反馈DataSet或者 DataTable数据,分析底层代码如下  

    

    当进行链接时会直接抛出异常,当然上述截图只是测试用

  解决办法:

    首先,如果该情况发生在生产服务器上优先采用NPOI方式上传不影响正常业务,其次发现问题跟踪后对比服务器配置,未更改情况下对比win服务确定是否由于更新导致某些服务异常,最后尝试解决。

  错误分析:

  

异常详细信息: System.Data.OleDb.OleDbException: 未指定的错误 

[OleDbException (0x80004005): 未指定的错误] System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection) + System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) + System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup) 

网上的解决方案很多,正确答案原来如此: 

在连接数据库的时候是这么做的: 

public static OleDbConnection getxwdtConn() 

{ 

string connectionstring = WebConfigurationManager.ConnectionStrings["xwdtconnection"].ConnectionString; 

OleDbConnection con = new OleDbConnection(connectionstring); 

return con; 

} 

在MS sql或Access,中都不会有问题,调试也不会有问题。 

发布之后会有如上错误提示。 

是因为数据库的操作中肯定有oledbdatadapter,或dataset,并且使用了con.open()和con.close(),。 

具体解决只需把open 和close删掉就可以了,因为用的是断开式连接。 

如果改用静态变量的做法

2018年4月25日更新

win服务器发生该问题后,由于Oldb反馈为null 改为npoi 方式上传 后更新npoi系统引用文件莫名其妙修复................若遇到该问题不妨一试,记得对比win服务

    

最新文章

  1. PowerDesigner15.1给自定义架构表字段添加MS_Description出错
  2. Windows计划任务执行时不显示窗口的问题
  3. charles抓包的使用教程
  4. linux 下安装gsl
  5. ios开发之AppDelegate
  6. Python之随机数
  7. bzoj 3505 [Cqoi2014]数三角形(组合计数)
  8. codeforce 605BE. Freelancer's Dreams
  9. nyoj 14 会场安排问题
  10. 【Cocos2d-X开发学习笔记】第09期:渲染框架之菜单类(CCMenu)的使用
  11. 推荐一本好书给即将走入工作的程序员and程序媴
  12. 前端UI
  13. python赋值和拷贝----一切皆对象,参数皆引用
  14. 分享在MVC3.0中使用jQuery DataTable 插件
  15. 监控glusterfs
  16. C/C++中的内存对齐问题和pragma pack命令详解
  17. 20155205 信息安全技术第二次实验 Windows口令破解
  18. python进程join()函数理解
  19. JS单例模式在工作中的使用
  20. xpath简单应用

热门文章

  1. Drools7 Hello Wrold 入门详细步骤--系列01课
  2. Golang/Go goroutine调度器原理/实现【原】
  3. 2019 房多多java面试笔试题 (含面试题解析)
  4. 【转载】C#中List集合使用Clear方法清空集合
  5. 两种方法实现在HTML页面加载完毕后运行JS
  6. property Alternative forms propretie
  7. leetcode 学习心得 (1) (24~300)
  8. Windows安装MySQL5.7教程
  9. MySQL 5.7开始支持JSON,那还有必要使用MongoDB存JSON吗?请列出你的观点/理由。
  10. Oracle数据库插入过程中特殊符号