Доступ к базе данных sql с использованием С# по единству?

Я только начал использовать С# и не знаю много об этом. Я использую 3D-движок под названием Unity и пытаюсь написать С# script для доступа к базе данных MySQL, которую я запускаю. База данных MySQL находится на другом компьютере. Мой вопрос в том, как я могу получить доступ к базе данных MySQL с помощью С#. Я знаю имя пользователя, пароль и базу данных, которые я хочу использовать, но я не могу понять, как получить доступ к базе данных.

Ответ 1

Вам нужно будет получить драйвер С# MySQL: http://dev.mysql.com/downloads/connector/net/

И тогда вам нужно будет следовать руководству MySQL для его настройки и использования. Это стандартный драйвер ADO.NET, поэтому вы можете следить за большинством учебных пособий на С# SQL, чтобы получить дополнительную помощь.

Ответ 2

Настройка базы данных (SQLite) для Unity Создать новую папку

  • Создайте новую папку в папке "Активы" Переименуйте ее в плагины.

  • Скопируйте sqlite3.def и sqlite3.dll в Assets/Plugins в проект единства. Вы можете скачать эти файлы здесь http://www.sqlite.org/download.html для окон (предварительно скомпилированные двоичные файлы для Windows)

  • Загрузите браузер SQLite http://sourceforge.net/projects/sqlitebrowser/ или http://sqliteadmin.orbmu2k.de/ скачать инструмент администратора SQLite
  • Создайте базу данных в папке "Активы" в проекте единства с помощью браузера SQLite.
  • Скопируйте System.Data.dll и Mono.Data.Sqlite.dll из ** C:\Program Files (x86)\Unity\Editor\Data\Mono\lib\mono\2.0 * и вставьте их в свои активы /Plugins * в вашем проекте объединения.
  • Добавьте эти пространства имен, используя Mono.Data.Sqlite; используя System.Data; использование системы;
  • string conn = "URI = file:" + Application.dataPath + "/PickAndPlaceDatabase.s3db";

Заменить PickAndPlaceDatabase.s3db своим именем базы данных

в папке "Активы" Переименуйте плагины.

void Start () {

             string conn = "URI=file:" + Application.dataPath + "/PickAndPlaceDatabase.s3db"; //Path to database.
             IDbConnection dbconn;
             dbconn = (IDbConnection) new SqliteConnection(conn);
             dbconn.Open(); //Open connection to the database.
             IDbCommand dbcmd = dbconn.CreateCommand();
             string sqlQuery = "SELECT value,name, randomSequence " + "FROM PlaceSequence";
             dbcmd.CommandText = sqlQuery;
             IDataReader reader = dbcmd.ExecuteReader();
             while (reader.Read())
             {
                 int value = reader.GetInt32(0);
                 string name = reader.GetString(1);
                 int rand = reader.GetInt32(2);

                 Debug.Log( "value= "+value+"  name ="+name+"  random ="+  rand);
             }
             reader.Close();
             reader = null;
             dbcmd.Dispose();
             dbcmd = null;
             dbconn.Close();
             dbconn = null;
         }

введите описание изображения здесь введите описание изображения здесь

это полезная ссылка:

Дальнейшая помощь SQLite: http://www.tutorialspoint.com/sqlite/

http://wiki.unity3d.com/index.php/Webservices_In_Unity введите описание изображения здесь то вы должны добавить эту библиотеку в свой код С#:

using AssemblyCSharp.portal.wwwww.com;

теперь вы можете использовать его:

using UnityEngine;
using System.Collections;
using AssemblyCSharp.portal.wwwww.com;

public class Game5_Player : MonoBehaviour
{
    public string Logo;
    void Start ()
    {
        crm1 s = new crm1();
        Logo= s.getCompanyLogo ();
    }
}

Ответ 3

Unity3D использует Stripped Mono.net, который не поддерживает базу данных напрямую. Вы можете написать свою собственную DLL в С#.NET, которая делает доступ к данным для вас. Затем добавьте его в свой проект Unity3D.

Пока вы пишете свою собственную DLL, убедитесь, что, когда вы приносите эту DLL в свой проект, вы также скопируете DLL, на которую ссылаются, в той же папке. Лучший подход - использовать Mono.NET.

Ответ 4

Поздний ответ, но, возможно, это поможет другим.

Я могу получить доступ к базе данных SQL Server на моем не-игровом Unity-приложении. В моем случае мое приложение контролирует, является ли серийный номер пользователя истинным или нет. После того, как пользователи ввели свой серийный ключ, мое приложение начинает сравнивать серийные номера в базе данных sql. Вы можете использовать этот Руководство по рекордам на стороне сервера для своей начальной точки. Я сделал то же самое. Выполните следующие действия, после чего вы сможете получить доступ к своей базе данных sql в Unity.