Подключение из Unity3D к базе данных Firebird

Unity3D Firebird

Эта статья — пример подключения к базе данных Firebird 2.5 и выполнения запросов из среды разработки Unity3D версии 4.3.

Кидаем в папку Assets библиотеку FirebirdSql.Data.FirebirdClient.dll (это ADO.NET Data Provider версии 2.5.2.0)

Кладем файл базы данных, с которой будем работать (у меня она находится «d:\unity3D\FirebirdTest\BASE.FDB»)

Вешаем скрипт подключения на любой удобный объект:
[code]using UnityEngine;
using System.Collections;
using FirebirdSql.Data.FirebirdClient;

public class Firebird : MonoBehaviour {

void Start () {
string ConnectionString = «UserID=SYSDBA;Password=masterkey;» +
«Database=D:\\Unity3D\\FirebirdTest\\BASE.fdb; » + «DataSource=127.0.0.1;Charset=win1251;»;

FbConnection Connection = new FbConnection(ConnectionString);
Connection.Open();
Debug.Log(«Удачно»);
FbCommand readCommand = new FbCommand(«select count(*) from RDB$RELATIONS»,Connection);
FbDataReader myreader = readCommand.ExecuteReader();
while (myreader.Read())
{
Debug.Log(myreader[0]);

}
myreader.Close();
Connection.Close();
}
}[/code]
Данный скрипт для примера выполняет подключение к БД, и выводит в лог два сообщения — первое об удачном соединении, а второе — результат выполнения SQL запроса:

Unity3D_FirebirdTestConnection

 

 

 

 

 

В среде разработки все это замечательно работает, но при попытке сделать билд под windows систему получаем такую ошибку:
The Assembly System.Windows.Forms is referenced by FirebirdSql.Data.FirebirdClient. But the dll is not allowed to be included or could not be found.
Проблема решается изменением параметра File/Buildsettings/Playersettings/Othersettings -> Api Compatibility Level «net2.0 subset» на «net2.0».

Запись опубликована в рубрике Программирование с метками , . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *