亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何通過用戶輸入將數據插入到 sqlite 中?

如何通過用戶輸入將數據插入到 sqlite 中?

LEATH 2022-09-22 16:28:54
我是移動應用程序構建的初學者。我試圖將插入數據函數放在我的Android工作室中,但似乎這些插入函數不起作用,輸入數據無法插入。請幫忙。我在“主要活動.java和數據庫助手.java中放置了一些代碼。它沒有給我任何錯誤報告,但是當我嘗試運行模擬器和輸入數據時,我的輸入可以插入到sqlite數據庫中。oncreate主要活動super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        myDb = new DatabaseHelper(this);        name2 = findViewById(R.id.name2);        birthdate2 = findViewById(R.id.birthdate2);        area2 = findViewById(R.id.area2);        receiver2 = findViewById(R.id.receiver2);        submit2 = findViewById(R.id.submit2);        submit2.setOnClickListener(new View.OnClickListener() {            public void onClick(View v)            {                name = name2.getText().toString();                birth = birthdate2.getText().toString();                area = area2.getText().toString();                receiver = receiver2.getText().toString();...        insertData2 (name, birth, area, receiver);...public void insertData2 (String name,String birth,String area, String receiver){        boolean add_data = myDb.insertData(name,birth,area,receiver);        if (!add_data){            Toast.makeText(MainActivity.this,"Something went wrong><", Toast.LENGTH_LONG).show();        }        else{            Toast.makeText(MainActivity.this,"Success to add data!", Toast.LENGTH_LONG).show();        }    }數據庫助手.javapublic boolean insertData(String childname ,String bornday, String areaprogram, String receiverid){        SQLiteDatabase db = this.getWritableDatabase();        ContentValues contentValues = new ContentValues();        contentValues.put(COL1, childname);        contentValues.put(COL2, bornday);        contentValues.put(COL3, areaprogram);        contentValues.put(COL4, receiverid);        long result = db.insert(TABLE_NAME, null, contentValues);        if(result == -1){            return false;        }        else{            return true;        }    }
查看完整描述

3 回答

?
縹緲止盈

TA貢獻2041條經驗 獲得超4個贊

它不會給我任何錯誤報告


您應該使用嘗試并捕獲塊來查看正在發生的事情。


try{

   boolean add_data = myDb.insertData(name,birth,area,receiver);

   Toast.makeText(MainActivity.this,"Success to add data!", Toast.LENGTH_LONG).show();

}catch(Exception e){

   e.printStackTrace();

}


查看完整回答
反對 回復 2022-09-22
?
PIPIONE

TA貢獻1829條經驗 獲得超9個贊

該方法的第一個參數是列的名稱,但您傳遞的值。

更改為以下內容(當然,請替換為列名稱,如 、等):put()"Name""Birthdate"


public boolean insertData(String Name,String Birthdate,String Area, String ID){

    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues contentValues = new ContentValues();

    contentValues.put(ColunNameForName, Name);

    contentValues.put(ColunNameForBirthdate, Birthdate);

    contentValues.put(ColunNameForArea, Area);

    contentValues.put(ColunNameForID, ID);


    long result = db.insert(TABLE_NAME, null, contentValues);


    if(result == -1){

        return false;

    }

    else{

        return true;

    }

}


查看完整回答
反對 回復 2022-09-22
?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

您的數據庫助手類是否具有執行 SQL 命令的 SQLite 數據庫對象。


    SQLiteDatabase database

    String myTable = ("CREATE TABLE IF NOT EXISTS myTable (yourColumns);");

    database.execSQL(myTable);

    database.execSQL("INSERT INTO myTable(yourData);"


查看完整回答
反對 回復 2022-09-22
  • 3 回答
  • 0 關注
  • 145 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號