说明概念:
ADO是一套数据库访问规范API,每个数据库厂商都有对这个API的具体实现的类库。此文章采用的范例是基于Mysql
ADO.Net访问数据库:
有几个要点。连接(连接池,连接信息),命令(ExcuteNonQuery,ExcuteReader,ExcuteScalar,调用存储过程),异步数据访问, 事务。
对于事务的Transection,在Windows上作为Framework的一部分作为分布式事务协调器,具体这里以后在做深入研究
对于Mysql需要使用的类库是MySql.Data。
下面的例子是一个简单的Mysql数据库访问,并执行select查询语句。
static void Main(string[] args) { //连接数据库 string connectStr = "Database='world';Data Source='localhost';User Id='root';Password='mysql2333';charset='utf8';pooling=true"; var connection = new MySqlConnection(connectStr); connection.Open(); Console.WriteLine("Connection Opened"); //数据库操作 string selectCmd = "select * from city";//Sql查询语句 MySqlCommand mySqlCommand = new MySqlCommand(selectCmd, connection);//实例化Sql命令 MySqlDataReader reader = mySqlCommand.ExecuteReader();//执行Sql命令 //读取结果 while (reader.Read()) { int id = reader.GetInt32(0); string name = reader.GetString(1); Console.WriteLine($"{id}, {name}"); } //连接关闭 connection.Close(); }