声明: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上,如下: