zoukankan      html  css  js  c++  java
  • 在.NET中使用MySql数据库

    在.NET中使用Sql Server是一直的事情。前几天学习通过JDBC使用Java连接MySql数据库,我就想.NET是否同样可以使用MySql数据库呢?答案是肯定的,方法也很简单,在这里我使用C#作为编程语言,将自己整理出来的方法同大家一起分享。

    欲在.NET中使用MySql数据库,其步骤是:
    1. 下载MySql驱动包
    2. 引用驱动包中已经编译好的MySql类组件
    3. 编写代码

    步骤一:下载MySql驱动包
    在我写篇文章的时候,最新的驱动包是5.2,支持Visual Studio 2008。官方下载地址是http://dev.mysql.com/downloads/connector/net/5.2.html

    步骤二:
    下载的文件是一个压缩文件,将其解压缩到本地磁盘。找到bin文件夹中的MySql.Data.dll文件,这个就是我们要引用的组件。通过Visual Studio将其引用到你的项目中

    步骤三:编码我就不多说了,我编写了一个控制台的示例,并将重要的部分都添加了注释,代码如下:

     1/**
     2 * 程序名称:使用.NET连接MySql数据库
     3 * 作者:吴磊
     4 * 日期:2009年01月17日
     5 */

     6
     7// 使用MySql.Data.MySqlClient命名空间
     8using System;
     9using MySql.Data.MySqlClient;
    10
    11namespace Project_Personnel.db
    12{
    13    class dbManage
    14    {
    15        /// <summary>
    16        /// 连接到MySql数据库并返回连接对象
    17        /// </summary>
    18        /// <returns>数据库连接对象</returns>

    19        private static MySqlConnection getCon()
    20        {
    21            MySqlConnection myCon = null;
    22            try
    23            {
    24                /*
    25                 * Server:数据库服务器。localhost表示本机
    26                 * Database:数据库名称。school表示mySql中一个名为school的数据库
    27                 * Uid:用户名
    28                 * Pwd:密码
    29                 * CharSet:使用的字符编码。不设置可能产生乱码
    30                 */

    31                myCon = new MySqlConnection("Server=localhost;Database=school;Uid=root;Pwd=123;CharSet=utf8;");
    32                myCon.Open();
    33            }

    34            catch (MySqlException e)
    35            {
    36                //抛出连接MySql数据库的异常
    37                throw new Exception(e.Message);
    38            }

    39            return myCon;
    40        }

    41
    42        public static void Main()
    43        {
    44            try
    45            {
    46                //从shool表中检索数据的sql语句(别误会,我是在school数据库中建立了一个school表)
    47                MySqlCommand myCmd = new MySqlCommand("select * from school", getCon());
    48               
    49                //执行检索语句并将执行结果赋值给MySqlDataReader对象
    50                MySqlDataReader myReader = myCmd.ExecuteReader();
    51
    52                //进行读取
    53                while (myReader.Read())
    54                {
    55                    //myReader的FieldCount属性表示列数
    56                    for (int i = 0; i < myReader.FieldCount; i++)
    57                    {
    58                        /*
    59                         * 提示:如果使用此if语句,会产生异常:数据为空,不能对空值调用此方法或属性。
    60                         * 判断索引为i的列中的值是否为空,如果为空输出NULL
    61                         */

    62                        if (!myReader[i].Equals(DBNull.Value))
    63                        {
    64                            Console.Write("{0,10}", myReader[i]);
    65                        }

    66                        else
    67                        {
    68                            Console.Write("{0,10}""Null");
    69                        }

    70                    }

    71                    //换行
    72                    Console.WriteLine();
    73                }

    74            }

    75            //捕获MySql异常
    76            catch (MySqlException e)
    77            {
    78                Console.WriteLine(e.Message);
    79            }

    80            //捕获其他异常
    81            catch (Exception e)
    82            {
    83                Console.WriteLine(e.Message);
    84            }

    85            finally
    86            {
    87                Console.ReadKey();
    88            }

    89        }

    90    }

    91}



  • 相关阅读:
    AngularJS Insert Update Delete Using PHP MySQL
    Simple task manager application using AngularJS PHP MySQL
    AngularJS MySQL and Bootstrap Shopping List Tutorial
    Starting out with Node.js and AngularJS
    AngularJS CRUD Example with PHP, MySQL and Material Design
    How to install KVM on Fedora 22
    Fake_AP模式下的Easy-Creds浅析
    河南公务员写古文辞职信
    AI
    政协委员:最大愿望是让小学生步行上学
  • 原文地址:https://www.cnblogs.com/iPeterRex/p/1377625.html
Copyright © 2011-2022 走看看