当前位置:网站首页>不支持关键字: 'Provider'
不支持关键字: 'Provider'
2022-08-09 08:56:00 【l8487】
在利用 SqlConnection 连接数据库时出现“不支持关键字: "Provider"”的错误。
原因分析
SqlConnection 是专门用于连接 SQL Server 的对象,由于是针对特定的数据库,所以并不需要指定 Provider。
连SQL Server不用指明数据提供者
解决办法
将连接字符串中的 Provider 删除即可。
不需要用provider
按下面的格式写就可以了
User ID={0}; Password={1};Initial Catalog={2};Data Source={3}
注意,Sql 和 OleDb有别,可以参考以下文章
.......在编程中并不使用这几个单词作为对象名称,还需要在前面加上 Sql 或 OleDb,加上 Sql 的对象实用于 MS SQL Server 7.0 及以上版本,加上 OleDb 的对象适用于所有数据库(管理系统),使用 Sql 开头的对象操作 MS SQL Server 数据库要比使用 OleDb 开头的对象操作 MS SQL Server 数据库性能优越,所以在数据库使用 MS SQL Server 时,应该使用 Sql 开头的对象,否则微软也不会单独开发出一系列针对 MS SQL Server 的对象了。
使用 Sql 开头的对象,名称空间是:
使用 OleDb 开头的对象,名称空间是:
SqlConnection 和 OleDbConnection
Connection 对象用于建立和数据库的连接。对于 SqlConnection 不需要指明 provider,因为其驱动是固定的,而对于 OleDbConnection 则需要指明 provider 用以说明需要什么数据库驱动。
SqlCommand 和 OleDbCommand
Command 对象用于对数据库进行操作。
SqlDataReader 和 OleDbDataReader
DataReader 对象读取数据库中的数据,它从数据库返回一个只读的、仅向前的数据流,当前内存中每次仅存在一条记录,所以它相对 ADO 的 RecordSet 性能非常优越。SqlDataReader 和 OleDbDataReader 的属性和方法还是有一定区别的,因为面向的数据库字段类型不同。
SqlDataAdapter 和 OleDbDataAdapter
DataAdapter 对象建立、初始化 DataTable,从而和 DataSet 对象结合起来在内存中存放数据,DataAdapter 对象能隐藏和 Connection、Command 对象沟通的细节,所以在使用 DataAdapter 时不需要指明 conn.Open(conn 为 Connection 对象),而使用 Command 和 DataReader 则需要指明 conn.Open
边栏推荐
猜你喜欢
随机推荐
无符号整数文法和浮点数文法
零搜索量的关键词,你需要布局吗?
JVM进程诊断利器——Arthas
STM32 如何知道FLASH的使用情况
法院3D导航系统-轻松实现室内实时定位导航
Makefile中patsubst、wildcard、notdir的使用
1. LVGL 8.3 在 Visual Studio 2019 模拟器中的环境搭建
Go语言技巧之正确高效使用slice(听课笔记总结--简单易懂)
js实现看板全屏功能
QT program generates independent exe program (pit-avoiding version)
长辈相亲
VNCTF2021 部分题目复现
The MySQL database
黑马2022最新redis课程笔记知识点(面试用)
【Harmony OS】【ARK UI】公共事件模块
Dark Horse 2022 latest redis course notes and knowledge points (for interview)
Conversion between number systems
elder blind date
网络层协议介绍
腾讯云服务器修改为root登录安装宝塔面板