簡體   English   中英

數據庫無法解析為變量

[英]Database cannot be resolved to a variable

創建數據庫時發生錯誤,它指示錯誤詞“數據庫”,並且顯示錯誤:

Database cannot be resolved a variable

所以,請告訴我如何糾正它。

package com.flocater;
import com.flocator.R;
import android.app.Activity;
import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

public class AddFriends extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.addfriends);
    }

    public void addFriend(View v) {
        // get access to views
        EditText editName = (EditText) this.findViewById(R.id.editName1);
        EditText editPhone = (EditText) this.findViewById(R.id.editPhone1);
        EditText editArea = (EditText) this.findViewById(R.id.editArea1);
        EditText editCity = (EditText) this.findViewById(R.id.editCity1);

        try {
            DBHelper dbhelper = new DBHelper(this);
            SQLiteDatabase db = dbhelper.getWritableDatabase();
            Log.d("Account", "Got Writable database");
            // execute insert command

            ContentValues values = new ContentValues();
            values.put(Database.FRIENDS_NAME, editName.getText().toString());
            values.put(Database.FRIENDS_PHONE, editPhone.getText().toString());// "The error was displayed in the word Database"
            values.put(Database.FRIENDS_AREA, editArea.getText().toString());
            values.put(Database.FRIENDS_CITY, editCity.getText().toString());

            long rows = db.insert(Database.FRIENDS_TABLE_NAME, null, values);
            db.close();
            if (rows > 0) {
                Toast.makeText(this, "Added Friend Successfully!",
                        Toast.LENGTH_LONG).show();
                this.finish();
            } else
                Toast.makeText(this, "Sorry! Could not add Friend!",
                        Toast.LENGTH_LONG).show();

        } catch (Exception ex) {
            Toast.makeText(this, ex.getMessage(), Toast.LENGTH_LONG).show();//print message
        }

    }``
}

您沒有共享DBHelper類,但是根據可用的信息,我認為您應該在使用values.put()的所有行中嘗試使用DBHelper而不是Database。

 values.put(DBHelper.FRIENDS_NAME, editName.getText().toString());
 values.put(DBHelper.FRIENDS_PHONE, editPhone.getText().toString());
 values.put(DBHElper.FRIENDS_AREA, editArea.getText().toString());
 values.put(DBHelper.FRIENDS_CITY, editCity.getText().toString());

並且在插入方法中:

long rows = db.insert(DBHelper.FRIENDS_TABLE_NAME, null, values);

祝一切順利

對於異常調試和驗證SQL腳本,請在第36行的Friendfinderactivity中創建。

以下是將由您的代碼創建的查詢: select * from SQLiteDatabasenull ,語法錯誤。

這就是問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM