跟数据库交互:
1.直接写 利用mysql的接口
2.使用nHibernate
using MySql.Data.MySqlClient;
直接用C#跟Mysql交互编程
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MySql.Data.MySqlClient;
namespace Csharp直接用MySql
{
class Program
{
static void Main(string[] args)
{
//Read();
//Insert();
//Update();
//Delete();
//Insert();
//ExecuteScalar();
bool res=Verifyusers("sadfafa", "45678");
Console.WriteLine(res);
Console.ReadKey();
}
static bool Verifyusers(string username,string password) //验证用户的正确性
{
string connectionStr = "server=localhost;port=3306;database=mygamedb;user=root;password=root";
MySqlConnection conn = new MySqlConnection(connectionStr);
try
{
conn.Open();
/*string sql = "select * from users where username='"+username+"'and password='"+password+"'";*/ //"++"可以传递外面的值
string sql = "select * from users where username=@para1 and password=@para2"; //另外一种方法判断,赋值的方法
MySqlCommand com = new MySqlCommand(sql, conn);
com.Parameters.AddWithValue("para1", username); //把username赋值给para1
com.Parameters.AddWithValue("para2", password); //赋值
MySqlDataReader reader = com.ExecuteReader();
if(reader.Read())
{
return true;
}
}catch(Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close();
}
return false;
}
static void Read()
{
string connectStr = "server=localhost;port=3306;database=mygamedb;user=root;password=root";
MySqlConnection conn = new MySqlConnection(connectStr); //并没有去跟数据库建立连接
try
{
conn.Open(); //建立连接
string sql = "select * from users";
MySqlCommand com = new MySqlCommand(sql, conn); //mysql的命令
//com.ExecuteReader(); //执行一些查询
//com.ExecuteNonQuery(); //插入,删除
//com.ExecuteScalar(); //执行一些查询,返回一个单个的值
MySqlDataReader reader = com.ExecuteReader();
//reader.Read(); //读取下一页数据,如果读取成功,返回true,如果没有下一页,返回false;
//Console.WriteLine(reader[0].ToString() + reader[1].ToString() + reader[2].ToString());
while (reader.Read()) //查询所有的数据
{
//Console.WriteLine(reader[0].ToString() + reader[1].ToString() + reader[2].ToString());
//Console.WriteLine(reader.GetInt32(0) + reader.GetString(1) + reader.GetString(2));
Console.WriteLine(reader.GetInt32("id") + reader.GetString("username") + reader.GetString("password"));//推荐使用这个,较理解
}
//Console.WriteLine("连接成功");
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close(); //最后关闭,释放内存
}
}
static void ExecuteScalar()
{
string connectionStr = "server=localhost;port=3306;database=mygamedb;user=root;password=root";
MySqlConnection conn = new MySqlConnection(connectionStr);
try
{
conn.Open();
string sql = "select count(id) from users";
MySqlCommand com = new MySqlCommand(sql, conn);
object o = com.ExecuteScalar(); //直接返回一个值
int res = Convert.ToInt32(o.ToString()); //强制转换为整数
Console.WriteLine(res);
}
catch(Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close();
}
}
static void Insert()
{
string connectStr = "server=localhost;port=3306;database=mygamedb;user=root;password=root";
MySqlConnection conn = new MySqlConnection(connectStr); //并没有去跟数据库建立连接
try
{
conn.Open(); //建立连接
string sql = "insert into users(username,password,createtime) value('wqreqf','45612','" + DateTime.Now + "');";
MySqlCommand com = new MySqlCommand(sql, conn); //mysql的命令
int res = com.ExecuteNonQuery();
//Console.WriteLine("连接成功");
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close(); //最后关闭,释放内存
}
}
static void Update()
{
string connectionStr = "server=localhost;port=3306;database=mygamedb;user=root;password=root";
MySqlConnection conn = new MySqlConnection(connectionStr);
try
{
conn.Open();
string sql = "update users set username='qwreqwrq',password='21564648' where id=3";
MySqlCommand com = new MySqlCommand(sql, conn);
int res = com.ExecuteNonQuery();
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close();
}
}
static void Delete()
{
string connectionStr = "server=localhost;port=3306;database=mygamedb;user=root;password=root";
MySqlConnection conn = new MySqlConnection(connectionStr);
try
{
conn.Open();
string sql = "delete from users where id = 8";
MySqlCommand com = new MySqlCommand(sql, conn);
int res = com.ExecuteNonQuery();
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
conn.Close();
}
}
}
}