MainActivity.java
-------------------------
package com.sql_android;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.os.Bundle;
import android.os.StrictMode;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleAdapter;
public class MainActivity extends Activity {
// crear objetos para la orientación
Button EXECUTAR;
EditText ValorBusca;
ListView Lista;
Connection connect;
SimpleAdapter AD;
// objetos orden - A la fecha
//
// Utilice las teclas CTRL + O para importar las bibliotecas que faltan.
//
// --------------------------
private void declarar() {
EXECUTAR = (Button) findViewById(R.id.btn_buscar);
ValorBusca = (EditText) findViewById(R.id.txt_buscar); // se txt_buscar
// es más
// EditarTexto
Lista = (ListView) findViewById(R.id.list_output);
}
private void inicializar() {
declarar(); // llamar a declaración
ValorBusca.setText("SELECT*FROM cliente"); // Voy a estar estableciendo
// un valor para la
// velocidad ...
connect = CONN("jorge", "123", "BBDev", "10.0.2.2:1433");
}
// ¡IMPORTANTE! - Método / función para conectarse a la base de datos.
@SuppressLint("NewApi")
private Connection CONN(String _user, String _pass, 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("net.sourceforge.jtds.jdbc.Driver");
ConnURL = "jdbc:jtds:sqlserver://" + _server + ";"
+ "databaseName=" + _DB + ";user=" + _user + ";password="
+ _pass + ";";
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;
}
public void QuerySQL(String COMANDOSQL) {
ResultSet rs;
try {
Statement statement = connect.createStatement();
rs = statement.executeQuery(COMANDOSQL);
// Ajuste nuestra SimpleAdapter
List<Map<String, String>> data = null;
data = new ArrayList<Map<String, String>>();
while (rs.next()) { // navegar por nuestro ResultSet en cada
// registro, siempre y cuando un prox.
Map<String, String> datanum = new HashMap<String, String>();
datanum.put("A", rs.getString("nombre"));
datanum.put("B", rs.getString("apellido"));
data.add(datanum);
}
String[] from = { "A", "B" };
int[] views = { R.id.txt_titulo, R.id.txt_conteudo }; // vamos a
// crear un
// modelo de
// adaptador
// de líneas
AD = new SimpleAdapter(this, data, R.layout.modelo, from, views);
Lista.setAdapter(AD);
} catch (Exception e) {
Log.e("ERRO", e.getMessage());
}
}
// PRONTO, bora produzir?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
inicializar();
EXECUTAR.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
QuerySQL(ValorBusca.getText().toString());
}
});
}
}