Unity连接Sql数据库(PC端)

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

 

 

posted @ 2018-12-28 21:11  魔卡先生  阅读(4876)  评论(0编辑  收藏  举报