数据库报错了,不知错哪了

YXTS122 2017-10-26 12:47:29
public class DBHelper extends SQLiteOpenHelper{
private static final String name="digitialMenu.db";
private static final int version =1;

public DBHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, null, version);
}


@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table worker(workerid varchar(10) primary key, username varchar(10),password varchar(20),type integer);");
db.execSQL("insert into worker(workerID,username,password,type)values('wk01','admin','admin','1');");
db.execSQL("insert into worker(workerID,username,password,type)values('wk02','waiter','waiter','2');");
db.execSQL("insert into worker(workerID,username,password,type)values('wk03','chief','chief','3');");

db.execSQL("CREATE TABLE menu(menuID integer primary key autoincrement,menuName varchar(20),picture varchar(20),description varchar(50),price integer);");
db.execSQL("insert into menu(menuName,picture,description,price)values('干煸四季豆','gbsjd.jpg','时蔬四季豆','13');");
db.execSQL("insert into menu(menuName,picture,description,price)values('酸菜鱼','scy.jpg','热门酸菜鱼','30');");
db.execSQL("insert into menu(menuName,picture,description,price)values('毛血旺','mxw.jpg','招牌毛血旺','32');");
db.execSQL("insert into menu(menuName,picture,description,price)values('双味鱼头','swyt.jpg','特色双味鱼头','38');");
db.execSQL("insert into menu(menuName,picture,description,price)values('干锅包菜','ggbc.jpg','干锅包菜','15');");
db.execSQL("insert into menu(menuName,picture,description,price)values('有机花菜','yjhc.jpg','干锅有机花菜','16');");
db.execSQL("insert into menu(menuName,picture,description,price)values('苦瓜羹','kgg.jpg','汤品苦瓜羹','16');");
db.execSQL("insert into menu(menuName,picture,description,price)values('麻辣牛肉','mlnr.jpg','热菜麻辣牛肉','28');");
db.execSQL("insert into menu(menuName,picture,description,price)values('麻婆豆腐','mpdf.jpg','热菜麻婆豆腐','2');");
db.execSQL("insert into menu(menuName,picture,description,price)values('泡椒田鸡','pjtj','泡椒田鸡','43');");
db.execSQL("insert into menu(menuName,picture,description,price)values('飘香鱼','pxy.jpg','热菜飘香鱼','53');");
db.execSQL("insert into menu(menuName,picture,description,price)values('水煮活鱼','szhy.jpg','热门水煮活鱼','30');");

db.execSQL("CREATE TABLE ordertable(orderID integer primary key autoincrement, tablenum integer, ordertime varchar(20), state integer, notes varchar(20));");
db.execSQL("CREATE TABLE orderdetail(orderdetialid integer primary key autoincrement, orderid integer, menuid integer, tablenum integer, quantity integer, detailsate integer);");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS worker");
db.execSQL("DROP TABLE IF EXISTS menu");
db.execSQL("DROP TABLE IF EXISTS ordertable");
db.execSQL("DROP TABLE IF EXISTS orderdetail");
onCreate(db);
}
}

public class MainActivity extends Activity {
private ListView listView;
private Cursor cursor;
DBHelper dbHelper;
SQLiteDatabase db;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dbHelper = new DBHelper(this,"digitialMenu.db",null,1);
List<Menu> menuList = getListItems();
listView = (ListView) findViewById(R.id.ListViewMenu);
MenuAdapter adapter = new MenuAdapter(this, menuList);
listView.setAdapter(adapter);


}

public List<Menu> getListItems() {
db= dbHelper.getWritableDatabase();
cursor = db.rawQuery("select * from menu", null);
List<Menu> menuList = new ArrayList<Menu>();
while(cursor.moveToNext()){
int menuid= cursor.getColumnIndex("menuID");
String menuName = cursor.getString(cursor.getColumnIndex("menuName"));
String picture = cursor.getString(cursor.getColumnIndex("picture"));
String description = cursor.getString(cursor.getColumnIndex("description"));
int price = cursor.getColumnIndex("price");
Menu menu = new Menu(menuid,menuName,picture,description,price);
menuList.add(menu);
}
return menuList;
}

class MenuAdapter extends BaseAdapter {
private Context context;
private ArrayList<Menu> menuList;
private LayoutInflater listContainer;

public MenuAdapter(Context context, List<Menu> menuList) {
this.context = context;
listContainer=LayoutInflater.from(context);
this.menuList = (ArrayList<Menu>) menuList;
}

@Override
public int getCount() {
return cursor.getCount();
}

@Override
public Object getItem(int position) {
return position;
}

@Override
public long getItemId(int position) {
return position;
}

@Override
public View getView(final int position, View convertView, ViewGroup parent) {
final int clickID = position;
View items=listContainer.inflate(R.layout.activity_items,null);

final ImageButton picture = (ImageButton)items.findViewById(R.id.ImageButtonItem);
TextView menuName = (TextView)items.findViewById(R.id.TextViewItemName);
TextView price = (TextView)items.findViewById(R.id.TextViewItemPrice);
Button add = (Button)items.findViewById(R.id.ButtonItemAddOrder);

menuName.setText(menuList.get(position).getMenuName());
price.setText(String.valueOf(menuList.get(position).getPrice()));
picture.setImageDrawable(Drawable.createFromPath(menuList.get(clickID).getPicture()));

picture.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ImageView img = new ImageView(context);
//img.setImageResource(Integer.parseInt();
AlertDialog dialog = new AlertDialog.Builder(context).create();
dialog.setTitle("美食详情:");
dialog.setView(img);
dialog.setMessage(menuList.get(clickID).getDescription());
dialog.setButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
dialog.show();
}
});
add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

}
});
return items;

}
}}


