C# 连接数据库时 系统找不到指定的文件。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 连接数据库时 系统找不到指定的文件。相关的知识,希望对你有一定的参考价值。
是目标框架的原因吗?
缺少dll .net core 版本 有点问题 引用的dll 不会自动输出到项目目录下去,需要手动拷过去,或者在项目里指定复制到项目目录 ,你看看你的mysql是不是引用了第三方的库 并且在输出目录下没有生成这个dll ,好像在vs2017 15.3以后就没有这个问题了 参考技术B 在你新建脚本的时候 左侧有.netCore控制台程序 也有 .framework控制台程序
如果要连接数据库 就用.framework 因为他的version版本和MySQL的版本匹配
如果用.netCore 目标框架的版本只到2.1 .frameWork目标框架版本到了4.7 MySQL要求4.0以上 参考技术C A、去下个XX.dll,下好后打开系统盘,找到windows文件夹,打开后找到system32打开,把XX.dlll放进去。这个DLL上百度一下就有得下的了。
B、打开腾讯电脑管家的电脑诊所之后,搜缺失的dll文件,会自动出来,点立即修复。重启电脑后就可以了。 参考技术D 缺少dll .net core 版本 有点问题 引用的dll 不会自动输出到项目目录下去,需要手动拷过去,或者在项目里指定复制到项目目录 ,你看看你的mysql是不是引用了第三方的库 并且在输出目录下没有生成这个dll ,好像在vs2017 15.3以后就没有这个问题了追问
有的
![](https://image.cha138.com/20230325/e788c92e94ed4c40afcc8533fa9a9e5c.jpg)
你看输出目录下不是项目目录
比如debug
也就是exe的同级目录下
第5个回答 2019-05-06 怎么会引用system.drawing呢,这个应该是控制台应用程序吧,你把引用的system.drawing和windows.form之类的删掉试试。追问引用的是MySql.Data.dll
![](https://image.cha138.com/20230325/0622b9a3bd23450ea735506930ec0e3b.jpg)
MySql.Data.dll需要对应的.net版本才能运行,你的.net版本太老了,才2.1。
一般来说,下载的时候,会把不同版本的MySql.Data.dll放到不同的文件夹2.0,4.0,4.5等等,那个就是对应的版本。
我MySql.Data.dll是4.5的。 应该要 .net framework4.5的目标框架 , 我下载了 .net framework4.5 但显示已安装
目标框架只有.net core 没有 .net framework
![](https://image.cha138.com/20230325/87ed5f70ca604599bc0f6524ec1ee233.jpg)
你换vs2015或vs2017试试
至少要2012才能支持.net4.5吧
VS2017:工具 -> 获取工具和功能 -> 右边安装.net桌面开发 .NET 4 ~ 4.6 开发工具
![](https://image.cha138.com/20230325/94657816365a447c9c068ccb2921e920.jpg)
SQL Server连接本地数据库时系统找不到指定的文件,配置管理器无法连接到 WMI 提供程序
SQL Server连接本地数据库时的异常
作者:coder小码(coderxm)
最近想学点SQL server,几个月前下过,可中间电脑换过机名,重装过系统(电脑不是键盘一下没反应就是鼠标没反应),充分暴露出windows的不稳定。这告诉我们:要早点和windows离婚吧,换一个漂亮又好用点的linux系统(关键是免费开源),如果有钱可以跟风mac。哈哈!所以呢,系统里的环境变量全部没了,除了操作系统本身的变量外。经验告诉我们:换系统就是换血,把C盘的除系统外的渣渣都清除了,还好是其他盘的东西还在,不过又得手动配置她们的变量了。。。
01 SQL SERVER初探
初入SQL SERVER的可能不知道有两种版本分类的SQL SERVER,那现在就普及一下。第一种是MSSQL SERVER,全称是Microsoft SQL Sever,开发版,目前的大型网站一般使用Oracle或者MSSQL,JSP.PHP.ASP都可以。一般是企业级的商务网站使用的。全功能SQL数据库服务器,从2017版开始,横跨任何平台,完全免费。第二种是Express ,商业免费,有对应的限制一般都用这个。是SQL SERVER的简洁版,可以这样说。
但开始我也不懂啊,也没人叫我怎么玩哈,所以最近发现SQL不见了,就急忙下个SQL server2019最新版的玩一下。不行的是下载了6个多G,连带管理工具一起下(都是开热点的流量啊!啊啊!),N久后,才下完!然后安装!!!N久。
起初是发现从前的2017版的没有了,主要是SSMS没有,SSMS是SQL SERVER Management Studio,SQL SERVER管理工具,用来管理数据库的,而我们下的是SQL SERVER的一个下载工具罢了。没SSMS还是玩不起来。
02 第一个问题:配置管理器无法连接到 WMI 提供程序
这个问题我记住你了,化成灰我都认得你!!
弄了我一整晚,网上都查遍了,每个有效的方法。现在给大家清楚讲一遍,按上面的说,WMI,(Windows Management Instrumentation 即windows 管理规范)是一项核
心的 Windows 管理技术;用户可以使用 WMI 管理本地和远程计算机。简单点,就是管本地和远程计算机的一个东西。有点内味了!!也就是说要这个服务来帮助SQL配置管理器管理计算机的,那怎么管呢?
有两种解决方法:要么是没权限,弄权限;要么是服务器真的不能访问了,解决服务器。很明显,连自己的本地的机子,还说无法访问,那就是没权限啦。查查了半天,说要弄一个NETWORK SERVICE的权限,也弄了没反应,估计还不够吧!之后又有其他办法,说进如:"C:Program Files (x86)Microsoft SQL Server"里面,我的是这样的,里面是90‘100’120‘的数字文件夹(跟系统打交道的),不是真正的SQL SERVER文件夹(有界面的那个)。
其中有一个shared文件夹里有150Sharedsqlmgmproviderxpsp2up.mof这个文件。
我的是150/,可能不一样。之后在命令行输入:
mofcomp “C:Program Files(x86)Microsoft
SQLServer150Sharedsqlmgmproviderxpsp2up.mof”
结果:
将本地数据放到SQL储存库中了,就表示能访问到。那mof是个什么东西呢!
反正就是微软瞎造的东西,跟配置有关。不管了!可以正常打开配置管理器,但是里面项目为空,啥也看不到呀!正常是这样的:
但是右边什么也没有,而且,SSMS还是连不上本地的数据库实例。
第二个问题:系统找不到指定的文件
GUI是这样的:
本来是输入个本机名字就行了,可就是死活连不上。SSMS: 想玩我?没门!这个时候,还是用的2017的SQL配置管理器,2019的SQLEXPRESS,连2019的配置管理器都没有,当然弄不了了。那之前的努力都白搭,花了我N久弄完!
其实挺简单的,一步解决上面两个问题,还能使用最新的2019SQL SERVER。对啦,就是重新安装,不用开浏览器上什么官网,直接follow me。哈哈!
找到SQL SERBER的安装目录,就是那个有安装的SQL server2019:
D盘文件夹:
sqlserver文件夹里是这样的:
之后一路默认安装:
安装期间会同时实例化本地的数据库,以windows管理员的身份管理,完成后就能看到开始菜单里有2019配置管理器了:
sercice服务里也会有SQL服务,之前是没有的,即使解决了第一个问题后。估计这就是第二个问题没解决的原因吧!
没SQL server服务,就没得玩喽!
所以最后献上玩美结果:
哈哈,如果要用Network service权限解决的话请参考另一篇
最后祝大家玩的愉快!!
最后附上:小码blog
微信公众号:小码之光
以上是关于C# 连接数据库时 系统找不到指定的文件。的主要内容,如果未能解决你的问题,请参考以下文章
C# - Kerosene ORM - 找不到默认引擎和连接字符串
这是啥错误? “无法添加数据连接。找不到任何适合指定文化或中性文化的资源。”