2016-05-20 1 views
0

私は私bloodmanagerクラスのコードはこれですと、挿入時にそれがsucessfullyhaandroidデータベーステーブルが他のアクティビティで作成されていませんか?

public class PersonalManager extends SQLiteOpenHelper { 
     public static final String DATABASE="mydb"; 
public static final int DATABASE_VERSION=1; 

public MedicineManger(Context context) 
{ 

    super(context, DATABASE, null, DATABASE_VERSION); 
    // TODO Auto-generated constructor stub 
} 


    public static abstract class MedicineEntry implements BaseColumns 
{ 
    public static final String TABLE="Medicine"; 
    public static final String NAME="name"; 
    public static final String type="type"; 
    public static final String dosage="dosage"; 
} 

public static final String CREATE="CREATE TABLE "+ MedicineEntry.TABLE+"("+ 
     MedicineEntry._ID+" INTEGER PRIMARY KEY,"+ 
     MedicineEntry.NAME+" TEXT,"+ 
     MedicineEntry.type+" TEXT,"+ 
     MedicineEntry.dosage+" INTEGER)"; 

    @Override 
public void onCreate(SQLiteDatabase db) { 
    // TODO Auto-generated method stub 
    db.execSQL(CREATE); 
} 
を挿入された行のIDを返すテーブルを作成する責任があるすべての活動のためのマネージャークラスを作成し、レコードを挿入しているアンドロイドスタジオとアンドロイドでsqlliteデータベースを使用しています

私は上記のコードは一つのクラスのために動作しますが、私は同じコードを過ぎてコピーしますが、挿入中に、それは

そのようにID -1私isertionを返すpatientManagerために別のテーブルを作成するために、セッションマネージャなど extends SQLiteOpenHelper

をextented

 String name=edName.getText().toString(); 
      String type=edtype.getText().toString(); 
      long dosage=Long.valueOf(eddosage.getText().toString()); 

      ContentValues cv=new ContentValues(); 
      cv.put(MedicineEntry.NAME, name); 
      cv.put(MedicineEntry.type, type); 
      cv.put(MedicineEntry.dosage, dosage); 

      long id=sqldb.insert(MedicineEntry.TABLE, null, cv); 
      Toast.makeText(this, "Record Added Generated id is : "+id, Toast.LENGTH_LONG).show(); 
      break; 

} しかしWORKS FOR ONLY 1 CLASS同じコードに別のテーブル名とFEILDS、NOTが作成し、値を挿入するために、他の活動に作品で、あなたはすべての活動

のために複数のテーブルを作成することを管理する方法を教えてくださいすることができます
+0

同じコードだが、私はテーブル名とフィールドをpnlyに変更した –

+0

私は、あなたの抽象クラスMedicineEntryには、MedicineEntry._IDがないと思う。 –

+0

上記のコードは作業中です。私は同じコードを使用していましたが、私は同じコードを使用していましたが、他の活動のために別のテーブルを作成しましたが、セッション、患者、血盟マネージャーなどのテーブルを作成しません。 –

答えて

0

を必要としますが、データソースクラスを使用し、各クラスでそれを使用しようと思います。

0

あなたはあなたがすべてのテーブルとSQLiteのデータベースに関連するメソッドを作成するべきSqlitehelperクラスを作成する必要があります Data Source android

関連する問題