public class Menu {
int menuid;
String menuName;
String picture;
String description;
String price;
public Menu(int menuid,String menuName,String picture,String description,String price)
{
this.menuid=menuid;
this.menuName=menuName;
this.picture=picture;
this.description=description;
this.price=price;

}
public String getMenuName()
{
return menuName;
}
public String getPrice()
{
return price;
}
public String getPicture()
{
return picture;
}
public String getDescription()
{
return description;
}

}
...全文
289 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
YXTS122 2019-09-17
  • 打赏
  • 举报
回复
YXTS122 2018-07-05
  • 打赏
  • 举报
回复
https://ask.csdn.net/questions/692344
YXTS122 2017-10-30
  • 打赏
  • 举报
回复
package com.example.digitialmenus;


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

import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;


public class MainActivity extends Activity {
    private ListView listView;
    private Cursor cursor;
    DBHelper dbHelper;
    SQLiteDatabase db;
    List<Menuf> menuList;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       dbHelper = new DBHelper(this,"digitialMenu.db",null,1);
       menuList = new ArrayList<Menuf>();
       menuList = getListItems();
       listView = (ListView) findViewById(R.id.ListViewMenu);
       MenuAdapter adapter = new MenuAdapter(this, menuList);
       listView.setAdapter(adapter);
   }
    
   public List<Menuf> getListItems() {
       db= dbHelper.getWritableDatabase();
       cursor = db.rawQuery("select * from menu", null);
       List<Menuf> menuLists =new ArrayList<Menuf>();
       while(cursor.moveToNext()){
           int menuid= cursor.getColumnIndex("menuID");
           String menuName = cursor.getString(cursor.getColumnIndex("menuName"));
           String picture = cursor.getString(cursor.getColumnIndex("picture"));
           String description = cursor.getString(cursor.getColumnIndex("description"));
           int price = cursor.getColumnIndex("price");
           Menuf menu = new Menuf(menuid,menuName,picture,description,price);
           menuLists.add(menu);
       }
       return menuLists;
   }
  
   class MenuAdapter extends BaseAdapter {
       private Context context;
       private ArrayList<Menuf> menuList;
       private LayoutInflater listContainer;
  
       public MenuAdapter(Context context, List<Menuf> menuList) {
           this.context = context;
           listContainer=LayoutInflater.from(context);
           this.menuList = (ArrayList<Menuf>) menuList;
       }
  
       @Override
       public int getCount() {
           return cursor.getCount();
       }
  
       @Override
       public Object getItem(int position) {
           return position;
       }
  
       @Override
       public long getItemId(int position) {
           return position;
       }
  
       @Override
       public View getView(final int position, View convertView, ViewGroup parent) {
           final int clickID = position;
           View items=listContainer.inflate(R.layout.activity_items,null);
  
           final ImageButton picture = (ImageButton)items.findViewById(R.id.ImageButtonItem);
           TextView menuName = (TextView)items.findViewById(R.id.TextViewItemName);
           TextView price = (TextView)items.findViewById(R.id.TextViewItemPrice);
           Button add = (Button)items.findViewById(R.id.ButtonItemAddOrder);
  
           menuName.setText(menuList.get(position).getMenuName());
           price.setText(String.valueOf(menuList.get(position).getPrice()));
           picture.setImageDrawable(Drawable.createFromPath(menuList.get(clickID).getPicture()));
  
           picture.setOnClickListener(new View.OnClickListener() {
               @Override
               public void onClick(View v) {
                   ImageView img = new ImageView(context);
                   //img.setImageResource(Integer.parseInt();
                   AlertDialog dialog = new AlertDialog.Builder(context).create();
                   dialog.setTitle("美食详情:");
                   dialog.setView(img);
                   dialog.setMessage(menuList.get(clickID).getDescription());
                   dialog.setButton("确定", new DialogInterface.OnClickListener() {
                       @Override
                       public void onClick(DialogInterface dialog, int which) {
                       }
                   });
                   dialog.show();
               }
           });
           add.setOnClickListener(new View.OnClickListener() {
               @Override
               public void onClick(View v) {
  
               }
           });
           return items;
  
       }
   }
    @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);
    }
}
  
qingtian1397 2017-10-30
  • 打赏
  • 举报
回复
请附上日志。
moonFY 2017-10-27
  • 打赏
  • 举报
回复
我也不知道啊。提问题 带上 错误日志。 最好带上关键代码。不要发一堆代码
YXTS122 2017-10-26
  • 打赏
  • 举报
回复
activity_items.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >
     <TextView
         android:id="@+id/TextViewItemName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
     <TextView
         android:id="@+id/TextViewItemPrice"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
     <Button
         android:id="@+id/ButtonItemAddOrder"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
     <ImageButton
         android:id="@+id/ImageButtonItem"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
    

</LinearLayout>
  
Yunc2 2017-10-26
  • 打赏
  • 举报
回复
自己看日志啊,发一堆代码几个意思

80,337

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