아직이 게시물의 일체형 답변 포럼에 대한 의견이 없으므로 여기에 게시하여 공개 여부를 확대하고 있습니다.Unity 5.3.5f 및 SQL Server 2008 R2 : '기존 연결이 원격 호스트에 의해 강제로 닫혔습니다.'
이 질문은 화합 포럼에서 몇 번이지만 내 문제를 해결 한 답변이없는 것으로 보입니다. 단결 5.3.5f, SQL Server 2008 R2 Express (SQL Server 2016을 실행 중이지만 모노 dll은 SQL Server 2008까지만 호환 됨)를 실행 중입니다. 내 자산 폴더에 올바른 모노 dll이 있고 프로젝트에서 올바르게 참조 및 빌드되었습니다. 데이터베이스를 로컬에서 실행하고 있습니다. 나는 SQL Server Management Studio와 Visual Studio 2015를 사용하여 문제없이 잘 연결할 수 있습니다. 방화벽을 완전히 삭제했습니다. 지금 당장 나는 그것을 단일성 내부에서 작동 시키려고 노력하고있다. 또한 SQL Server Management Studio에서 들어오는 연결을 허용하고 SQL Server 구성 관리자에서 tcp/ip를 사용할 수 있는지 확인했습니다.
또한 통합 매뉴얼을 살펴보면 데이터베이스 연결에 대한 설명서가 지금까지 나와 있습니다.
내 코드 :
public string RetrieveTestData(string query) { string sqlConnectionString = "Server=zzzz\\SQLEXPRESS2008;" + "Database=mydb;" + "User ID=sa;" + "Password=mypass;";
Debug.Log(sqlConnectionString);
SqlConnection con = new SqlConnection(sqlConnectionString);
try
{
con.Open(); // error thrown here
SqlCommand cmd = new SqlCommand(query, con);
var fubar = cmd.ExecuteScalar();
con.Close();
return fubar.ToString();
}
catch (Exception ex)
{
Debug.Log(ex.StackTrace);
throw;
}
public void TestQuery()
{
Debug.Log(RetrieveTestData("select top 1 * from dbo.Weapon"));
}
내 오류 :이 내 모든 진행 상황을 들고 단일 항목을 그대로
SocketException: An existing connection was forcibly closed by the remote host.
Stack trace:
at System.Net.Sockets.Socket.ReceiveFrom_nochecks_exc (System.Byte[] buf, Int32 offset, Int32 size, SocketFlags flags, System.Net.EndPoint& remote_end, Boolean throwOnError, System.Int32& error) [0x00000] in :0 at System.Net.Sockets.Socket.ReceiveFrom_nochecks (System.Byte[] buf, Int32 offset, Int32 size, SocketFlags flags, System.Net.EndPoint& remote_end) [0x00000] in :0 at System.Net.Sockets.Socket.ReceiveFrom (System.Byte[] buffer, System.Net.EndPoint& remoteEP) [0x00000] in :0 at System.Net.Sockets.UdpClient.Receive (System.Net.IPEndPoint& remoteEP) [0x00000] in :0 at System.Data.SqlClient.SqlConnection+SqlMonitorSocket.DiscoverTcpPort (Int32 timeoutSeconds) [0x00000] in :0 at System.Data.SqlClient.SqlConnection.DiscoverTcpPortViaSqlMonitor (System.String ServerName, System.String InstanceName) [0x00000] in :0 at System.Data.SqlClient.SqlConnection.ParseDataSource (System.String theDataSource, System.Int32& thePort, System.String& theServerName) [0x00000] in :0 at System.Data.SqlClient.SqlConnection.Open() [0x00000] in :0 at (wrapper remoting-invoke-with-check) System.Data.SqlClient.SqlConnection:Open() at Assets.Scripts.Data.DBBase.RetrieveTestData (System.String query) [0x00013] in C:\Development\Unity\twistedshadowsgame\TwistedShadows\Assets\Scripts\Data\DBBase.cs:23 UnityEngine.Debug:Log(Object) Assets.Scripts.Data.DBBase:RetrieveTestData(String) (at Assets/Scripts/Data/DBBase.cs:35) Assets.Scripts.Data.DBBase:TestQuery() (at Assets/Scripts/Data/DBBase.cs:43) Assets.Scripts.Data.DBBase:Start() (at Assets/Scripts/Data/DBBase.cs:48)
모든 도움에 감사드립니다. 내가 뭔가를 게시하지 않았거나 다른 곳에 게시해야 할 경우 알려 주시기 바랍니다. 차라리 별도의 휴식 서비스를받을 필요가 없습니다. 나는 단결에 역량이 있으며 많은 사람들이 성공적으로 해낸 것처럼 읽었습니다.
미리 감사드립니다. ryan