未在相应位置正确创建Android数据库表

未在相应位置正确创建Android数据库表,android,database,sqlite,Android,Database,Sqlite,我已为我的应用程序创建了db,但尚未创建 下面是我的代码 //数据库版本 私有静态最终int数据库_VERSION=3 //The Android's default system path of your application database. //私有静态字符串DB_PATH=“/data/data/com.virtualmaze.ibilling/databases/” 帮我找出哪里出错了?。。 提前感谢您评论(添加了“/”)了代码的一些重要部分。取消注释并重试。您需要将字段名与其数

我已为我的应用程序创建了db,但尚未创建 下面是我的代码

//数据库版本 私有静态最终int数据库_VERSION=3

//The Android's default system path of your application database.
//私有静态字符串DB_PATH=“/data/data/com.virtualmaze.ibilling/databases/”

帮我找出哪里出错了?。。
提前感谢

您评论(添加了“/”)了代码的一些重要部分。取消注释并重试。

您需要将字段名与其数据类型分开,否则您将得到错误的列名,并且所有列名都是文本类型。也就是说:你需要一个空间在你所有的列类型之前!
// Database Name
private static final String DATABASE_NAME = "iBilling";

// Table name
private static final String TABLE_BILLING_ITEMS= "Billing_Items";
private static final String TABLE_CASHIER_DETAILS=  "Cashier_Details";
private static final String TABLE_CATEGORIES ="Categories";
private static final String TABLE_IMAGE= "Image_Table";
private static final String TABLE_PRODUCTS= "Products_Table";
private static final String TABLE_REGISTER= "Register_Table";



//Table billing items column names
public static final String KEY_DB_BILLNO            ="billno";
public static final String KEY_DB_BILLDATE          ="billdate";
public static final String KEY_DB_NETAMOUNT         ="netamount";
public static final String KEY_DB_AMT_RECEIVED      ="amt_received";
public static final String KEY_DB_BALANCE_AMT       ="balance_amt";
public static final String KEY_DB_PRODUCTS          ="products";
public static final String KEY_DB_CARD_NUMBER       ="cardnumber";
public static final String KEY_DB_NO_OF_DETAILS     ="no_of_details";
public static final String KEY_DB_TOTEL_DISCOUNT    ="total_discount";
public static final String KEY_DB_TOTEL_TAX         ="totel_tax";

//Table cashier details column names
public static final String KEY_DB_CASHIERID         ="cashierid";
public static final String KEY_DB_NAME              ="name";
public static final String KEY_DB_USERNAME          ="username";
public static final String KEY_DB_PASSWORD          ="password";
public static final String KEY_DB_CONFIRM_PASSWORD  ="confirm_password";
public static final String KEY_DB_EMAIL_ID          ="emailid";


//Table categories column names
//public static final String KEY_DB_CATEGORIESNAME  ="categoriesname";

//common clumn name
public static final String KEY_DB_PRODUCTID         ="productid";
public static final String KEY_DB_CATEGORIESNAME    ="categoriesname";


//Table Image column names
//prduct id
public static final String KEY_DB_IMAGE             ="image";



//Table products column name
public static final String KEY_DB_PNAME             ="pname";
//product id
public static final String KEY_DB_PRICE             ="price";
public static final String KEY_DB_DISCOUNT          ="discount";
//category.
public static final String KEY_DB_BARCODE           ="barcode";
public static final String KEY_DB_STOCKS            ="stocks";
public static final String KEY_DB_EXPIRYDATE        ="expirydate";
public static final String KEY_DB_BRANDNAME         ="brandname";
public static final String KEY_DB_MARKETEDBY        ="marketedby";
public static final String KEY_DB_PURCHASEDATE      ="purchasedate";
public static final String KEY_DB_PURCHASEPRICE     ="purchaseprice";
public static final String KEY_DB_DAMAGE            ="damage";
public static final String KEY_DB_UNITS             ="units";
public static final String KEY_DB_ALERTLIMIT        ="alertlimit";
public static final String KEY_DB_TAX               ="tax";


//Table register column name
public static final String KEY_DB_STORENAME         ="storename";
public static final String KEY_DB_USERNAMEREGISTER  ="registerusername";
public static final String KEY_DB_REGPASSWORD       ="password";
public static final String KEY_DB_REGEMAILID        ="emailid";
public static final String KEY_DB_REGPHONE          ="phone";
public static final String KEY_DB_REGWEBSITE        ="website";
public static final String KEY_DB_REGFAXNO          ="faxno";
public static final String KEY_DB_REGADD1           ="address1";
public static final String KEY_DB_REGADD2           ="address2";
public static final String KEY_DB_REGADD3           ="address3";


public DatabaseHandler(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}



