[英]The page designs are different on the Android studio ide and when I build it into my Android phone
[英]How do i get this database connection code in my android studio IDE to run on my phone
我正在尝试使用手机从android studio IDE运行此代码,并且它正在启动和关闭。 我已经下载了Microsoft sql数据库和Microsoft sql驱动程序,但仍然出现此错误。 谁能帮忙吗?
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;
}
}
请检查您的连接字符串。 看起来不太好。
这是示例字符串。
jdbc:sqlserver://localhost;user=MyUserName;password=*****;
有关详细信息, 请参见https://msdn.microsoft.com/zh-cn/library/ms378428(v=sql.110).aspx 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.