Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 无法创建数据库SQLite?_Android_Database_Sqlite_Parsing - Fatal编程技术网

Android 无法创建数据库SQLite?

Android 无法创建数据库SQLite?,android,database,sqlite,parsing,Android,Database,Sqlite,Parsing,这是我上一个问题的继续。我已经为数据库编写了代码,但当我运行应用程序时,它不会创建数据库。我不知道哪里出错了,但在eclipse中,我的代码没有显示任何错误。这里是我的应用程序代码 MainActivity.java public class MainActivity extends ListActivity { static final String URL = "http://data.bmkg.go.id/propinsi_15_2.xml"; static final String KE

这是我上一个问题的继续。我已经为数据库编写了代码,但当我运行应用程序时,它不会创建数据库。我不知道哪里出错了,但在eclipse中,我的代码没有显示任何错误。这里是我的应用程序代码

MainActivity.java

public class MainActivity extends ListActivity {
static final String URL = "http://data.bmkg.go.id/propinsi_15_2.xml";
static final String KEY_ITEM = "Cuaca";
static final String KEY_ID = "Isi";
static final String KEY_ROW = "Row";
static final String KEY_KOTA = "Kota";
static final String KEY_LINTANG = "Lintang";
static final String KEY_BUJUR = "Bujur";
static final String KEY_CUACA = "Cuaca";
static final String KEY_SUHUMIN = "SuhuMin";
static final String KEY_SUHUMAX = "SuhuMax";
static final String KEY_KELEMBAPANMIN = "KelembapanMin";
static final String KEY_KELEMBAPANMAX = "KelembapanMax";
static final String KEY_KECEPATANANGIN = "KecepatanAngin";
static final String KEY_ARAHANGIN = "ArahAngin";
private ProgressDialog pDialog;


ArrayList<HashMap<String, String>> menuItems = new ArrayList<HashMap<String,String>>();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    new AmbilData().execute();

    DatabaseHandler db = new DatabaseHandler(this);
}

class AmbilData extends AsyncTask<String, String, String>{
    protected void onPreExecute(){
        super.onPreExecute();
        pDialog = new ProgressDialog(MainActivity.this);
        pDialog.setMessage("Loading, Mohon Menunggu Beberapa saat...");
        pDialog.setIndeterminate(false);
        pDialog.setCancelable(true);
        pDialog.show();
    }

    protected String doInBackground (String... args){
        XMLParser parser = new XMLParser();
        String xml = parser.getXmlFromUrl(URL);
        Document doc = parser.getDomElement(xml);

        NodeList nl = doc.getElementsByTagName(KEY_ROW);
        for (int i = 0; i < nl.getLength(); i++) {
            HashMap<String, String> map = new HashMap<String, String>();

            Element e = (Element) nl.item(i);

            map.put(KEY_KOTA, parser.getValue(e, KEY_KOTA));
            map.put(KEY_LINTANG, parser.getValue(e, KEY_LINTANG));
            map.put(KEY_BUJUR, parser.getValue(e, KEY_BUJUR));
            map.put(KEY_CUACA, parser.getValue(e, KEY_CUACA));
            map.put(KEY_SUHUMIN, parser.getValue(e, KEY_SUHUMIN));
            map.put(KEY_SUHUMAX, parser.getValue(e, KEY_SUHUMAX));
            map.put(KEY_KELEMBAPANMIN, parser.getValue(e, KEY_KELEMBAPANMIN));
            map.put(KEY_KELEMBAPANMAX, parser.getValue(e, KEY_KELEMBAPANMAX));
            map.put(KEY_KECEPATANANGIN, parser.getValue(e, KEY_KECEPATANANGIN));
            map.put(KEY_ARAHANGIN, parser.getValue(e, KEY_ARAHANGIN));

            menuItems.add(map);
        }
        return null;
    }
    protected void onPostExecute(String file_url){
        pDialog.dismiss();
        runOnUiThread(new Runnable() {

            @Override
            public void run() {
                // TODO Auto-generated method stub
                ListAdapter adapter = new SimpleAdapter(MainActivity.this, menuItems, R.layout.list_kota, new String[] {KEY_KOTA, KEY_CUACA, KEY_LINTANG, KEY_BUJUR, KEY_SUHUMIN, KEY_SUHUMAX, KEY_KELEMBAPANMIN, KEY_KELEMBAPANMAX, KEY_KECEPATANANGIN, KEY_ARAHANGIN}, new int[] {R.id.kota, R.id.cuaca, R.id.lintang, R.id.bujur, R.id.suhumin, R.id.suhumax, R.id.kelembapanmin, R.id.kelembapanmax, R.id.kecepatanangin, R.id.arahangin});
                setListAdapter(adapter);
            }
        });
    }
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}
public class KabupatenList {
// private variables
int _Row;
String _Kota;
String _Lintang;
String _Bujur;
String _Cuaca;
String _SuhuMin;
String _SuhuMax;
String _KelembapanMin;
String _KelembapanMax;
String _KecepatanAngin;
String _ArahAngin;

// Empty constructor
public KabupatenList() {

}

// constructor
public KabupatenList(int Row, String Kota, String Lintang, String Bujur,
        String Cuaca, String SuhuMin, String SuhuMax, String KelembapanMin,
        String KelembapanMax, String KecepatanAngin, String ArahAngin) {
    this._Row = Row;
    this._Kota = Kota;
    this._Lintang = Lintang;
    this._Bujur = Bujur;
    this._Cuaca = Cuaca;
    this._SuhuMin = SuhuMin;
    this._SuhuMax = SuhuMax;
    this._KelembapanMin = KelembapanMin;
    this._KelembapanMax = KelembapanMax;
    this._KecepatanAngin = KecepatanAngin;
    this._ArahAngin = ArahAngin;
}

// constructor
public KabupatenList(String Kota, String Lintang, String Bujur,
        String Cuaca, String SuhuMin, String SuhuMax, String KelembapanMin,
        String KelembapanMax, String KecepatanAngin, String ArahAngin) {
    this._Kota = Kota;
    this._Lintang = Lintang;
    this._Bujur = Bujur;
    this._Cuaca = Cuaca;
    this._SuhuMin = SuhuMin;
    this._SuhuMax = SuhuMax;
    this._KelembapanMin = KelembapanMin;
    this._KelembapanMax = KelembapanMax;
    this._KecepatanAngin = KecepatanAngin;
    this._ArahAngin = ArahAngin;
}

// getting row
public int getRow() {
    return this._Row;
}

// setting row
public void setRow(int Row) {
    this._Row = Row;
}

// getting kota
public String getKota() {
    return this._Kota;
}

// setting kota
public void setKota(String Kota) {
    this._Kota = Kota;
}

// getting lintang
public String getLintang() {
    return this._Lintang;
}

// setting lintang
public void setLintang(String Lintang) {
    this._Lintang = Lintang;
}

// getting bujur
public String getBujur() {
    return this._Bujur;
}

// setting bujur
public void setBujur(String Bujur) {
    this._Bujur = Bujur;
}

// getting cuaca
public String getCuaca() {
    return this._Cuaca;
}

// setting cuaca
public void setCuaca(String Cuaca) {
    this._Cuaca = Cuaca;
}

// getting suhumin
public String getSuhuMin() {
    return this._SuhuMin;
}

// setting suhumin
public void setSuhuMin(String SuhuMin) {
    this._SuhuMin = SuhuMin;
}

// getting suhumax
public String getSuhuMax() {
    return this._SuhuMax;
}

// setting suhumax
public void setSuhuMax(String SuhuMax) {
    this._SuhuMax = SuhuMax;
}

// getting kelembapanmin
public String getKelembapanMin() {
    return this._KelembapanMin;
}

// setting kelembapanmin
public void setKelembapanMin(String KelembapanMin) {
    this._KelembapanMin = KelembapanMin;
}

// getting kelembapanmax
public String getKelembapanMax() {
    return this._KelembapanMax;
}

// setting kelembapanmax
public void setKelembapanMax(String KelembapanMax) {
    this._KelembapanMax = KelembapanMax;
}

// getting kecepatan angin
public String getKecepatanAngin() {
    return this._KecepatanAngin;
}

// setting kecepatan angin
public void setKecepatanAngin(String KecepatanAngin) {
    this._KecepatanAngin = KecepatanAngin;
}

// getting arah angin
public String getArahAngin() {
    return this._ArahAngin;
}

// setting arah angin
public void setArahAngin(String ArahAngin) {
    this._ArahAngin = ArahAngin;
}
}
public class DatabaseHandler extends SQLiteOpenHelper {

// All Static variables
// Database Version
private static final int DATABASE_VERSION = 1;

// Database Name
private static final String DATABASE_NAME = "dbKabupaten";

// Contacts table name
private static final String TABLE_KABUPATEN = "tbKabupaten";

// Contacts Table Columns names
private static final String KEY_ROW = "Row";
private static final String KEY_KOTA = "Kota";
private static final String KEY_LINTANG = "Lintang";
private static final String KEY_BUJUR = "Bujur";
private static final String KEY_CUACA = "Cuaca";
private static final String KEY_SUHUMIN = "SuhuMin";
private static final String KEY_SUHUMAX = "SuhuMax";
private static final String KEY_KELEMBAPANMIN = "KelembapanMin";
private static final String KEY_KELEMBAPANMAX = "KelembapanMax";
private static final String KEY_KECEPATANANGIN = "KecepatanAngin";
private static final String KEY_ARAHANGIN = "ArahAngin";

public DatabaseHandler(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

// Creating Tables
@Override
public void onCreate(SQLiteDatabase db) {
    String CREATE_KABUPATEN_TABLE = "CREATE TABLE " + TABLE_KABUPATEN + "("
            + KEY_ROW + " INTEGER PRIMARY KEY," + KEY_KOTA + " TEXT,"
            + KEY_LINTANG + " TEXT" + KEY_BUJUR + " TEXT" + KEY_CUACA + " TEXT" + KEY_SUHUMIN + " TEXT" + KEY_SUHUMAX + " TEXT" + KEY_KELEMBAPANMIN + " TEXT" + KEY_KELEMBAPANMAX + " TEXT" + KEY_KECEPATANANGIN + " TEXT" + KEY_ARAHANGIN + " TEXT" +")";
    db.execSQL(CREATE_KABUPATEN_TABLE);
}

// Upgrading database
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // Drop older table if existed
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_KABUPATEN);

    // Create tables again
    onCreate(db);
}

/**
 * All CRUD(Create, Read, Update, Delete) Operations
 */

// Adding new contact
void addKabupatenList(KabupatenList kabupatenList) {
    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put(KEY_KOTA, kabupatenList.getKota()); // Kota
    values.put(KEY_LINTANG, kabupatenList.getLintang()); // Lintang
    values.put(KEY_BUJUR, kabupatenList.getBujur()); //Bujur
    values.put(KEY_CUACA, kabupatenList.getCuaca()); //Cuaca
    values.put(KEY_SUHUMIN, kabupatenList.getSuhuMin()); //SuhuMin
    values.put(KEY_SUHUMAX, kabupatenList.getSuhuMax()); //SuhuMax
    values.put(KEY_KELEMBAPANMIN, kabupatenList.getKelembapanMin()); //KelembapanMin
    values.put(KEY_KELEMBAPANMAX, kabupatenList.getKelembapanMax()); //KelembapanMax
    values.put(KEY_KECEPATANANGIN, kabupatenList.getKecepatanAngin()); //KecepatanAngin
    values.put(KEY_ARAHANGIN, kabupatenList.getArahAngin()); //ArahAngin


    // Inserting Row
    db.insert(TABLE_KABUPATEN, null, values);
    db.close(); // Closing database connection
}

// Getting single contact
KabupatenList getKabupatenList(int id) {
    SQLiteDatabase db = this.getReadableDatabase();

    Cursor cursor = db.query(TABLE_KABUPATEN, new String[] { KEY_ROW,
            KEY_KOTA, KEY_LINTANG, KEY_BUJUR, KEY_CUACA, KEY_SUHUMIN, KEY_SUHUMAX, KEY_KELEMBAPANMIN, KEY_KELEMBAPANMAX, KEY_KECEPATANANGIN, KEY_ARAHANGIN }, KEY_ARAHANGIN + "=?",
            new String[] { String.valueOf(id) }, null, null, null, null);
    if (cursor != null)
        cursor.moveToFirst();

    KabupatenList kabupatenList = new KabupatenList();
    // return contact
    return kabupatenList;
}

// Getting All Contacts
public List<KabupatenList> getKabupaten() {
    List<KabupatenList> kabupaten = new ArrayList<KabupatenList>();
    // Select All Query
    String selectQuery = "SELECT  * FROM " + TABLE_KABUPATEN;

    SQLiteDatabase db = this.getWritableDatabase();
    Cursor cursor = db.rawQuery(selectQuery, null);

    // looping through all rows and adding to list
    if (cursor.moveToFirst()) {
        do {
            KabupatenList kabupatenList = new KabupatenList();
            kabupatenList.setRow(Integer.parseInt(cursor.getString(0)));
            kabupatenList.setKota(cursor.getString(1));
            kabupatenList.setLintang(cursor.getString(2));
            kabupatenList.setBujur(cursor.getString(3));
            kabupatenList.setCuaca(cursor.getString(4));
            kabupatenList.setKelembapanMin(cursor.getString(5));
            kabupatenList.setKelembapanMax(cursor.getString(6));
            kabupatenList.setKecepatanAngin(cursor.getString(7));
            kabupatenList.setArahAngin(cursor.getString(8));
            // Adding contact to list
            kabupaten.add(kabupatenList);
        } while (cursor.moveToNext());
    }

    // return contact list
    return kabupaten;
}

// Updating single contact
public int updateKabupaten(KabupatenList kabupatenList) {
    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put(KEY_KOTA, kabupatenList.getKota());
    values.put(KEY_LINTANG, kabupatenList.getLintang());
    values.put(KEY_BUJUR, kabupatenList.getBujur());
    values.put(KEY_CUACA, kabupatenList.getCuaca());
    values.put(KEY_SUHUMIN, kabupatenList.getSuhuMin());
    values.put(KEY_SUHUMAX, kabupatenList.getSuhuMax());
    values.put(KEY_KELEMBAPANMIN, kabupatenList.getKelembapanMin());
    values.put(KEY_KELEMBAPANMAX, kabupatenList.getKelembapanMax());
    values.put(KEY_KECEPATANANGIN, kabupatenList.getKecepatanAngin());
    values.put(KEY_ARAHANGIN, kabupatenList.getArahAngin());

    // updating row
    return db.update(TABLE_KABUPATEN, values, KEY_ROW + " = ?",
            new String[] { String.valueOf(kabupatenList.getRow()) });
}

// Deleting single contact
public void deleteKabupaten(KabupatenList kabupatenList) {
    SQLiteDatabase db = this.getWritableDatabase();
    db.delete(TABLE_KABUPATEN, KEY_ROW + " = ?",
            new String[] { String.valueOf(kabupatenList.getRow()) });
    db.close();
}


// Getting contacts Count
public int getKabupatenCount() {
    String countQuery = "SELECT  * FROM " + TABLE_KABUPATEN;
    SQLiteDatabase db = this.getReadableDatabase();
    Cursor cursor = db.rawQuery(countQuery, null);
    cursor.close();

    // return count
    return cursor.getCount();
}

}
DatabaseHandler.java

public class MainActivity extends ListActivity {
static final String URL = "http://data.bmkg.go.id/propinsi_15_2.xml";
static final String KEY_ITEM = "Cuaca";
static final String KEY_ID = "Isi";
static final String KEY_ROW = "Row";
static final String KEY_KOTA = "Kota";
static final String KEY_LINTANG = "Lintang";
static final String KEY_BUJUR = "Bujur";
static final String KEY_CUACA = "Cuaca";
static final String KEY_SUHUMIN = "SuhuMin";
static final String KEY_SUHUMAX = "SuhuMax";
static final String KEY_KELEMBAPANMIN = "KelembapanMin";
static final String KEY_KELEMBAPANMAX = "KelembapanMax";
static final String KEY_KECEPATANANGIN = "KecepatanAngin";
static final String KEY_ARAHANGIN = "ArahAngin";
private ProgressDialog pDialog;


ArrayList<HashMap<String, String>> menuItems = new ArrayList<HashMap<String,String>>();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    new AmbilData().execute();

    DatabaseHandler db = new DatabaseHandler(this);
}

class AmbilData extends AsyncTask<String, String, String>{
    protected void onPreExecute(){
        super.onPreExecute();
        pDialog = new ProgressDialog(MainActivity.this);
        pDialog.setMessage("Loading, Mohon Menunggu Beberapa saat...");
        pDialog.setIndeterminate(false);
        pDialog.setCancelable(true);
        pDialog.show();
    }

    protected String doInBackground (String... args){
        XMLParser parser = new XMLParser();
        String xml = parser.getXmlFromUrl(URL);
        Document doc = parser.getDomElement(xml);

        NodeList nl = doc.getElementsByTagName(KEY_ROW);
        for (int i = 0; i < nl.getLength(); i++) {
            HashMap<String, String> map = new HashMap<String, String>();

            Element e = (Element) nl.item(i);

            map.put(KEY_KOTA, parser.getValue(e, KEY_KOTA));
            map.put(KEY_LINTANG, parser.getValue(e, KEY_LINTANG));
            map.put(KEY_BUJUR, parser.getValue(e, KEY_BUJUR));
            map.put(KEY_CUACA, parser.getValue(e, KEY_CUACA));
            map.put(KEY_SUHUMIN, parser.getValue(e, KEY_SUHUMIN));
            map.put(KEY_SUHUMAX, parser.getValue(e, KEY_SUHUMAX));
            map.put(KEY_KELEMBAPANMIN, parser.getValue(e, KEY_KELEMBAPANMIN));
            map.put(KEY_KELEMBAPANMAX, parser.getValue(e, KEY_KELEMBAPANMAX));
            map.put(KEY_KECEPATANANGIN, parser.getValue(e, KEY_KECEPATANANGIN));
            map.put(KEY_ARAHANGIN, parser.getValue(e, KEY_ARAHANGIN));

            menuItems.add(map);
        }
        return null;
    }
    protected void onPostExecute(String file_url){
        pDialog.dismiss();
        runOnUiThread(new Runnable() {

            @Override
            public void run() {
                // TODO Auto-generated method stub
                ListAdapter adapter = new SimpleAdapter(MainActivity.this, menuItems, R.layout.list_kota, new String[] {KEY_KOTA, KEY_CUACA, KEY_LINTANG, KEY_BUJUR, KEY_SUHUMIN, KEY_SUHUMAX, KEY_KELEMBAPANMIN, KEY_KELEMBAPANMAX, KEY_KECEPATANANGIN, KEY_ARAHANGIN}, new int[] {R.id.kota, R.id.cuaca, R.id.lintang, R.id.bujur, R.id.suhumin, R.id.suhumax, R.id.kelembapanmin, R.id.kelembapanmax, R.id.kecepatanangin, R.id.arahangin});
                setListAdapter(adapter);
            }
        });
    }
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}
public class KabupatenList {
// private variables
int _Row;
String _Kota;
String _Lintang;
String _Bujur;
String _Cuaca;
String _SuhuMin;
String _SuhuMax;
String _KelembapanMin;
String _KelembapanMax;
String _KecepatanAngin;
String _ArahAngin;

// Empty constructor
public KabupatenList() {

}

// constructor
public KabupatenList(int Row, String Kota, String Lintang, String Bujur,
        String Cuaca, String SuhuMin, String SuhuMax, String KelembapanMin,
        String KelembapanMax, String KecepatanAngin, String ArahAngin) {
    this._Row = Row;
    this._Kota = Kota;
    this._Lintang = Lintang;
    this._Bujur = Bujur;
    this._Cuaca = Cuaca;
    this._SuhuMin = SuhuMin;
    this._SuhuMax = SuhuMax;
    this._KelembapanMin = KelembapanMin;
    this._KelembapanMax = KelembapanMax;
    this._KecepatanAngin = KecepatanAngin;
    this._ArahAngin = ArahAngin;
}

// constructor
public KabupatenList(String Kota, String Lintang, String Bujur,
        String Cuaca, String SuhuMin, String SuhuMax, String KelembapanMin,
        String KelembapanMax, String KecepatanAngin, String ArahAngin) {
    this._Kota = Kota;
    this._Lintang = Lintang;
    this._Bujur = Bujur;
    this._Cuaca = Cuaca;
    this._SuhuMin = SuhuMin;
    this._SuhuMax = SuhuMax;
    this._KelembapanMin = KelembapanMin;
    this._KelembapanMax = KelembapanMax;
    this._KecepatanAngin = KecepatanAngin;
    this._ArahAngin = ArahAngin;
}

// getting row
public int getRow() {
    return this._Row;
}

// setting row
public void setRow(int Row) {
    this._Row = Row;
}

// getting kota
public String getKota() {
    return this._Kota;
}

// setting kota
public void setKota(String Kota) {
    this._Kota = Kota;
}

// getting lintang
public String getLintang() {
    return this._Lintang;
}

// setting lintang
public void setLintang(String Lintang) {
    this._Lintang = Lintang;
}

// getting bujur
public String getBujur() {
    return this._Bujur;
}

// setting bujur
public void setBujur(String Bujur) {
    this._Bujur = Bujur;
}

// getting cuaca
public String getCuaca() {
    return this._Cuaca;
}

// setting cuaca
public void setCuaca(String Cuaca) {
    this._Cuaca = Cuaca;
}

// getting suhumin
public String getSuhuMin() {
    return this._SuhuMin;
}

// setting suhumin
public void setSuhuMin(String SuhuMin) {
    this._SuhuMin = SuhuMin;
}

// getting suhumax
public String getSuhuMax() {
    return this._SuhuMax;
}

// setting suhumax
public void setSuhuMax(String SuhuMax) {
    this._SuhuMax = SuhuMax;
}

// getting kelembapanmin
public String getKelembapanMin() {
    return this._KelembapanMin;
}

// setting kelembapanmin
public void setKelembapanMin(String KelembapanMin) {
    this._KelembapanMin = KelembapanMin;
}

// getting kelembapanmax
public String getKelembapanMax() {
    return this._KelembapanMax;
}

// setting kelembapanmax
public void setKelembapanMax(String KelembapanMax) {
    this._KelembapanMax = KelembapanMax;
}

// getting kecepatan angin
public String getKecepatanAngin() {
    return this._KecepatanAngin;
}

// setting kecepatan angin
public void setKecepatanAngin(String KecepatanAngin) {
    this._KecepatanAngin = KecepatanAngin;
}

// getting arah angin
public String getArahAngin() {
    return this._ArahAngin;
}

// setting arah angin
public void setArahAngin(String ArahAngin) {
    this._ArahAngin = ArahAngin;
}
}
public class DatabaseHandler extends SQLiteOpenHelper {

// All Static variables
// Database Version
private static final int DATABASE_VERSION = 1;

// Database Name
private static final String DATABASE_NAME = "dbKabupaten";

// Contacts table name
private static final String TABLE_KABUPATEN = "tbKabupaten";

// Contacts Table Columns names
private static final String KEY_ROW = "Row";
private static final String KEY_KOTA = "Kota";
private static final String KEY_LINTANG = "Lintang";
private static final String KEY_BUJUR = "Bujur";
private static final String KEY_CUACA = "Cuaca";
private static final String KEY_SUHUMIN = "SuhuMin";
private static final String KEY_SUHUMAX = "SuhuMax";
private static final String KEY_KELEMBAPANMIN = "KelembapanMin";
private static final String KEY_KELEMBAPANMAX = "KelembapanMax";
private static final String KEY_KECEPATANANGIN = "KecepatanAngin";
private static final String KEY_ARAHANGIN = "ArahAngin";

public DatabaseHandler(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

// Creating Tables
@Override
public void onCreate(SQLiteDatabase db) {
    String CREATE_KABUPATEN_TABLE = "CREATE TABLE " + TABLE_KABUPATEN + "("
            + KEY_ROW + " INTEGER PRIMARY KEY," + KEY_KOTA + " TEXT,"
            + KEY_LINTANG + " TEXT" + KEY_BUJUR + " TEXT" + KEY_CUACA + " TEXT" + KEY_SUHUMIN + " TEXT" + KEY_SUHUMAX + " TEXT" + KEY_KELEMBAPANMIN + " TEXT" + KEY_KELEMBAPANMAX + " TEXT" + KEY_KECEPATANANGIN + " TEXT" + KEY_ARAHANGIN + " TEXT" +")";
    db.execSQL(CREATE_KABUPATEN_TABLE);
}

// Upgrading database
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // Drop older table if existed
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_KABUPATEN);

    // Create tables again
    onCreate(db);
}

/**
 * All CRUD(Create, Read, Update, Delete) Operations
 */

// Adding new contact
void addKabupatenList(KabupatenList kabupatenList) {
    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put(KEY_KOTA, kabupatenList.getKota()); // Kota
    values.put(KEY_LINTANG, kabupatenList.getLintang()); // Lintang
    values.put(KEY_BUJUR, kabupatenList.getBujur()); //Bujur
    values.put(KEY_CUACA, kabupatenList.getCuaca()); //Cuaca
    values.put(KEY_SUHUMIN, kabupatenList.getSuhuMin()); //SuhuMin
    values.put(KEY_SUHUMAX, kabupatenList.getSuhuMax()); //SuhuMax
    values.put(KEY_KELEMBAPANMIN, kabupatenList.getKelembapanMin()); //KelembapanMin
    values.put(KEY_KELEMBAPANMAX, kabupatenList.getKelembapanMax()); //KelembapanMax
    values.put(KEY_KECEPATANANGIN, kabupatenList.getKecepatanAngin()); //KecepatanAngin
    values.put(KEY_ARAHANGIN, kabupatenList.getArahAngin()); //ArahAngin


    // Inserting Row
    db.insert(TABLE_KABUPATEN, null, values);
    db.close(); // Closing database connection
}

// Getting single contact
KabupatenList getKabupatenList(int id) {
    SQLiteDatabase db = this.getReadableDatabase();

    Cursor cursor = db.query(TABLE_KABUPATEN, new String[] { KEY_ROW,
            KEY_KOTA, KEY_LINTANG, KEY_BUJUR, KEY_CUACA, KEY_SUHUMIN, KEY_SUHUMAX, KEY_KELEMBAPANMIN, KEY_KELEMBAPANMAX, KEY_KECEPATANANGIN, KEY_ARAHANGIN }, KEY_ARAHANGIN + "=?",
            new String[] { String.valueOf(id) }, null, null, null, null);
    if (cursor != null)
        cursor.moveToFirst();

    KabupatenList kabupatenList = new KabupatenList();
    // return contact
    return kabupatenList;
}

// Getting All Contacts
public List<KabupatenList> getKabupaten() {
    List<KabupatenList> kabupaten = new ArrayList<KabupatenList>();
    // Select All Query
    String selectQuery = "SELECT  * FROM " + TABLE_KABUPATEN;

    SQLiteDatabase db = this.getWritableDatabase();
    Cursor cursor = db.rawQuery(selectQuery, null);

    // looping through all rows and adding to list
    if (cursor.moveToFirst()) {
        do {
            KabupatenList kabupatenList = new KabupatenList();
            kabupatenList.setRow(Integer.parseInt(cursor.getString(0)));
            kabupatenList.setKota(cursor.getString(1));
            kabupatenList.setLintang(cursor.getString(2));
            kabupatenList.setBujur(cursor.getString(3));
            kabupatenList.setCuaca(cursor.getString(4));
            kabupatenList.setKelembapanMin(cursor.getString(5));
            kabupatenList.setKelembapanMax(cursor.getString(6));
            kabupatenList.setKecepatanAngin(cursor.getString(7));
            kabupatenList.setArahAngin(cursor.getString(8));
            // Adding contact to list
            kabupaten.add(kabupatenList);
        } while (cursor.moveToNext());
    }

    // return contact list
    return kabupaten;
}

// Updating single contact
public int updateKabupaten(KabupatenList kabupatenList) {
    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put(KEY_KOTA, kabupatenList.getKota());
    values.put(KEY_LINTANG, kabupatenList.getLintang());
    values.put(KEY_BUJUR, kabupatenList.getBujur());
    values.put(KEY_CUACA, kabupatenList.getCuaca());
    values.put(KEY_SUHUMIN, kabupatenList.getSuhuMin());
    values.put(KEY_SUHUMAX, kabupatenList.getSuhuMax());
    values.put(KEY_KELEMBAPANMIN, kabupatenList.getKelembapanMin());
    values.put(KEY_KELEMBAPANMAX, kabupatenList.getKelembapanMax());
    values.put(KEY_KECEPATANANGIN, kabupatenList.getKecepatanAngin());
    values.put(KEY_ARAHANGIN, kabupatenList.getArahAngin());

    // updating row
    return db.update(TABLE_KABUPATEN, values, KEY_ROW + " = ?",
            new String[] { String.valueOf(kabupatenList.getRow()) });
}

// Deleting single contact
public void deleteKabupaten(KabupatenList kabupatenList) {
    SQLiteDatabase db = this.getWritableDatabase();
    db.delete(TABLE_KABUPATEN, KEY_ROW + " = ?",
            new String[] { String.valueOf(kabupatenList.getRow()) });
    db.close();
}


