Acceso directo a SQL Server desde Android

A veces, necesitamos ejecutar aplicaciones móviles para una red local. El driver de código abierto JDBC 3.0 Type 4 para Microsoft SQL Server (6.5 hasta 2012) y Sybase ASE. jTDS es una implementación completa de la especificación JDBC 3.0 y el driver JDBC más rápido para MS SQL Server.

Entrando en materia

1. Desarrollo Básico de Android
2. Puede utilizarse SQL Server

Código XML GUI

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="8dp"
    android:background="#336699"
    android:orientation="vertical"
    tools:context="${relativePackage}.${activityClass}" >

    <EditText
        android:id="@+id/etFirstName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="4dp"
        android:background="#eeeeee"
        android:hint="Firstname"
        android:textColor="#000000"
        android:layout_marginBottom="4dp"
        android:textSize="24dp" >

        <requestFocus />
    </EditText>

    <EditText
        android:id="@+id/etLastName"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#eeeeee"
        android:hint="Lastname"
        android:padding="4dp"
        android:textColor="#000000"
        android:textSize="24dp" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="4dp" >

        <Button
            android:id="@+id/btnConnect"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Connect" />

        <Button
            android:id="@+id/btnAdd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
             android:layout_weight="1"
            android:text="Add new" />
    </LinearLayout>

    <TextView
        android:id="@+id/tvDs"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#ffffff"
        android:padding="8dp"
        android:text=""
        android:textAppearance="?android:attr/textAppearanceMedium" />

</LinearLayout>

Registro del permiso de acceso a tu App

StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);

Conectar a MS SQL Server por JDBC

Class.forName("net.sourceforge.jtds.jdbc.Driver").newInstance();
            conn = DriverManager.getConnection(""
                            + "jdbc:jtds:sqlserver://172.16.160.81/northwind;instance=SQL2008;"
                            + "user=sa;password=sa;");

Descripción

  • 172.16.160.81 es la dirección del servidor de tu base de datos
  • northwind: acceso a base de datos
  • SQL2008 es una instancia del server
  • usuario y contraseña

Leyendo datos

Statement comm;
try {
// create command to read data
    comm = conn.createStatement();
    ResultSet rs = comm.executeQuery("Select EmployeeID, Firstname From Employees");
    String msg = "";
// read all row
    while (rs.next()) {
        msg += "nID: " + rs.getInt("EmployeeID") + " Name: "
                + rs.getString("Firstname");
    }
    tv.setText(msg);
} catch (SQLException e) {
    tv.setText(e.toString());
}

Añadimos registro

PreparedStatement comm;
try {
    comm = conn.prepareStatement("insert into Employees("
            + "firstname, lastname) values(?,?)");
    comm.setString(1, etFirst.getText().toString());
    comm.setString(2, etLast.getText().toString());   
// run commandto add new rocord                 
    comm.executeUpdate();
} catch (SQLException e) {
    tv.setText(e.toString());
}

Y este ha sido el tutorial sobre cómo acceder directamente a SQL Server desde Android, esperamos que te haya gustado y sepas aplicarlo en tus futuros proyectos. Ya sabes que si nos quieres proponer un tema que quieres ver reflejado como un tutorial o como una práctica, solo tienes que hacer uso del área de comentarios de un poco más abajo. Por el contrario, si quieres enviarnos tus propios tutoriales, puedes hacerlo a través de la intranet de usuarios que está habilitada para ello, a través del menú Enviar Tutorial. Ya sabes, ayúdanos a crecer con tus conocimientos. ¡Un saludo y feliz código!

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP