如何改进SQL连接



大家好,我正在开发的应用程序是将数据从android应用程序发送到MS-SQL服务器和C#中的主窗口软件,该软件从MS SQL服务器接收数据。问题是这些程序需要太多时间来建立连接,尤其是在android应用程序中,有时它会使应用程序崩溃。顺便说一下,在我们国家,网速有时每周都在增长。我搜索了一个解决方案,但在互联网上找不到,我想不出任何方法来解决它。我看到了Viber,Watsapp,Massenger。。。即使网速是周,它也会立即或同步发送数据。所以我可以得到一些帮助和建议吗。还有一种连接助手方法:


公共连接连接(({

IP="www.examlple.net";
DB="DB_test";
DBUserName="admin";
DBPassword="*****";    
StrictMode.ThreadPolicy policy= new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
Connection connection=null;
String connectionURL=null;
try {
Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();
connectionURL ="jdbc:jtds:sqlserver://"+IP+";DatabaseName="+DB+";integratedSecurity=true;user="+DBUserName+";password="+DBPassword;
connection = DriverManager.getConnection(connectionURL);
} catch (SQLException | ClassNotFoundException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
}
return connection;
}

为了完整起见,使用JTDS可以在连接字符串上设置loginTimeoutsocketTimeout。请参阅此处的备注。

但正如其他人所说,你应该通过某种网络API。你真的想把你的SQL服务器暴露在互联网上吗?

此外,我刚刚注意到您已经指定了integrated security=true,并且还指定了用户名和密码。你不能那样做。一个用于windows身份验证(集成安全性(,另一个用于SQL身份验证(用户和密码(。您必须使用用户名和密码。但不要。不要这样做。通过网络API。

最新更新