YXTS122 2016-12-23 00:48 采纳率: 100%
浏览 930
已采纳

安卓,按了更新按钮后出现这个提示

图片说明
图片说明
MainActivity.java

 package com.example.sqlite;

import java.util.ArrayList;
import java.util.List;

import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener{
    private static final String TAG="Add"; 
    private static final ListAdapter listAdapter = null; 
    private EditText ecode,ename,ebirth; 
    private Button badd,bdel,bupdate,bsele; 
    private SQLiteDatabase db=null; 
    private TextView tedatashow; 
    private ListView datashow;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ecode=(EditText)findViewById(R.id.ecode); 
        ename=(EditText)findViewById(R.id.ename); 
        ebirth=(EditText)findViewById(R.id.ebirth); 
        badd=(Button)findViewById(R.id.badd); 
        bdel=(Button)findViewById(R.id.bdel); 
        bupdate=(Button)findViewById(R.id.bupdate); 
        bsele=(Button)findViewById(R.id.bsele); 
        tedatashow=(TextView)findViewById(R.id.tedatashow); 
        datashow=(ListView)findViewById(R.id.datashow); 
        badd.setOnClickListener((android.view.View.OnClickListener) this); 
        bdel.setOnClickListener((android.view.View.OnClickListener) this); 
        bsele.setOnClickListener((android.view.View.OnClickListener) this); 
        bupdate.setOnClickListener((android.view.View.OnClickListener) this);
    }

    public void onClick(View v) 
    { 
        // TODO Auto-generated method stub 
        MyDBHelper helper=new MyDBHelper(this); 
        String code=ecode.getText().toString().trim();
        String name=ename.getText().toString().trim();
        String birth=ebirth.getText().toString().trim();
        if(v==badd)
        {
            if(code.length()!=0 && name.length()!=0 && birth.length()!=0)
            {
                try
                {
                    db=helper.getWritableDatabase(); 
                    String sql="INSERT INTO user(ecode,ename,ebirth)" +"VALUES('"+ecode.getText()+"','" +ename.getText()+"','" +ebirth.getText()+"')"; 
                    db.execSQL(sql); 
                    Toast.makeText(this, "添加成功!", Toast.LENGTH_LONG).show(); 
                    ecode.setText(""); 
                    ename.setText(""); 
                    ebirth.setText(""); 
                }
                catch(Exception e)
                {
                    Toast.makeText(this, "出错了!"+ e.getMessage(),Toast.LENGTH_LONG).show(); 
                } 
            }
            else
                Toast.makeText(this, "学号和姓名出生日期不能为空!", Toast.LENGTH_LONG).show(); 
        } 
        if(v==bdel)
        {
            if(code.length()!=0)
            {
                try
                {
                    db=helper.getWritableDatabase(); 
                    String sql="delete from user where ecode='"+ecode.getText()+"'"; 
                    db.execSQL(sql); 
                    Toast.makeText(this, "成功删除!", Toast.LENGTH_LONG).show(); 
                    ecode.setText(""); 
                }
                catch(Exception e)
                {
                    Toast.makeText(this, "出错了!", Toast.LENGTH_LONG).show(); 
                }
            }
        }
                if(v==bupdate)
                {
                    db=helper.getWritableDatabase();
                    if(code.length()!=0 && name.length()!=0 && birth.length()!=0)
                    {
                        try
                        {
                            String sql="update user set ecode='"+ecode.getText() +"'"+"where ename='"+ename.getText()+"',birthday='" +ebirth.getText()+"'where code='" +ecode.getText()+"''"; 
                            db.execSQL(sql); 
                            Toast.makeText(this, "成功更新!", Toast.LENGTH_LONG).show(); 
                            ecode.setText(""); 
                            ename.setText(""); 
                            ebirth.setText(""); 
                        }
                        catch(Exception e)
                        {
                            Toast.makeText(this, "出错了!"+e.getMessage(),Toast.LENGTH_LONG).show(); 
                        } 
                    }
                    else
                        Toast.makeText(this, "学号姓名出生日期不能为空!", Toast.LENGTH_LONG).show(); 
                }
                if(v==bsele)
                {
                    if(code.length()!=0)
                    {
                    try
                    {
                        ArrayList<String> all=new ArrayList<String>(); 
                        String sql="select * from user where ecode =? or ename =? or ebirth =? "; 
                        Cursor result=helper.getReadableDatabase().rawQuery(sql,new String[]{code,code,code}); 
                        while(result.moveToNext())
                        {
                            all.add("["+result.getString(0)+"]"+""+result.getString(1)+","+result.getString(2)); 
                        }
                        ArrayAdapter<String> arrayAdapter=new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,all); 
                        datashow.setAdapter(arrayAdapter);
                    }
                    catch(Exception f)
                    {
                        Toast.makeText(this, "显示不了", Toast.LENGTH_LONG).show(); 
                    }
                    }
                }
                db.close(); 
    }

    @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;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

MyDBHelper.java

 package com.example.sqlite;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

public class MyDBHelper extends SQLiteOpenHelper{
    public MyDBHelper(Context context)
    {
        super(context,"mvdb.db",null,2);
    }

    public void onCreate(SQLiteDatabase db)
    {
        String sql="create table user(ecode text,ename text,ebirth text);";
        db.execSQL(sql);
    }

    public void onUpgrade(SQLiteDatabase db,int arg1,int arg2)
    {
        String sql="create table user(ecode text,ename text,ebirth text);";
        db.execSQL(sql);
        this.onCreate(db);
    }

}

  • 写回答

2条回答 默认 最新

  • miaoch 2016-12-23 00:51
    关注

    String sql="update user set ecode='"+ecode.getText() +"'"+"where ename='"+ename.getText()+"',birthday='" +ebirth.getText()+"'where code='" +ecode.getText()+"''";
    这段update语句写错了啊
    where条件不能用逗号连起来 要用 and 或者 or之类的
    另外 where后面怎么还有where

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器