IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> Unity连接SQLServer数据库报错找不到System.Data.dll -> 正文阅读

[游戏开发]Unity连接SQLServer数据库报错找不到System.Data.dll

最近要采集一些数据,原来是读取MySQL到没有什么问题,现在改成数据库是SQLServer,但是一直报找不到System.Data.dll文件的错误,在这里记录一下解决方法,供以后避坑(PS:原来一直以为是找的dll文件有问题,试了很多个版本也没用,太累了,再也不想挨个找了)

错误信息

先把我的错误信息放出来,放不放System.Data.dll都会出错(这可咋整!)
1、没放System.Data.dll到项目中vs代码报错,明显找不到类
错误信息1
2、没放System.Data.dll到项目中的unity错误信息
在这里插入图片描述

3、将System.Data.dll放到项目中的错误信息
错误信息1

Unity中错误解决方法(Unity2018以后可以使用,之前版本应该还是需要复制放到项目中)

Unity2018以前版本需要将System.Data.dll拷贝到unity项目里,Unity2018以后就不需要这部操作了,只需要在设置中将Api Compatibility Level* 设置成 .Net 4.x 就可以了(吐了,谁知道这么简单,话说网上的文章能不能与时俱进一下,翻了好多才找到一个),Unity问题解决。
unity设置

VS错误解决方法

找到 工具 -> NuGet 包管理器 -> 管理解决方案的 NuGet程序包,在弹出的窗口中搜索 sql,找到System.Data.SqlClient ,然后选择全部进行安装(我这里已经安装了所以就不能再次安装了)。
在这里插入图片描述
记得联网才能进行下载,全部安装好之后,需要重新启动 VS,就不会报错了,VS问题解决。

刚下班就开始码字,来的各位大牛,感觉有用的话点个收藏和关注呗(一年没写了,以后还是要多写多记,好了又是收获满满的一天,继续潜水,哈哈~~)

顺便附上VS详细代码供兄弟们参考

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.Data;
using System.Data.SqlClient;
using System;
using System.Xml;

public class SqlServerUtils:MonoBehaviour
{
    //指定ip和数据库账号密码
    private const string ipAddress = "server=127.0.0.1;database=TestDB;uid=sa;pwd=admin123";
    //定义连接
    private SqlConnection sqlCon;
    //适配器
    SqlDataAdapter sda = null;

    void Start()
    {
        ConnectSQLServer();
    }

    public void ConnectSQLServer()
    {
        try
        {
            Debug.Log("开始连接SqlServer!");
            //创建一个数据库连接
            sqlCon = new SqlConnection(ipAddress);
            //打开连接
            sqlCon.Open();
            Debug.Log("SqlServer连接成功!");
            //数据库操作语句  
            //注意数据库名字要用中括号括起来
            string sql = "select * from [user]";
            //数据库操作
            sda = new SqlDataAdapter(sql, ipAddress);
            //结果集
            DataSet ds = new DataSet();
            //将查询的结果放入结果集
            sda.Fill(ds, "user");
            //打印结果,这种打印比较麻烦,毕竟谁也不会记住要找的数据是第几行第几列
            Debug.Log(ds.Tables[0].Rows[0][1]);

            //将得到的数据转换成 XML,使用简单,可以直接找到对应的字段名字进行获取
            XmlDocument xdoc = new XmlDocument();
            xdoc.LoadXml(ds.GetXml());
            XmlNode xmlNode = xdoc.FirstChild;
            //遍历数据库中的数据
            foreach (XmlNode item in xmlNode)
            {
                Debug.Log(item.SelectSingleNode("name").InnerText);
                Debug.Log(item.SelectSingleNode("age").InnerText);
            }

            //关闭数据库
            sqlCon.Close();

        }
        catch (Exception e)
        {
            Debug.LogError(e.StackTrace);
        }
    }
}

以下是个人参考的网站
SQLServer2016安装教程
Unity连接SQLServer并进行查询
VS找不到System.Data.SqlClient解决方法
Unity找不到System.Data.SqlClient雷区

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2021-12-14 16:17:43  更:2021-12-14 16:17:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 20:32:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码