我创建了一个SQL Server 2012数据库。我需要使用在另一台PC上创建的Java应用程序连接到数据库。这是我的代码,但我无法连接到数据库,我收到错误:“登录失败。登录来自不受信任的域,不能与Windows身份验证一起使用。” (我的代码在Java应用程序和SQL服务器在同一台PC上运行时工作)。 感谢您的帮助。
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String jdbcUrl = "jdbc:sqlserver://THINKPADPC:1433;databaseName=TestDB;integratedSecurity=true;";
conn = DriverManager.getConnection(jdbcUrl);
答案 0 :(得分:1)
您是否尝试过sql server身份验证?并传递用户名和密码。
如果您尝试使用Windows身份验证,那么它可能会从您的(java)计算机获取凭据,而该计算机尚未在托管的sql server计算机上提供访问权限。
答案 1 :(得分:0)
Please Try this Connection and Change the ip, db , sa and password.
public class ConnectionClass {
String ip = "192.168.0.131";
String classs = "net.sourceforge.jtds.jdbc.Driver";
String db = "Andro";
String un = "sa";
String password = "Admnsql1~";
@SuppressLint("NewApi")
public Connection CONN() {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
.permitAll().build();
StrictMode.setThreadPolicy(policy);
Connection conn = null;
String ConnURL = null;
try {
Class.forName(classs);
ConnURL = "jdbc:jtds:sqlserver://" + ip + ";"
+ "databaseName=" + db + ";user=" + un + ";password="
+ password + ";";
conn = DriverManager.getConnection(ConnURL);
} catch (SQLException se) {
Log.e("ERRO", se.getMessage());
} catch (ClassNotFoundException e) {
Log.e("ERRO", e.getMessage());
} catch (Exception e) {
Log.e("ERRO", e.getMessage());
}
return conn;
}`enter code here`
}