Подключение к MS SQL (РЕШЕНО)

Программирование на Юнити.

Подключение к MS SQL (РЕШЕНО)

Сообщение TimmyMulla 24 мар 2010, 18:13

Всем добрый!

Пытаюсь подключиться к базе MS SQL 2005 Express из Юнити.

Через Яву:
Синтаксис:
Используется javascript
import System.Data.SqlClient;

function Start() {

        //
        var _source : String = "server=ORGANIZM\\SQLEXPRESS;database=unity_test;uid=sa;pwd=123456";
        var _con : SqlConnection = new SqlConnection(_source);
        _con.Open();
        Debug.Log("We good");
        _con.Close();

}
 


В ответ ошибка:
SocketException: Connection reset by peer

Через Шарп:
Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;
using System.Data.SqlConnection;

public class MSSQL : MonoBehaviour {

        // Use this for initialization
        void Start () {
               
                string source = "server=ORGANIZM\\SQLEXPRESS;database=unity_test;uid=sa;pwd=123456";
                SqlConnection conn = new SqlConnection(source);
                conn.Open();
                conn.Close();
       
        }
}
 

В ответ ошибка:
error CS0234: The type or namespace name `Data' does not exist in the namespace `System'.

Уже мозг себе съел...

Помогите люди добрые - как к базе подцепиться? ^:)^
Последний раз редактировалось TimmyMulla 26 мар 2010, 09:07, всего редактировалось 2 раз(а).
Аватара пользователя
TimmyMulla
UNец
 
Сообщения: 47
Зарегистрирован: 13 фев 2010, 10:07
Откуда: Екатеринбург

Re: Подключение к MS SQL

Сообщение TimmyMulla 24 мар 2010, 18:33

Кажись понял: просто в бесплатной версии Юнити не работает. Жаль )
Аватара пользователя
TimmyMulla
UNец
 
Сообщения: 47
Зарегистрирован: 13 фев 2010, 10:07
Откуда: Екатеринбург

Re: Подключение к MS SQL

Сообщение gnoblin 24 мар 2010, 21:36

А должно работать в бесплатной :ymsmug:
skypeid: madkust
Мои крайние проекты:
Убойный Хоккей
Cube Day Z (альфа)
Аватара пользователя
gnoblin
Адепт
 
Сообщения: 4633
Зарегистрирован: 08 окт 2008, 17:23
Откуда: Минск, Беларусь
Skype: madkust
  • Сайт

Re: Подключение к MS SQL

Сообщение marooned 24 мар 2010, 22:54

А чо? Систем.Дата перенеси в плагинс и всё заработает...У меня работает по крайней мере...
Аватара пользователя
marooned
UNец
 
Сообщения: 37
Зарегистрирован: 20 сен 2009, 19:26

Re: Подключение к MS SQL

Сообщение TimmyMulla 25 мар 2010, 08:54

Эм... Т.е. если я правильно понял, то обращение к БД MS SQL напрямую из бесплатной версии Юнити работать должно?
И, т.е., у меня просто руки надо выпрямить? :)
Превосходно! Будем возюкаться двальше...

Хотя остается открытым вопрос: что означает ошибка SocketException: Connection reset by peer?
Аватара пользователя
TimmyMulla
UNец
 
Сообщения: 47
Зарегистрирован: 13 фев 2010, 10:07
Откуда: Екатеринбург

Re: Подключение к MS SQL

Сообщение TimmyMulla 25 мар 2010, 14:10

Систем.Дата закинул в плагинс. Ругаться на нэймспэйс в шарпе перестало.

Но теперь оба скрипта говорят одно и то же:
SocketException: Connection reset by peer

Не могу дотепкать с чем связано сие ругательство...

Люди! Человеки! Помогите :)

Может у кого есть опыт подключения из Юни (бесплатной) в MSSQL?
Аватара пользователя
TimmyMulla
UNец
 
Сообщения: 47
Зарегистрирован: 13 фев 2010, 10:07
Откуда: Екатеринбург

