title: Can't Create Table With 4 Column SQLite Android Studio
body: <p>i am a very very dumb newbie in Android Programming,
  here i want to make a Cashflow note app in android studio.
  In this case i want to create a table call Category_Table with 4 column called CategId, CategName, Note and Currency.
  I have doing the tutorial from google and etc extacly. But till now i still have this problem.
  When i want to insert some data into Category_Table, it says No Column named Currency in Android Studio report. 
  I dont know what to do, i have googling it but still cant solve this problem.
  Please gimme an answer that i can understand as a newbie programmer.
  Thanks.
  NB. Here is my code:
  Add_Category code :</p>
  
  <pre><code>    public class AddCategory extends ActionBarActivity {
      private static Button BtnIAdd;
      private static Button BtnICancel;
      EditText txtcategname, txtnote;
      Spinner selectCurrency;
      ArrayAdapter&lt;CharSequence&gt; adapterCurrency;
      DatabaseHelper myDB;
  
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_add_category);
          myDB = new DatabaseHelper(this);
          txtcategname = (EditText)findViewById(R.id.editText);
          txtnote = (EditText)findViewById(R.id.editText2);
          BtnICancel = (Button)findViewById(R.id.btnCancel);
          BtnIAdd = (Button)findViewById(R.id.btnAdd);
  
          //spinner
          selectCurrency = (Spinner) findViewById(R.id.spin_selectCurrency);
          adapterCurrency = ArrayAdapter.createFromResource(this, R.array.CurrencyName,android.R.layout.simple_spinner_item );
          adapterCurrency.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
          selectCurrency.setAdapter(adapterCurrency);
          selectCurrency.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
              @Override
              public void onItemSelected(AdapterView&lt;?&gt; parent, View view, int position, long id) {
                  Toast.makeText(getBaseContext(), parent.getItemAtPosition(position)+" selected",Toast.LENGTH_LONG).show();
                  String currencyValue = String.valueOf(parent.getSelectedItem());
              }
  
              @Override
              public void onNothingSelected(AdapterView&lt;?&gt; parent) {
  
              }
          });
          addCategData();
      }
  
      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
          // Inflate the menu; this adds items to the action bar if it is present.
          getMenuInflater().inflate(R.menu.menu_add_category, menu);
          return true;
      }
  
      public void addCategData(){
          BtnIAdd.setOnClickListener(
                  new View.OnClickListener() {
                      @Override
                      public void onClick(View v) {
                          Toast.makeText(AddCategory.this,"Clicked", Toast.LENGTH_LONG).show();
                        boolean isInserted =   myDB.insertCategData(txtcategname.getText().toString(),
                                  txtnote.getText().toString(), selectCurrency.getSelectedItem().toString());
                          if (isInserted == true)
                              Toast.makeText(AddCategory.this,"Inserted", Toast.LENGTH_LONG).show();
                          else
                              Toast.makeText(AddCategory.this,"Not Inserted", Toast.LENGTH_LONG).show();
                      }
                  }
          );
          BtnICancel.setOnClickListener(
                  new View.OnClickListener() {
                      @Override
                      public void onClick(View v) {
                          finish();
                      }
                  }
          );
      }
  
  
  
      @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();
  
          //noinspection SimplifiableIfStatement
          if (id == R.id.action_settings) {
              return true;
          }
  
          return super.onOptionsItemSelected(item);
  }
  }
  </code></pre>
  
  <p>And this one for DatabaseHelper Class</p>
  
  <pre><code>public class DatabaseHelper extends SQLiteOpenHelper {
  public static final String MyVillageSoftware = "MyVillageSoftware";
  public static final String DATABASE_NAME = "Cashflow.db";
  public static final String TABLE_Categ_NAME = "category_table";
  public static final String COL1 = "CategId";
  public static final String COL2 = "CategName";
  public static final String COL3 = "Note";
  public static final String COL4 = "Currency";
  
  
  
  public DatabaseHelper(Context context) {
      super(context, DATABASE_NAME, null, 1);
  
  
  }
  
  @Override
  public void onCreate(SQLiteDatabase db) {
      db.execSQL("Drop Table" + TABLE_Categ_NAME);
      /*db.execSQL("Create table " + TABLE_Categ_NAME +
              "(CategID Integer PRIMARY KEY AUTOINCREMENT " +
              "CategName Text" +
              "Note Text" +
              "Currency Text)");*/
  
  }
  
  public boolean insertCategData(String categname, String note, String currency){
      SQLiteDatabase db = this.getWritableDatabase();
      ContentValues contentValues = new ContentValues();
      contentValues.put(COL2, categname);
      contentValues.put(COL3, note);
      contentValues.put(COL4, currency);
      long result = db.insert(TABLE_Categ_NAME, null, contentValues);
       if (result == -1)
           return true;
       else
           return false;
  
  }
  public ArrayList&lt;String&gt;getAllCategory(){
      ArrayList&lt;String&gt; AllCategoryList = new ArrayList&lt;String&gt;();
      SQLiteDatabase db = this.getReadableDatabase();
      String selectCateg="Select * FROM " +TABLE_Categ_NAME;
      Cursor cursor = db.rawQuery(selectCateg, null);
      if(cursor.getCount()&gt;0){
          while (cursor.moveToNext()){
              String categname=cursor.getString(cursor.getColumnIndex(COL2));
              AllCategoryList.add(COL2);
  
          }return AllCategoryList;
      }
  
      return AllCategoryList;
  
  }
  
  
  @Override
  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
      db.execSQL("DROP TABLE IF EXISTS " +TABLE_Categ_NAME);
      onCreate(db);
  </code></pre>
  
  <p>thanks before... :)</p>