【通过sql server express将Android应用程序连接到sql server】欠伸展肢体,吟咏心自愉。这篇文章主要讲述通过sql server express将Android应用程序连接到sql server相关的知识,希望能为你提供帮助。
我一直在寻找一种方法将android应用程序连接到SQL服务器。尝试了不同的代码并询问了许多程序员。没到任何地方。似乎问题出在连接url中。
我要做的应用程序涉及创建一些sql表。例如,在开始时,它需要修改用户针对其中一个表中的数据提供的登录数据。除了Android studio之外,我还被引导安装和使用SQL server express(没有别的)。
使用SQL server express 2008 R2我在我的计算机和表上创建了一个数据库。与服务器的连接不起作用。我找到的代码总是包含密码和连接的用户名。那是强制性的吗?我安装服务器时没有获得连接的用户名。它涉及获取实例名称和密码。
我搜索了连接url参数的信息,以便修复我得到的网址。找不到我需要改变的东西。
我找到了一个代码,通过它可以定义密码和用户名:
private Connection conn;
public mysqlConnection() throws SQLException {System.out.println("At MySQLConnection()");
String driverName = "com.mysql.jdbc.Driver";
try {
Class.forName(driverName);
Properties props = new Properties();
props.setProperty("user","fred");
props.setProperty("password","secret");
props.setProperty("ssl","true");
String url = "jdbc:mysql://zivpc/workers?user=fred&
password=secret&
ssl=true";
Connection conn = DriverManager.getConnection(url);
this.conn = DriverManager.getConnection(url);
System.out.println("connected");
} catch (ClassNotFoundException e) {
System.out.println(e);
}
尝试连接结果时出现以下异常:
CommunicationsException: Communications link failure
。谢谢!
答案您将需要在Web服务器上运行的API(REST等),该Web服务器可以访问防火墙关闭的数据库服务器。并对您的API进行身份验证,以便您没有随机的人DDoSing您的服务和数据库。
您的数据库服务器根本不应暴露给互联网,也不能直接从您的客户端访问。您也不应该直接从客户端向数据库服务器发送SQL查询。您的API公开了一组功能,并且对客户端可以请求和接收的内容进行了非常严格的限制。
移动应用程序 - > 互联网 - > Web服务器 - > 防火墙 - > SQL Server
“我如何实现这个”的细节远远超出了Stack Overflow的范围。在线提供了大量的教程和演练。做出明智的选择。
附加说明:您说您正在使用SQL Server 2008R2 Express Edition。请注意,此版本的SQL Server将在不到三个月的时间内完成EOL。在过去的5年里,没有人应该对它进行新的开发。从2019年“引导”您安装此版本的人那里小心劝告。
推荐阅读
- Android操作系统上的启动器
- 更新后Android Studio 3.3到3.4 AAPT2生成错误
- 错误Appstore连接(Info.plist文件中缺少目的字符串)
- 用于签署“AppName”的证书已过期或已被撤销。签署和安装应用程序需要更新的证书
- 如何在HTML中运行具有依赖项jar文件的Applet
- 使用TypeScript,依赖注入和Discord Bot
- 使用CSS和JavaScript构建自定义的全页滑块
- 展望JavaScript的未来
- 如何进行现代WordPress开发(第1部分)