Re: Подключение к MS SQL - еще чуть-чуть помогите, плз )

Сообщение marooned 25 мар 2010, 22:44

А может попробовать сразу не закрывать коннект?
У меня ощущение что отклик нада как-то получить штоле а уж потом закрывать....но это только предположение
Аватара пользователя
marooned
UNец
 
Сообщения: 37
Зарегистрирован: 20 сен 2009, 19:26

Re: Подключение к MS SQL - еще чуть-чуть помогите, плз )

Сообщение TimmyMulla 26 мар 2010, 09:06

Вобщем так.

С вопросом разобрался.

1. Трабл был в закрытых портах :) Фаервол их тупо блокировал :)
2. Поковырялся по форумам, справке ипр и выяснил следующее:

а) Прямой коннект к базе - не есть гуд, ибо имея прямые руки злопользователь могет поиметь базу, а так же прямой коннект не фурычит в web-playere (во всяком случае так утверждают; сам проверял - не работало; хотя может и есть способ)
б) Реализовывать доступ к базе лучше через WWW и WWWForm и сценарии на web-сервере (PHP/ASP). Через WWWForm можно передавать стринги и байты (AddField, AddBinaryData), при этом можно передать хоть гигабайт данных - все упирается в ограничения web-сервера. Кому интересно и или есть вопросы как это организовать - могу помочь. Сейчас код не выкладываю, ибо у жены др - времени мало.

Для тех, кто все таки решил использовать прямой коннект:
Обсуждение на форуме unity3d.com - присутствует реально работающий код, с комментариями по применению.

Ну и справка по WWWForm, где есть пример использования.

Вот.
Аватара пользователя
TimmyMulla
UNец
 
Сообщения: 47
Зарегистрирован: 13 фев 2010, 10:07
Откуда: Екатеринбург

Re: Подключение к MS SQL (РЕШЕНО)

Сообщение king_kong 29 янв 2012, 00:46

подскажите сто не так делаю

Синтаксис:
Используется csharp
        public string server = "localhost";
        public string user = "root";
        public string password = "789456123";
        public string dataBase = "MyFPS";
        SqlConnection dbcon;

        void Start ()
        {
                string connectionString = "Server=" + server + ";User=" + user + ";Password=" + password + ";DataBase=" + dataBase + ";";
                dbcon = new SqlConnection (connectionString);
                dbcon.Open ();         
        }
 


в консольном проекте работает, а в юнити выдаёт вот это

SocketException: Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.

System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP, Boolean requireSocketPolicy)
System.Net.Sockets.Socket+Worker.Connect ()
Rethrow as TdsInternalException: Server does not exist or connection refused.
Mono.Data.Tds.Protocol.TdsComm..ctor (System.String dataSource, Int32 port, Int32 packetSize, Int32 timeout, TdsVersion tdsVersion)
Mono.Data.Tds.Protocol.Tds..ctor (System.String dataSource, Int32 port, Int32 packetSize, Int32 timeout, TdsVersion tdsVersion)
Mono.Data.Tds.Protocol.Tds70..ctor (System.String server, Int32 port, Int32 packetSize, Int32 timeout, TdsVersion version)
Mono.Data.Tds.Protocol.Tds80..ctor (System.String server, Int32 port, Int32 packetSize, Int32 timeout)
Mono.Data.Tds.Protocol.TdsConnectionPoolManager.CreateConnection (Mono.Data.Tds.Protocol.TdsConnectionInfo info)
Mono.Data.Tds.Protocol.TdsConnectionPool.GetConnection ()
System.Data.SqlClient.SqlConnection.Open ()
Rethrow as SqlException: Server does not exist or connection refused.
System.Data.SqlClient.SqlConnection.Open ()
(wrapper remoting-invoke-with-check) System.Data.SqlClient.SqlConnection:Open ()
SqlServer.Start () (at Assets/Scripts/SqlServer.cs:20)
Аватара пользователя
king_kong
UNец
 
Сообщения: 40
Зарегистрирован: 03 июн 2011, 21:58
Откуда: Барнаул


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12