一、连接数据库分三个步骤
1、导入数据库服务器提供的dll文件(才能使用里面的API)
dll文件:即动态链接库,一种可执行文件,允许程序共享执行特殊任务所需的代码和其他资源。需要就会调用,主要时加快加载速度和效率。
API:意思为应用程序编辑接口,是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作的细节。
2、建立和数据库服务器的连接通道(通过IP和端口号)
IP和端口号的关系:IP地址是你的电脑的网络地址,主要是用于查找到你的电脑的。而端口号是区分不同的进程的,也就是说一个电脑上有多个应用程序就需要使用不同的端口号进行区分。从理论上来说,IP是网络层地址,而端口号是传输层地址。
指出一个错误
MySqlConnection conn = new MySqlConnection(connectStr);//这里并没有和数据库连接
conn.Open();//才是建立了连接
二、增删改查
1、增
static void Insert()
{
string connectStr = "server=127.0.0.1;port=3305;database=20203322刘磊;user=root;password=liulei5412647";
MySqlConnection conn = new MySqlConnection(connectStr);//MySql连接
try
{
conn.Open();
Console.WriteLine("连接成功");
string insertStr = "insert into firstone(name,age) values('小李','16')";
Console.WriteLine(insertStr);
MySqlCommand cmd = new MySqlCommand(insertStr, conn);
int result=cmd.ExecuteNonQuery();
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
//cmd.Dispose();
conn.Close();
Console.ReadKey();
}
}
2、删
static void Delete()
{
string connectStr = "server=127.0.0.1;port=3305;database=20203322刘磊;user=root;password=liulei5412647;";
MySqlConnection conn = new MySqlConnection(connectStr);//MySql连接对象
MySqlCommand cmd = null;//MyQql命令对象
try
{
conn.Open();
Console.WriteLine("连接成功");
string deleStr = "delete from firstone where ID=2;";
cmd = new MySqlCommand(deleStr, conn);
cmd.ExecuteNonQuery();
}
catch
{
Console.WriteLine("连接失败");
}
finally
{
//cmd.Dispose();
conn.Close();
}
}
3、改
static void Update()
{
string connectStr = "server=127.0.0.1;port=3305;database=20203322刘磊;user=root;password=liulei5412647;";
MySqlConnection conn = new MySqlConnection(connectStr);//MySql连接对象
MySqlCommand cmd = null;//MyQql命令对象
try
{
conn.Open();
Console.WriteLine("连接成功");
string updatStr = "update firstone set ID=3,Name='小子' where Age=15;";
cmd = new MySqlCommand(updatStr, conn);
cmd.ExecuteNonQuery();
}
catch
{
Console.WriteLine("连接失败");
}
finally
{
//cmd.Dispose();
conn.Close();
}
}
4、查
static void Read()
{
#region 建立连接通道
string connectStr = "server=127.0.0.1;port=3305;database=20203322刘磊;user=root;password=liulei5412647;";
#endregion
MySqlConnection conn = new MySqlConnection(connectStr);//MySql连接对象
MySqlCommand cmd = null;//MyQql命令对象
try
{
conn.Open();
Console.WriteLine("连接成功");
string queryStr = "select ID,Name,Age,Time from firstone;";
cmd = new MySqlCommand(queryStr, conn);
MySqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Console.WriteLine(dr[0].ToString() + " " + dr[1].ToString() + " " + dr[2].ToString());
}
}
catch (Exception e)
{
Console.WriteLine(e);
throw;
}
finally
{
cmd.Dispose();
conn.Close();
}
}
}
注意:每一个通道只能执行一次。