专注3D产业技术16年,三维动画制作,3D特效动画,3D交互开发优质服务商!
咨询电话:1868 148 2869 (微信同步)  客服QQ:390551442  390551442
CASES ·
新闻中心
这里象征着我们的方向和能力
移动终端当前位置:首页 > 新闻中心

Unity3D开发之使用MySql数据库

发表日期:2018/5/20 0:49:00     文章编辑:     浏览次数:6128     标签:

首先,在项目里想要使用MySql,必须添加MySql.Data.dll。只有对他引用才能使用程序连接数据库。(数据库的安装很简单,自行百度)。首先我们需要定义连接数据库的字符串: 

 public const string CONNECTIONSTRING = "datasource=127.0.0.1;port=3306;database=game02;user=root;pwd=root;";

datasource代表的是数据库的地址,通常服务器和数据库都是在一台机器上的,所以我们使用代表本地机器Ip的127.0.0.1。端口号为3306这是固定的,我们使用MySql Workbench打开数据库就可以看到端口号。database代表我们要访问的数据库名称,user用户名,pwd代表密码。这些都是在安装数据库的时候我们设置的。

好了,接下来是我们的数据库连接:

 public static MySqlConnection Connect()
{
MySqlConnection conn=new MySqlConnection(CONNECTIONSTRING);
try
{
conn.Open();
return conn;
}
catch (Exception e)
{
Console.WriteLine("打开数据库错误!"+e);
return null;
}
}


数据库的关闭:


public static void CloseConnection(MySqlConnection conn)
{
if(conn!=null) conn.Close();

else Console.WriteLine("MySqlConnection不能为空");

 
数据的查询:

MySqlDataReader reader = null;
try
{
MySqlCommand command = new MySqlCommand("select * from user where username=@username " +
"and password=@password", conn);
command.Parameters.AddWithValue("username", username);
command.Parameters.AddWithValue("password", password);
reader = command.ExecuteReader();
if (reader.Read())
{
int id = reader.GetInt32("id");
}
}
这里要说下数据库的防注入问题。在查询语句中,我们使用username=@username来代替我们的输入参数。这是为了保护我们数据库安全。如果直接输入username=username的话,当一些用户或者恶意攻击数据库的用户将输入自己的用户名为“username=wo and delete from game01”,数据库数据将全部被删除。所以我们使用此方法来防止数据库恶意注入。

数据的删除:

MySqlCommand cmd = new MySqlCommand("delete from user where id = @id", conn);
cmd.Parameters.AddWithValue("id", 18);

cmd.ExecuteNonQuery(); 


 
数据的更新:
MySqlCommand cmd = new MySqlCommand("update user set password = @pwd,la=@la where id = 14", conn);
cmd.Parameters.AddWithValue("pwd", "sikiedu.com");

cmd.ExecuteNonQuery(); 


 
数据的插入:

MySqlCommand cmd = new MySqlCommand("insert into user set username ='" + username + "'" + ",password='" + password + "'", conn);
MySqlCommand cmd = new MySqlCommand("insert into user set username=@un , password = @pwd", conn);

cmd.Parameters.AddWithValue("un", username);
cmd.Parameters.AddWithValue("pwd", password);

cmd.ExecuteNonQuery();
好了,以上就是我们对MySql数据库的常规操作。基本会满足我们在unity上的开发。

相关文章
  • 服务热线:18681482869
  • 手机:1868 148 2869
  • 网址:www.sx8d.com
  • 地址:深圳市龙岗区大运软件小镇54栋202室

Copyright © 2015-2018 sx8d.com All Rights Reserved. 深圳市深信数字科技有限公司 版权所有 | 粤ICP备15084676号

  • qq客服
  • 公众号
  • 手机版
  • 公安备案查询
 
预约上门

请拨打销售热线 18681482869,或让我们联系您!

姓名:  
电话:  
地址:  
建设项目:  
验证码:  验证码
×