@Override
public void onCreate(SQLiteDatabase db) {
    // TODO Auto-generated method stub
    Log.d("enter ","entering the oncreate method");

    db.setLocale(Locale.getDefault());
    db.setLockingEnabled(true);

    Log.e("Database Check", " Billing items on Create database");
    String CREATE_BILLING_ITEMS= " CREATE TABLE " + TABLE_BILLING_ITEMS + "("
            + KEY_DB_BILLNO         + "VARCHAR ,"
            + KEY_DB_BILLDATE       + "DATETIME ,"
            + KEY_DB_NETAMOUNT      + "FLOAT ,"
            + KEY_DB_AMT_RECEIVED   + "FLOAT ,"
            + KEY_DB_BALANCE_AMT    + "FLOAT ,"
            + KEY_DB_PRODUCTS       + "VARCHAR ,"
            + KEY_DB_CARD_NUMBER    + "INTEGER ,"
            + KEY_DB_NO_OF_DETAILS  + "INTEGER ,"
            + KEY_DB_TOTEL_DISCOUNT + "FLOAT,"
            + KEY_DB_TOTEL_TAX      + "FLOAT"

            + ")";
    db.execSQL(CREATE_BILLING_ITEMS);

    String CREATE_CASHIER_DETAILS = "CREATE TABLE "+ TABLE_CASHIER_DETAILS + "("
            + KEY_DB_CASHIERID      + "VARCHAR ,"
            + KEY_DB_NAME           + "VARCHAR ,"
            + KEY_DB_USERNAME       + "VARCHAR ,"
            + KEY_DB_PASSWORD       + "VARCHAR ,"
            + KEY_DB_CONFIRM_PASSWORD+ "VARCHAR ,"
            + KEY_DB_EMAIL_ID       + "VARCHAR "
            +");";
    db.execSQL(CREATE_CASHIER_DETAILS);

    String CREATE_TABLE_CATEGORIES = "CREATE TABLE " + TABLE_CATEGORIES + "("
            + KEY_DB_CATEGORIESNAME +" VARCHAR "
            + ");";
    db.execSQL(CREATE_TABLE_CATEGORIES);


    String CREATE_IMAGE_TABLE = "CREATE TABLE " + TABLE_IMAGE + "("
            + KEY_DB_PRODUCTID + "VARCHAR ,"
            + KEY_DB_IMAGE     + "BLOB "
            +");";
    db.execSQL(CREATE_IMAGE_TABLE);

    String CREATE_PRODUCTS_TABLE = "CREATE TABLE " + TABLE_PRODUCTS + "("
            + KEY_DB_PNAME      + "VARCHAR ,"
            + KEY_DB_PRODUCTID  + "VARCHAR ,"
            + KEY_DB_PRICE      + "FLOAT ,"
            + KEY_DB_DISCOUNT   + "FLOAT ,"
            + KEY_DB_CATEGORIESNAME + " VARCHAR ,"
            + KEY_DB_BARCODE    + "VARCHAR ,"
            + KEY_DB_STOCKS     + "INTEGER ,"
            + KEY_DB_EXPIRYDATE + "DATETIME ,"
            + KEY_DB_BRANDNAME  + "VARCHAR ,"
            + KEY_DB_MARKETEDBY + "VARCHAR ,"
            + KEY_DB_PURCHASEDATE + "DATETIME ,"
            + KEY_DB_PURCHASEPRICE + "FLOAT ,"
            + KEY_DB_DAMAGE     + "INTEGER ,"
            + KEY_DB_UNITS      + "INTEGER ,"
            + KEY_DB_ALERTLIMIT + "INTEGER ,"
            + KEY_DB_TAX        + "FLOAT "
            +");";
    db.execSQL(CREATE_PRODUCTS_TABLE);

    String CREATE_REGISTER_TABLE = "CREATE TABLE " + TABLE_REGISTER + "("
            + KEY_DB_STORENAME        + "VARCHAR ,"
            + KEY_DB_USERNAMEREGISTER + "VARCHAR ,"
            + KEY_DB_REGPASSWORD      + "VARCHAR ,"
            + KEY_DB_REGEMAILID       + "VARCHAR ,"
            + KEY_DB_REGPHONE         + "VARCHAR ,"
            + KEY_DB_REGWEBSITE       + "VARCHAR ,"
            + KEY_DB_REGADD1          + "VARCHAR ,"
            + KEY_DB_REGADD2          + "VARCHAR ,"
            + KEY_DB_REGADD3          + "VARCHAR "
            + ");";
    db.execSQL(CREATE_REGISTER_TABLE);


}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // TODO Auto-generated method stub
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_BILLING_ITEMS);
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_CASHIER_DETAILS);
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_CATEGORIES);
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_IMAGE);
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_PRODUCTS);
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_REGISTER);
    onCreate(db);
}