LoginSignup
1
1

More than 5 years have passed since last update.

MySQL用ADO.NETでConnectorと付く物は2つある

Last updated at Posted at 2019-01-07

色々調べていて混乱したのでまとめておきます。
同じように混乱した方の参考になれば幸いです。

.NETでMySQLに接続するためのライブラリ(要はADO.NET)で
Connectorと名前が付く物は2つあります。

Connector/NET

MySQL(Oracle社)公式のライブラリ。正式名称は「Connector/NET」のようです。
https://dev.mysql.com/downloads/connector/net/8.0.html
image.png

MySqlConnector

こちらは正式名称が「MySqlConnector」https://mysql-net.github.io/MySqlConnector/
image.png

MySQL公式(Oracle社)とは関係のない純粋なOSSのライブラリ。
Oracle社のものをベースにしておらず、MySQLのプロトコルを純粋に再実装している旨の記載あり。
image.png

比較

MySqlConnectorのページに比較が載っていますが、MySqlConnectorは非同期処理に完全に対応していることが特徴のようです。
また、Connector/NETはGPLですがMySqlConnectorはMITライセンスです。
https://mysql-net.github.io/MySqlConnector/
image.png

どちらがポピュラー?

nugetのダウンロード数で比較すると
純粋にADO.NETのライブラリとしてはConnector/NET > MySqlConnector
image.png
ただし、Entity Frameworkとしてダウンロードされているものは
Pomelo.EntityFrameworkCore.MySql(MySqlConnectorを使用したEF) > Connector/NET
image.png

どっちを使う?

MySqlConnectorの方はConnector/NETと比較して以下の制限がありますが、
私が使っている範囲ではこの制限に該当する実装をする場面はありません。
私はOracle社があまり好きではないのでMySqlConnectorを使っています。
(なので、MySQLではなくMariaDBを使っている)
https://mysql-net.github.io/MySqlConnector/overview/known-issues/
image.png

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1