0
내 전화를 사용하여 내 안드로이드 스튜디오 IDE에서이 코드를 실행하려고하면 시작 및 종료됩니다. 나는 Microsoft SQL 데이터베이스와 Microsoft SQL 드라이버를 다운로드했으며 여전히이 오류가 발생합니다. 아무도 도와 줄 수 있습니까?내 안드로이드 스튜디오 IDE에서이 데이터베이스 연결 코드를 내 휴대폰에서 실행하려면 어떻게해야합니까?
import android.annotation.SuppressLint;
import android.os.StrictMode;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.Toast;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
Spinner spinnervendors;
String ip, db;
Connection connect;
PreparedStatement stmt;
ResultSet rs;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ip = "127.0.0.1";
db = "Vendors";
spinnervendors = (Spinner) findViewById(R.id.spinnervendors);
connect = CONN(db, ip);
String query = "Select CompanyName from Products";
try {
connect = CONN(db, ip);
stmt = connect.prepareStatement(query);
rs = stmt.executeQuery();
ArrayList<String> data = new ArrayList<String>();
while (rs.next()) {
String id = rs.getString("CompanyName");
data.add(id);
}
String[] array = data.toArray(new String[0]);
ArrayAdapter NoCoreAdapter = new ArrayAdapter(this,
android.R.layout.simple_list_item_1, data);
spinnervendors.setAdapter(NoCoreAdapter);
} catch (SQLException e) {
e.printStackTrace();
}
spinnervendors.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
String name = spinnervendors.getSelectedItem().toString();
Toast.makeText(MainActivity.this, name, Toast.LENGTH_SHORT)
.show();
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
}
@SuppressLint("NewApi")
private Connection CONN(String _DB, String _server) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
.permitAll().build();
StrictMode.setThreadPolicy(policy);
Connection conn = null;
String ConnURL = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
ConnURL = "jdbc:sqlserver://localhost" + "Vendors";
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;
}
}
오류 메시지가 표시됩니까? IDE에서 전체 오류 메시지와 스택 추적을 얻기 위해 실행할 수 있습니까? – ColonelCustard
아니요 오류 메시지가 표시되지 않습니다. – Bolajio