声明:Unity版本:5.2.3f1,数据库版本:SqlServer 2008
1.复制System.Data.Dll文件到Unity工程中(与Unity的安装路径有关)
注意:复制后的文件放在与你代码同级目录即可
2. 新建一个用于连接数据库的脚本
添加以下引用:(如果引用后报错,将Api Compatibility Level 改为.Net2.0)
using System.Data;
using System.Data.SqlClient;
using System; using UnityEngine; using System.Collections; using System.Data; using System.Data.SqlClient; using UnityEngine.UI; public class ConnectSQL : MonoBehaviour { public Text m_messageTex;//连接是否成功文本 public Text m_sqlInfoTex;//显示读取数据库中的信息 void Start() { //连接数据库的字符串(参数1:数据库地址,参数2:数据库名称,参数3:用户名,参数4:密码) string tConnectStr = "server=127.0.0.1;database=MyDatabase;uid=sa;pwd=666"; //申请一个连接对象 SqlConnection tSqlConnection = new SqlConnection(tConnectStr); //如果关闭则打开 if (tSqlConnection.State == ConnectionState.Closed) { tSqlConnection.Open(); } //读取数据库中的表数据 string tSqlStr = "select * from UserInfo Where Id = 13"; SqlCommand tSqlCommand = new SqlCommand(tSqlStr, tSqlConnection); //申请一个用于存储读取来的数据容器 SqlDataReader tSqlDataReader = null; try { //存储所有读来的数据 tSqlDataReader = tSqlCommand.ExecuteReader(); //一行一行读取数据 while (tSqlDataReader.Read()) { m_sqlInfoTex.text = tSqlDataReader["Name"].ToString(); m_messageTex.text = "连接成功"; } } //抛出异常 catch (Exception exception) { m_messageTex.text = "连接失败"; throw new Exception(exception.Message); } finally { //关闭数据库 tSqlConnection.Close(); //释放资源 tSqlConnection.Dispose(); } } }
3.连接通讯后的显示
此时我的数据库UserInfo表如下:
将所读取的数据显示在UI上,如下: