简体   繁体   中英

Please enable TCP/IP protocol. Unity3D

I am trying to connect to MS SQL database. Here is my code:

void Start ()
    {
        string connectionString =
            "Server=MyServer;" +
            "Database=Data;" +
            "User ID=User;" +
            "Password=psd;" +
            "Integrated Security=SSPI";
               Debug.Log("conn string");

    List<int> result = new List<int>();

        string sql = "SELECT RecordCount FROM MainDB";
        IDbConnection dbcon;
        dbcon = new SqlConnection (connectionString);
        dbcon.Open ();
        IDbCommand dbcmd = dbcon.CreateCommand ();
              dbcmd.CommandText = sql;
        IDataReader rdr = dbcmd.ExecuteReader ();

        while (rdr.Read()) {
            result.Add ((int)rdr.GetValue(0));
        }

        Debug.Log("get"); 
        // clean up
        rdr.Close ();
        rdr = null;
        dbcmd.Dispose ();
        dbcmd = null;
        dbcon.Close ();
    dbcon = null;
    }

I copyed most of code from mono-project. I allowed UDP port 1434 and mono.exe in my firewall rules. And Iam still getting message:

NotImplementedException: Mono does not support names pipes or shared memory for connecting to SQL Server. Please enable the TCP/IP protocol. System.Data.SqlClient.SqlConnection+SqlMonitorSocket.DiscoverTcpPort (Int32 timeoutSeconds) System.Data.SqlClient.SqlConnection.DiscoverTcpPortViaSqlMonitor (System.String ServerName, System.String InstanceName) System.Data.SqlClient.SqlConnection.ParseDataSource (System.String theDataSource, System.Int32& thePort, System.String& theServerName) System.Data.SqlClient.SqlConnection.Open () ConnectToDB.Start () (at Assets/ConnectToDB.cs:33)

What am I missing?

如果需要帮助建立TCP / IP套接字,您可以使用流行的第三方解决方案,如SmartFox ServerPhoton

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM