Форум программистов, компьютерный форум CyberForum.ru

SQLite, ошибка: не существует поля "почта" в базе данных - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Receiver на android.net.conn.CONNECTIVITY_CHANGE срабатывает 3-4 раза http://www.cyberforum.ru/android-dev/thread1774163.html
Почему Receiver следящий за <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> включением / отключением интернета срабатывает 3-4 раза в подряд?
Android Монетизация приложения Всем привет, хочу в приложении сделать покупку игровых монет и в поисковике нашел вот такую библиотеку https://m.habrahabr.ru/post/233265/ , такой вопрос , кто нибудь ставил эту библиотеку и подойдет она для покупок? http://www.cyberforum.ru/android-dev/thread1774131.html
Android Маршрут в MapView API v2
Как проложить маршрут от точки А в точку В? Это бесплатно? Добавлено через 20 минут А все вроде понял :) https://developers.google.com/maps/documentation/directions/
Android Библиотеки поддержки
Всем привет. Возникала такая беда. при использовании библиотек версий выше compile 'com.android.support:appcompat-v7:23.1.0' compile 'com.android.support:recyclerview-v7:23.1.0' compile 'com.android.support:design:23.1.0' compile 'com.android.support:support-v4:23.1.0' Пропадают элементы на экране приложения и в принципе ведет это все себя довольно не предсказуемо У...
Android Объединить два SDK http://www.cyberforum.ru/android-dev/thread1773927.html
Здравствуйте! На днях переустановил систему. Потом поставил Android Studio Bundle и он автоматически установил Android SDK в Username/appadata/local/android/sdk Потом поставил Visual Studio. Тот установил SDK в C/Program files/android/sdk Я уже скачал для того, что в App Data все необходимое, но сейчас понял, что держать его там не очень удобно. Как лучше перенести все скачанное в Program...
Android Как использовать чужую библиотеку есть вот эта библиотека https://github.com/felipecsl/AsymmetricGridView в описании написано что делать, но не написано куда поместить саму библиотеку и какие именно файлы/папки скидывать также, там написано в layout xml написать вот это <com.felipecsl.asymmetricgridview.library.widget.AsymmetricGridView xmlns:android="http://schemas.android.com/apk/res/android" ... подробнее

Показать сообщение отдельно
Matanoid
10 / 0 / 1
Регистрация: 12.10.2015
Сообщений: 34

SQLite, ошибка: не существует поля "почта" в базе данных - Android

01.07.2016, 13:25. Просмотров 191. Ответов 1
Метки (Все метки)

Создал самую простую программку для понимания баз данных SQLite.
Есть два поля: имя и почта. 3 кнопки: добавить в базу данных, считать с базы данных и стереть базу данных.
Выдает ошибку что не существует поля "почта" в базе данных. Помогите найти ошибку в коде.

main_activity.xml
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical">
 
        <EditText
            android:id="@+id/etName"
            android:hint="Name"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
        </EditText>
 
        <EditText
            android:id="@+id/etEmail"
            android:hint="Email"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
        </EditText>
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <Button
            android:id="@+id/btnAdd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Add">
        </Button>
        <Button
            android:id="@+id/btnRead"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Read">
        </Button>
        <Button
            android:id="@+id/btnClear"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Clear">
        </Button>
    </LinearLayout>
</LinearLayout>
класс для базы данных DBHelper.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
 
public class DBHelper  extends SQLiteOpenHelper{
 
    public static final int DATABASE_VERSION = 1;
    public static final String DATABASE_NAME = "contactDb";
    public static final String TABLE_CONTACTS = "contacts";
 
    public static final String KEY_ID = "_id";
    public static final String KEY_NAME = "name";
    public static final String KEY_MAIL = "mail";
 
    public DBHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
 
    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL("create table " + TABLE_CONTACTS + "(" + KEY_ID
                + " integer primary key," + KEY_NAME + " text," + KEY_MAIL + " text" + ")");
 
    }
 
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("drop table if exists " + TABLE_CONTACTS);
 
        onCreate(db);
 
    }
}
MainActivity.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
 
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
 
    Button btnAdd, btnRead, btnClear;
    EditText etName, etEmail;
 
    DBHelper dbHelper;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        btnAdd = (Button) findViewById(R.id.btnAdd);
        btnAdd.setOnClickListener(this);
 
        btnRead = (Button) findViewById(R.id.btnRead);
        btnRead.setOnClickListener(this);
 
        btnClear = (Button) findViewById(R.id.btnClear);
        btnClear.setOnClickListener(this);
 
        etName = (EditText) findViewById(R.id.etName);
        etEmail = (EditText) findViewById(R.id.etEmail);
 
        dbHelper = new DBHelper(this);
    }
 
    @Override
    public void onClick(View v) {
 
        String name = etName.getText().toString();
        String email = etEmail.getText().toString();
 
        SQLiteDatabase database = dbHelper.getWritableDatabase();
 
        ContentValues contentValues = new ContentValues();
 
 
        switch (v.getId()) {
 
            case R.id.btnAdd:
                contentValues.put(DBHelper.KEY_NAME, name);
                contentValues.put(DBHelper.KEY_MAIL, email);
 
                database.insert(DBHelper.TABLE_CONTACTS, null, contentValues);
                break;
 
            case R.id.btnRead:
                Cursor cursor = database.query(DBHelper.TABLE_CONTACTS, null, null, null, null, null, null);
 
                if (cursor.moveToFirst()) {
                    int idIndex = cursor.getColumnIndex(DBHelper.KEY_ID);
                    int nameIndex = cursor.getColumnIndex(DBHelper.KEY_NAME);
                    int emailIndex = cursor.getColumnIndex(DBHelper.KEY_MAIL);
                        do {
                            Log.d("mLog", "ID = " + cursor.getInt(idIndex) +
                                            ", name = " + cursor.getString(nameIndex) +
                                            ", email = " + cursor.getString(emailIndex));
                        } while (cursor.moveToNext());
                } else
                    Log.d("mLog","0 rows");
 
                cursor.close();
                break;
 
            case R.id.btnClear:
                database.delete(DBHelper.TABLE_CONTACTS, null, null);
                break;
        }
        dbHelper.close();
    }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 05:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru