String[] items = new String[10];
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Create a variable for the connection string.
String connectionUrl = "jdbc:sqlserver://servername.database.windows.net;" +
"databaseName=School;[email protected];password=userpassword";
// Declare the JDBC objects.
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.list_item,
new ArrayList()));
new AddStringTask().execute();
try {
// Establish the connection.
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection(connectionUrl);
// Create and execute an SQL statement that returns some data.
String SQL = "SELECT TOP 10 * FROM dbo.tbl";
stmt = con.createStatement();
rs = stmt.executeQuery(SQL);
// Iterate through the data in the result set and display it.
while (rs.next()) {
String items = rs.getArray(2) + " " + rs.getArray(3);
}
}
// Handle any errors that may have occurred.
catch (Exception e) {
e.printStackTrace();
}
finally {
if (rs != null) try { rs.close(); } catch(Exception e) {}
if (stmt != null) try { stmt.close(); } catch(Exception e) {}
if (con != null) try { con.close(); } catch(Exception e) {}
}
}
class AddStringTask extends AsyncTask<Void, String, Void> {
@Override
protected Void doInBackground(Void... unused) {
return(null);
}
@Override
protected void onProgressUpdate(String... item) {
((ArrayAdapter)getListAdapter()).add(item[0]);
}
@Override
protected void onPostExecute(Void unused) {
Toast
.makeText(AsyncDemo.this, "Done!", Toast.LENGTH_SHORT)
.show();
}
}
在onCreate內部的while循環中,我想從遠程數據庫的sql azure表中獲得10行和2列,然後將其存儲在一個字符串數組中。然後,該字符串數組以列表視圖的形式輸出給用戶。 JDBC驅動下載鏈接min.bz/wC4Am(非Windows用戶獲取壓縮文件,最後一個列出)還更新了鏈接。如何將sql azure數據檢索到列表視圖中?
ALP巴爾幹THX。看起來我將使用Web服務來獲取數據。 – camelCaseD
是的,這是更安全和方便的解決方案。 –