1. 引入MySql.data.dll
首先在创建工程后要引入MySql.Data.dll文件。在创建的项目上右键找到Nuget程序包。
然后按照红框内的方式搜索,一般第一个即为MySql.data.dll文件,点击下载导入即可。
SDK引入之后下面我们就可以进行对MySql的操作啦。。。
注:一定要先下载好MySql之后才可以呀,最好先创建一个表作为测试表,不然测试都不好测试。
2. 与数据库建立连接
先进行一个简单的连接,在这里,建立连接用到的是MySqlConnection这个类。
第一个string值中的值分别代表:server:ip地址 port:端口号 database:数据库名称 user:用户名 password:密码
数据库在本地的话ip可以写成127.0.0.1或者localhost,这两个都代表是本地IP
class Program
{
static void Main(string[] args)
{
//这是用来连接数据库的信息,
string connect = "server=127.0.0.1;port=3306;database=mygame;user=root;password=root;";
//注册连接信息
MySqlConnection conn = new MySqlConnection(connect);
conn.Open();//开始连接数据库
conn.Close();//关闭连接数据库
}
}
在open()开始连接的时候是可能报错的,比如端口号写错等等,为了捕捉异常可以这么修改。
class Program
{
static void Main(string[] args)
{
//这是用来连接数据库的信息,
string connect = "server=127.0.0.1;port=3306;database=mygame;user=root;password=root;";
//注册连接信息
MySqlConnection conn = new MySqlConnection(connect);
try
{
conn.Open();//开始连接数据库
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close();//关闭连接数据库
}
}
}
3. 操作数据库
查询
现在已经建立好连接了,下面进行操作数据库的部分。用到MySqlCommand类来根据命令进行操作,利用MySqlDataReader类进行获取读到的数据。
reader.Reader()方法调用后,reader读取了一行数据,调用一次向下读一行,重复调用会一直往下读,利用reader[0]、reader[1]。。。可以获取这一行某一列的数据。
reder的放回值为bool值,如果返回为false即已经读到了最后一行了。
try
{
conn.Open();//开始连接数据库
string sql = "select * from tablename";//sql命令
MySqlCommand cmd = new MySqlCommand(sql, conn);
MySqlDataReader reader = cmd.ExecuteReader();
reader.Read();
Console.WriteLine(reader[0]);//打印第一行第一列的数据
}
插入
插入即“增”数据,设定好MySql命令后,使用command命令即可实现增加数据的功能。
void Insert()
{
string connectStr = "server=127.0.0.1;port=3306;database=mygame;user=root;password=root;";
MySqlConnection conn = new MySqlConnection(connectStr);
try
{
conn.Open();
string sqlCmd = "insert into tablename(colname,colname...) values(value,value...)";
MySqlCommand mySqlCommand = new MySqlCommand(sqlCmd, conn);
int result = mySqlCommand.ExecuteNonQuery();//返回值为影响了几行数据
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close();
}
}
更新数据
更新数据即“改”数据,使用update的sql命令即可。
注意,要更新的行数使用id或者不重复的值来区分一下。
void update()
{
string connectStr = "server=127.0.0.1;port=3306;database=mygame;user=root;password=root;";
MySqlConnection conn = new MySqlConnection(connectStr);
try
{
conn.Open();
string sqlCmd = "update tablename set colname='' ,colname='' where id= ";//
MySqlCommand mySqlCommand = new MySqlCommand(sqlCmd, conn);
int result = mySqlCommand.ExecuteNonQuery();//返回值为影响了几行数据
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close();
}
}
删除
“删”数据,也很简单,使用delete命令指定表和行数之后就可以删除了。
void delete()
{
string connectStr = "server=127.0.0.1;port=3306;database=mygame;user=root;password=root;";
MySqlConnection conn = new MySqlConnection(connectStr);
try
{
conn.Open();
string sqlCmd = "delete from tablename where id= ";
MySqlCommand mySqlCommand = new MySqlCommand(sqlCmd, conn);
int result = mySqlCommand.ExecuteNonQuery();//返回值为影响了几行数据
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close();
}
}
评论 (0)