// Getting contacts Count
public int getKabupatenCount() {
    String countQuery = "SELECT  * FROM " + TABLE_KABUPATEN;
    SQLiteDatabase db = this.getReadableDatabase();
    Cursor cursor = db.rawQuery(countQuery, null);
    cursor.close();

    // return count
    return cursor.getCount();
}

}
公共类DatabaseHandler扩展了SQLiteOpenHelper{
//所有静态变量
//数据库版本
私有静态最终int数据库_VERSION=1;
//数据库名称
私有静态最终字符串数据库\u NAME=“dbKabupaten”;
//联系人表名称
私有静态最终字符串表_KABUPATEN=“tbKabupaten”;
//联系人表列名称
私有静态最终字符串键\u ROW=“ROW”;
私有静态最终字符串密钥\u KOTA=“KOTA”;
私有静态最终字符串密钥\u LINTANG=“LINTANG”;
私有静态最终字符串密钥\u BUJUR=“BUJUR”;
专用静态最终字符串键\u CUACA=“CUACA”;
私有静态最终字符串键\u SUHUMIN=“SUHUMIN”;
私有静态最终字符串密钥\u SUHUMAX=“SUHUMAX”;
私有静态最终字符串键\u kelembanmin=“kelembanmin”;
私有静态最终字符串键\u kelembanmax=“kelembanmax”;
私有静态最终字符串密钥_KECEPATANANGIN=“KECEPATANANGIN”;
私有静态最终字符串键\u ARAHANGIN=“ARAHANGIN”;
公共数据库处理程序(上下文){
super(上下文、数据库名称、null、数据库版本);
}
//创建表
@凌驾
public void onCreate(SQLiteDatabase db){
字符串CREATE_KABUPATEN_TABLE=“CREATE TABLE”+TABLE_KABUPATEN+”(“
+键行+整数主键,“+键行+文本,”
+基尤林堂+“文本”+基尤布朱尔+“文本”+基尤卡卡+“文本”+基尤苏胡敏+“文本”+基尤苏胡马克斯+“文本”+基尤克伦巴潘明+“文本”+基尤克伦巴潘马克斯+“文本”+基尤卡帕塔南金+“文本”+基尤阿拉汉金+“文本”+“文本”+“文本”+“文本””;
execSQL(创建_KABUPATEN_表);
}
//升级数据库
@凌驾
public void onUpgrade(SQLiteDatabase db,int-oldVersion,int-newVersion){
//删除旧表(如果存在)
db.execSQL(“如果存在删除表”+表_KABUPATEN);
//再次创建表
onCreate(db);
}
/**
*所有CRUD(创建、读取、更新、删除)操作
*/
//添加新联系人
void addKabupatenList(KabupatenList KabupatenList){
SQLiteDatabase db=this.getWritableDatabase();
ContentValues=新的ContentValues();
value.put(KEY_KOTA,kabupatenList.getKota());//KOTA
value.put(KEY_LINTANG,kabupatenList.getLintang());//LINTANG
value.put(KEY_BUJUR,kabupatenList.getBujur());//BUJUR
value.put(KEY_CUACA,kabupatenList.getCuaca());//CUACA
value.put(KEY_SUHUMIN,kabupatenList.getSuhuMin());//SUHUMIN
value.put(KEY_SUHUMAX,kabupatenList.getSuhuMax());//SUHUMAX
value.put(KEY_KELEMBAPANMIN,kabupatenList.getKelembapanMin());//KELEMBAPANMIN
value.put(KEY_KELEMBAPANMAX,kabupatenList.getKelembapanMax());//KELEMBAPANMAX
value.put(KEY_KECEPATANANGIN,kabupatenList.getKecepatanAngin());//KECEPATANANGIN
value.put(KEY_uahangin,kabupateList.getArhangin());//arhangin
//插入行
db.insert(TABLE_KABUPATEN,null,value);
db.close();//关闭数据库连接
}
//获得单一联系
KabupatenList getKabupatenList(int id){
SQLiteDatabase db=this.getReadableDatabase();
Cursor Cursor=db.query(TABLE_KABUPATEN,新字符串[]{KEY_ROW,
科塔岛、林堂岛、布朱尔岛、库卡岛、苏胡敏岛、苏胡马克斯岛、克伦巴潘明岛、克伦巴潘马克斯岛、卡塞帕塔南金岛、阿拉汉金岛、阿拉汉金岛+“=?”,
新字符串[]{String.valueOf(id)},null,null,null,null);
如果(光标!=null)
cursor.moveToFirst();
KabupatenList KabupatenList=新的KabupatenList();
//回接
返回kabupatenList;
}
//获取所有联系人
公共列表getKabupaten(){
List kabupaten=new ArrayList();
//选择所有查询
String selectQuery=“SELECT*FROM”+表\u KABUPATEN;
SQLiteDatabase db=this.getWritableDatabase();
Cursor Cursor=db.rawQuery(selectQuery,null);
//循环遍历所有行并添加到列表
if(cursor.moveToFirst()){
做{
KabupatenList KabupatenList=新的KabupatenList();
kabupatenList.setRow(Integer.parseInt(cursor.getString(0));
kabupatenList.setKota(cursor.getString(1));
kabupatenList.setLintang(cursor.getString(2));
kabupatenList.setBujur(cursor.getString(3));
kabupatenList.setCuaca(cursor.getString(4));
kabupatenList.setkelembanpanmin(cursor.getString(5));
kabupatenList.setkelembanpanmax(cursor.getString(6));
kabupatenList.setKecepatanAngin(cursor.getString(7));
kabupatenList.setArahAngin(cursor.getString(8));
//将联系人添加到列表中
kabupaten.add(kabupatenList);
}while(cursor.moveToNext());
}
//返回联系人列表
返回卡布帕顿;
}
//更新单个联系人
public int updateKabupaten(KabupatenList KabupatenList){
SQLiteDatabase db=this.getWritableDatabase();
ContentValues=新的ContentValues();
value.put(KEY_KOTA,kabupatenList.getKota());
value.put(KEY_LINTANG,kabupatenList.getLintang());
value.put(KEY_BUJUR,kabupatenList.getBujur());
value.put(KEY_CUACA,kabupatenList.getCuaca());
value.put(KEY_SUHUMIN,kabupatenList.getSuhuMin());
value.put(KEY_SUHUMAX,kabupatenList.getSuhuMax());
value.put(KEY_KELEMBAPANMIN,kabupatenList.getKelembapanMin());
value.put(KEY_KELEMBAPANMAX,kabupatenList.getKelembapanMax());
value.put(KEY_KECEPATANANGIN,kabupatenList.getKecepatanAngin());
value.put(KEY_ARAHANGIN,kabupatenList.getArahAngin());
//更新行
返回db.update(表、值、键行+“=?”,
新字符串[]{String.valueOf(kabupatenList.getRow())};
}
//删除单个联系人
公共无效删除Kabupaten(