gpt4 book ai didi

java - 连接被拒绝 Android studio 连接 Sql Server 显示错误

转载 作者:行者123 更新时间:2023-12-02 01:46:38 26 4
gpt4 key购买 nike

我正在使用 Android Studio 和 Sqlserver 创建一个简单的 CRUD。当我将数据添加到数据库时,我收到错误 ConnectionRefusedError。我已在下面附上我迄今为止尝试过的代码。我已经尝试连接数据库 2 天了,但它不允许我。

我成功添加jar文件jtds-1.2.7.jar

我得到了 SQL 服务器的 IP 地址及其端口

enter image description here

xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">

<TextView
android:id="@+id/view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="View"

/>

<EditText
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"


/>

<EditText
android:id="@+id/course"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"

android:inputType="textMultiLine" />

<Button
android:id="@+id/btn1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="OK" />

<Button
android:id="@+id/v1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="View" />

</LinearLayout>

java

 import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class MainActivity extends AppCompatActivity {
EditText ed1,ed2;
Button b1,b2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

ed1 = findViewById(R.id.title);
ed2 = findViewById(R.id.course);
b1 = findViewById(R.id.btn1);
b2 = findViewById(R.id.v1);
b1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
insert();
}
});
}

public void insert() {
try {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
String connectionUrl = "jdbc:jtds:sqlserver://192.168.84.2; databaseName=skill; port =0; user=sa; password=admin123";
Connection con = DriverManager.getConnection(connectionUrl);
PreparedStatement pst;
String title = ed1.getText().toString();
String description = ed2.getText().toString();
pst = con.prepareStatement("insert into course(coursename,fee)values(?,?)");
pst.setString(1, title);
pst.setString(2, description);
pst.executeUpdate();
Toast.makeText(this, "Success", Toast.LENGTH_LONG).show();

ed1.setText("");
ed2.setText("");
ed1.requestFocus();
} catch (Exception ex) {
Toast.makeText(this, "Record Fail", Toast.LENGTH_LONG).show();
}
}

最佳答案

ConnectionRefused 错误仅意味着主机拒绝该端口上的连接。也许该端口被主机的防火墙阻止了?如果您有权访问主机,则只需解锁端口即可。请报告您的发现。

关于java - 连接被拒绝 Android studio 连接 Sql Server 显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57450987/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com