unity连接数据库的方式(请原谅unity新人拿来主义的嫌疑)
吐槽一下:网上好多unity3d连接数据库的教程,然……都坑的很,拿来做参考还可以,照着写,机器一般都跑不起来
准备工作:
1.使用软件版本,untiy5.6,VS2015,Sql sever2014,
2.要导入到Unity的Project的Asset文件有4个:I18N.CJK.dll,I18N.dll,I18N.West.dll,System.Data.dll。(请至unity安装目录下查找,应为:你的(unity安装目录)\Editor\Data\Mono\lib\mono\unity)
在Asset文件下创建文件名为Plugins的文件夹,并把以上四个文件放至此文件中。(如下图所示)
3.在Sql sever中新建一个数据库名为:TimeBombManLogin,并新建一个数据库表,名字也为TimeBombManLogin,两个名字可以不一样,但是注意要在后面的代码里修改掉(如下图)
4.表中随意添加内容即可,如下
1.后面就直接上代码了,包含注释,自己读吧:
/*
注意Sql Sever的登录方式为Sql Serer登陆,不是window默认的登陆方式
*/
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Data.SqlClient;
using System.Data;
using UnityEngine.UI;
//一个Button控制,连接数据库,在Unity中记得注册一下Click On()事件
public void loginButton() {
/************************************************
Server=192.168.8.108(你自己的IP地址),不要写小圆点之类的代替
user=sa;(连接数据库时的登录名)
pwd=123456;(连接数据库时自己设置好的登陆密码)
database=TimeBombManLogin;(要连接的数据库名称)
***********************************************/
string connectionString = "Server=192.168.8.108;user=sa;pwd =123456;database=TimeBombManLogin";
SqlConnection dbConnection = new SqlConnection(connectionString); //连接
SqlCommand dbCommand = new SqlCommand(); //命令
dbCommand.Connection = dbConnection;
dbCommand.CommandType = CommandType.Text; //命令类型
//sql要执行的命令
/**********************************
可以参考以上数据库的截图,比如要查询列名为account,值为haibing_zhao
************************************/
string strCommand = "Select * from TimeBombManLogin where account='haibing_zhao'";//要查询的数据
dbCommand.CommandText = strCommand; //将要查询的数据存到命令文本
SqlDataAdapter sda = new SqlDataAdapter(dbCommand);
try {
sda.SelectCommand.Connection.Open();
SqlDataReader thisReader = sda.SelectCommand.ExecuteReader();
if (thisReader.Read())
{
//thisReader["account"]输出数据库中对应的列名为account="haibing_zhao"的值
Debug.Log("连接数据库成功:" + thisReader["account"].ToString());
}
} catch (Exception ex){
Debug.Log("连接数据库失败:" +ex.Message.ToString());
} finally {
}
}
6.最后将此脚本绑定到Unity中Hierarchy视图下的某个对象上,为该方法注册一个Button点击事件,就能执行了,结果如下图