当我试图更新一个包含日期(以文本形式)、sqlexecsql(sql)或rawquery(sql)的字段时,我遇到了一个问题。我不知道为什么要删除这行。如果有人能帮助我,我将不胜感激
CREATE TABLE [Study](
[IdMedicalStudy] INTEGER PRIMARY KEY ASC AUTOINCREMENT NOT NULL UNIQUE,
[Fecha] TEXT,
[IdDoctor] INTEGER NOT NULL REFERENCES [Doctors]([IdDoctor]) ON UPDATE CASCADE,
[IdTypeOfMedicalStudy] INTEGER NOT NULL REFERENCES [TypeOfMedicalStudy]([IdTTypeOfMedicalStudy]) ON UPDATE CASCADE,
[IdMedicalStudyPlace] INTEGER NOT NULL REFERENCES [MedicalStudyPlace]([IdMedicalStudyPlace]) ON UPDATE CASCADE);
public void updateRow (ContentValues contentValues) {
SQLiteDatabase db = this.getWritableDatabase();
String sql = "UPDATE " + ConstDB.TABLE_MEDICAL_STUDY + " SET "
+ ConstDB.TABLE_MEDICAL_STUDY_DATE + " = '"
+ contentValues.get(ConstDB.TABLE_MEDICAL_STUDY_DATE).toString().trim()
+ "', " + ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY _PLACE + " = "
+ contentValues.get(ConstDB.ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY _PLACE)
+ ", " + ConstDB.TABLE_MEDICAL_STUDY_ID_DOCTOR + " = "
+ contentValues.get(ConstDB.TABLE_MEDICAL_STUDY_ID_DOCTOR)
+ ", " + ConstDB.TABLE_TABLE_ID_TYPE OF MEDICAL STUDY + " = "
+ contentValues.get(ConstDB.TABLE_ID_TYPE OF MEDICAL STUDY)
+ " WHERE " + ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY + " = "
+ contentValues.get(ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY);
try {
db.execSQL(sql);
db.close();
Toast.makeText(context, "Row updated", Toast.LENGTH_SHORT).show();
db.close();
} catch (SQLException e) {
Toast.makeText(context, e.getMessage(), Toast.LENGTH_SHORT).show();
db.close();
}发布于 2019-01-16 09:59:43
以上代码中有许多错误,例如不允许使用空格的空格,但在
测试表明,代码原则上(经过上述更改/更正)可以正常工作,并且不会丢失数据。
工作示例代码
ConstDB.java
这是基于您的代码构建的,但可能会有所不同:
public class ConstDB {
public static final String TABLE_MEDICAL_STUDY_TYPE = "[TypeOfMedicalStudy]";
public static final String TABLE_MEDICAL_STUDY_TYPE_ID = "[IdTTypeOfMedicalStudy]";
public static final String TABLE_MEDICAL_STYUDY_TYPE_NAME = "[TypeName]";
public static final String TABLE_MEDICAL_STUDY_DOCTOR = "[Doctors]";
public static final String TABLE_MEDICAL_STUDY_DOCTOR_ID = "[IdDoctor]";
public static final String TABLE_MEDICAL_STUDY_DOCTOR_NAME = "[DoctorName]";
public static final String TABLE_MEDICAL_STUDY_STUDY_PLACE = "[MedicalStudyPlace]";
public static final String TABLE_MEDICAL_STUDY_STUDY_PLACE_ID = "[IdMedicalStudyPlace]";
public static final String TABLE_MEDICAL_STUDY_STUDY_PLACE_NAME = "[PlaceName]";
public static final String TABLE_MEDICAL_STUDY = "[Study]";
public static final String TABLE_MEDICAL_STUDY_DATE = "[fecha]";
public static final String TABLE_MEDICAL_STUDY_ID_DOCTOR = "[IdDoctor]";
public static final String TABLE_TABLE_ID_TYPE_OF_MEDICAL_STUDY = "[IdTypeOfMedicalStudy]";
public static final String TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY = "[IdMedicalStudy]";
public static final String TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE = "[IdMedicalStudyPlace]";
//TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE
/*
CREATE TABLE [Study](
[IdMedicalStudy] INTEGER PRIMARY KEY ASC AUTOINCREMENT NOT NULL UNIQUE,
[Fecha] TEXT,
[IdDoctor] INTEGER NOT NULL REFERENCES [Doctors]([IdDoctor]) ON UPDATE CASCADE,
[IdTypeOfMedicalStudy] INTEGER NOT NULL REFERENCES [TypeOfMedicalStudy]([IdTTypeOfMedicalStudy]) ON UPDATE CASCADE,
[IdMedicalStudyPlace] INTEGER NOT NULL REFERENCES [MedicalStudyPlace]([IdMedicalStudyPlace]) ON UPDATE CASCADE);
*/
public static final String TABLE_MEDICAL_STUDY_CREATESQL = "CREATE TABLE IF NOT EXISTS " +
TABLE_MEDICAL_STUDY +
"(" +
TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY + " INTEGER PRIMARY KEY ASC AUTOINCREMENT NOT NULL UNIQUE," +
TABLE_MEDICAL_STUDY_DATE + " TEXT," +
TABLE_MEDICAL_STUDY_ID_DOCTOR + " INTEGER NOT NULL REFERENCES " +TABLE_MEDICAL_STUDY_DOCTOR +
"(" + TABLE_MEDICAL_STUDY_DOCTOR_ID + ") ON UPDATE CASCADE," +
TABLE_TABLE_ID_TYPE_OF_MEDICAL_STUDY + " INTEGER NOT NULL REFERENCES " + TABLE_MEDICAL_STUDY_TYPE +
"(" + TABLE_MEDICAL_STUDY_TYPE_ID + ") ON UPDATE CASCADE," +
TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE + "INTEGER NOT NULL REFERENCES " + TABLE_MEDICAL_STUDY_STUDY_PLACE +
"(" + TABLE_MEDICAL_STUDY_STUDY_PLACE_ID + ") ON UPDATE CASCADE" +
")";
public static final String TABLE_MEDICAL_STUDY_TYPE_CREATESQL = "CREATE TABLE IF NOT EXISTS " +
TABLE_MEDICAL_STUDY_TYPE +
"(" +
TABLE_MEDICAL_STUDY_TYPE_ID + " INTEGER PRIMARY KEY," +
TABLE_MEDICAL_STYUDY_TYPE_NAME + " TEXT" +
")";
public static final String TABLE_MEDICAL_STUDY_DOCTOR_CREATESQL = "CREATE TABLE IF NOT EXISTS " +
TABLE_MEDICAL_STUDY_DOCTOR +
"(" +
TABLE_MEDICAL_STUDY_DOCTOR_ID + " INTEGER PRIMARY KEY," +
TABLE_MEDICAL_STUDY_DOCTOR_NAME + " TEXT" +
")";
public static final String TABLE_MEDICAL_STUDY_STUDY_PLACE_CREATESQL = "CREATE TABLE IF NOT EXISTS " +
TABLE_MEDICAL_STUDY_STUDY_PLACE + "(" +
TABLE_MEDICAL_STUDY_STUDY_PLACE_ID + " INTEGER PRIMARY KEY, " +
TABLE_MEDICAL_STUDY_STUDY_PLACE_NAME + " TEXT" +
")";
}DBHelper.java
我没有看到任何对扩展SQLiteOpenHelper的类(通常称为Database Helper)的引用,所以这等同于您所拥有的类。
public class DBHelper extends SQLiteOpenHelper {
SQLiteDatabase mDB;
Context mContext;
public static final String DBNAME = "ms";
public static final int DBVERSION = 1;
public DBHelper(Context context) {
super(context, DBNAME, null, DBVERSION);
this.mContext = context;
mDB = this.getWritableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(TABLE_MEDICAL_STUDY_DOCTOR_CREATESQL);
db.execSQL(TABLE_MEDICAL_STUDY_TYPE_CREATESQL);
db.execSQL(TABLE_MEDICAL_STUDY_STUDY_PLACE_CREATESQL);
db.execSQL(TABLE_MEDICAL_STUDY_CREATESQL);
}
@Override
public void onConfigure(SQLiteDatabase db) {
super.onConfigure(db);
db.setForeignKeyConstraintsEnabled(true);
}
@Override
public void onUpgrade(SQLiteDatabase db, int i, int i1) {
}
public long addStudyType(String studyTypeName) {
ContentValues cv = new ContentValues();
cv.put(TABLE_MEDICAL_STYUDY_TYPE_NAME,studyTypeName);
return mDB.insert(TABLE_MEDICAL_STUDY_TYPE,null,cv);
}
public long addDoctor(String doctorName) {
ContentValues cv = new ContentValues();
cv.put(TABLE_MEDICAL_STUDY_DOCTOR_NAME,doctorName);
return mDB.insert(TABLE_MEDICAL_STUDY_DOCTOR,null,cv);
}
public long addPlace(String placeName) {
ContentValues cv = new ContentValues();
cv.put(TABLE_MEDICAL_STUDY_STUDY_PLACE_NAME,placeName);
return mDB.insert(TABLE_MEDICAL_STUDY_STUDY_PLACE,null,cv);
}
public long addStudy(String date, long doctor, long type, long place) {
ContentValues cv = new ContentValues();
cv.put(TABLE_MEDICAL_STUDY_DATE,date);
cv.put(TABLE_MEDICAL_STUDY_ID_DOCTOR,doctor);
cv.put(TABLE_TABLE_ID_TYPE_OF_MEDICAL_STUDY,type);
cv.put(TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE,place);
return mDB.insert(TABLE_MEDICAL_STUDY,null,cv);
}
public void updateRow (ContentValues contentValues) {
SQLiteDatabase db = this.getWritableDatabase();
String sql = "UPDATE " + ConstDB.TABLE_MEDICAL_STUDY + " SET "
+ ConstDB.TABLE_MEDICAL_STUDY_DATE + " = '"
+ contentValues.get(ConstDB.TABLE_MEDICAL_STUDY_DATE).toString().trim()
//<<<<<<<<<< COMMENTED OUT + "', " + ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY _PLACE + " = " //<<<<<<<<<< extra space
+ "', " + ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE + " = "
//<<<<<<<<<< COMMENTED OUT+ contentValues.get(ConstDB.ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY _PLACE) //<<<<<<<<<< extra space
+ contentValues.get(ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE)
+ ", " + ConstDB.TABLE_MEDICAL_STUDY_ID_DOCTOR + " = "
+ contentValues.get(ConstDB.TABLE_MEDICAL_STUDY_ID_DOCTOR)
//<<<<<<<<<< COMMENTED OUT + ", " + ConstDB.TABLE_TABLE_ID_TYPE OF MEDICAL STUDY + " = "
+ ", " + ConstDB.TABLE_TABLE_ID_TYPE_OF_MEDICAL_STUDY + " = "
//<<<<<<<<<< COMMENTED OUT+ contentValues.get(ConstDB.TABLE_ID_TYPE OF MEDICAL STUDY)
+ contentValues.get((ConstDB.TABLE_TABLE_ID_TYPE_OF_MEDICAL_STUDY))
+ " WHERE " + ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY + " = "
+ contentValues.get(ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY);
//<<<<<<<<<< try/catch block will not necessarily indicate row not update
//<<<<<<<<<< Betwer way is to use the update convenience methdo which returns the number of rows updated
/*
try {
db.execSQL(sql);
db.close();
Toast.makeText(mContext, "Row updated", Toast.LENGTH_SHORT).show();
db.close();
} catch (SQLException e) {
Toast.makeText(mContext, e.getMessage(), Toast.LENGTH_SHORT).show();
db.close();
}
*/
ContentValues cv = new ContentValues();
cv.put(ConstDB.TABLE_MEDICAL_STUDY_DATE, contentValues.get(ConstDB.TABLE_MEDICAL_STUDY_DATE).toString().trim());
cv.put(ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE, contentValues.getAsLong(ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE));
cv.put(ConstDB.TABLE_MEDICAL_STUDY_ID_DOCTOR, contentValues.getAsLong(ConstDB.TABLE_MEDICAL_STUDY_ID_DOCTOR));
cv.put(TABLE_TABLE_ID_TYPE_OF_MEDICAL_STUDY, contentValues.getAsLong(ConstDB.TABLE_TABLE_ID_TYPE_OF_MEDICAL_STUDY));
String whereclause = ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY + "=?";
String[] whereargs = new String[]{String.valueOf(contentValues.getAsLong(ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY))};
int rv = mDB.update(ConstDB.TABLE_MEDICAL_STUDY, cv, whereclause, whereargs);
if (rv < 1) {
Toast.makeText(mContext,"Row not updated.",Toast.LENGTH_SHORT);
} else {
Toast.makeText(mContext,"Updated " + String.valueOf(rv) + " rows",Toast.LENGTH_LONG);
}
}
public void logAll() {
Cursor c;
c = mDB.query(ConstDB.TABLE_MEDICAL_STUDY_TYPE,null,null,null,null,null,null);
DatabaseUtils.dumpCursor(c);
c = mDB.query(ConstDB.TABLE_MEDICAL_STUDY_DOCTOR,null,null,null,null,null,null);
DatabaseUtils.dumpCursor(c);
c= mDB.query(TABLE_MEDICAL_STUDY_STUDY_PLACE,null,null,null,null,null,null);
DatabaseUtils.dumpCursor(c);
logStudy();
}
public void logStudy() {
DatabaseUtils.dumpCursor(mDB.query(TABLE_MEDICAL_STUDY,null,null,null,null,null,null));
}
public ContentValues preapreCVForUpdate(long studyId, String studyDate, long doctorId, long type, long place) {
ContentValues rv = new ContentValues();
rv.put(ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY,studyId);
rv.put(ConstDB.TABLE_MEDICAL_STUDY_DATE,studyDate);
rv.put(ConstDB.TABLE_MEDICAL_STUDY_ID_DOCTOR,doctorId);
rv.put(ConstDB.TABLE_TABLE_ID_TYPE_OF_MEDICAL_STUDY,type);
rv.put(ConstDB.TABLE_MEDICAL_STUDY_ID_MEDICAL_STUDY_PLACE,place);
return rv;
}
} MainActivity.java
这是一个简单的活动,用于测试创建表,使用一些测试数据填充它们,最后使用修改/更正的updateRow方法更新数据:
public class MainActivity extends AppCompatActivity {
DBHelper mDBHlpr;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mDBHlpr = new DBHelper(this);
mDBHlpr.addDoctor("Mary");
mDBHlpr.addDoctor("Sue");
mDBHlpr.addDoctor("Fred");
mDBHlpr.addDoctor("Tom");
mDBHlpr.addStudyType("Skeletal");
mDBHlpr.addStudyType("Cardial");
mDBHlpr.addStudyType("Cranial");
mDBHlpr.addStudyType("Abdominal");
mDBHlpr.addPlace("Home");
mDBHlpr.addPlace("St. Barts");
mDBHlpr.addPlace("Paddington");
mDBHlpr.addPlace("London School of Medicine");
mDBHlpr.addStudy("2019-01-01 10:30",2,3,3);
mDBHlpr.addStudy("2019-01-02 12:45",1,1,1);
mDBHlpr.addStudy("2019-01-03 15:25",3,2,4);
mDBHlpr.logAll();
mDBHlpr.updateRow(mDBHlpr.preapreCVForUpdate(2,"2019-01-02 16:45",4,4,2));
mDBHlpr.logStudy();
}
}结果
关于更新,id为2的行被添加为:-
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdMedicalStudy=2
2019-01-17 14:34:23.206 4595-4595/? I/System.out: fecha=2019-01-02 12:45
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdDoctor=1
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdTypeOfMedicalStudy=1
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdMedicalStudyPlace=1在更新is之后:-
2019-01-17 14:34:23.211 4595-4595/? I/System.out: IdMedicalStudy=2
2019-01-17 14:34:23.211 4595-4595/? I/System.out: fecha=2019-01-02 16:45
2019-01-17 14:34:23.211 4595-4595/? I/System.out: IdDoctor=4
2019-01-17 14:34:23.212 4595-4595/? I/System.out: IdTypeOfMedicalStudy=4
2019-01-17 14:34:23.212 4595-4595/? I/System.out: IdMedicalStudyPlace=2这与
mDBHlpr.updateRow(mDBHlpr.preapreCVForUpdate(2,"2019-01-02 16:45",4,4,2));更新ID为2的研究行-日期为2019-01-01 -引用Doctors表中ID为4的行(Tom) -引用Type表中ID为4的行(腹部)-引用位置中ID为2的行(St.Barts)
正如可以看到的那样,它已经做到了。
完整的日志如下:
2019-01-17 14:34:23.201 4595-4595/? I/System.out: >>>>> Dumping cursor android.database.sqlite.SQLiteCursor@fe54ec2
2019-01-17 14:34:23.201 4595-4595/? I/System.out: 0 {
2019-01-17 14:34:23.201 4595-4595/? I/System.out: IdTTypeOfMedicalStudy=1
2019-01-17 14:34:23.201 4595-4595/? I/System.out: TypeName=Skeletal
2019-01-17 14:34:23.201 4595-4595/? I/System.out: }
2019-01-17 14:34:23.201 4595-4595/? I/System.out: 1 {
2019-01-17 14:34:23.201 4595-4595/? I/System.out: IdTTypeOfMedicalStudy=2
2019-01-17 14:34:23.201 4595-4595/? I/System.out: TypeName=Cardial
2019-01-17 14:34:23.201 4595-4595/? I/System.out: }
2019-01-17 14:34:23.201 4595-4595/? I/System.out: 2 {
2019-01-17 14:34:23.201 4595-4595/? I/System.out: IdTTypeOfMedicalStudy=3
2019-01-17 14:34:23.202 4595-4595/? I/System.out: TypeName=Cranial
2019-01-17 14:34:23.202 4595-4595/? I/System.out: }
2019-01-17 14:34:23.202 4595-4595/? I/System.out: 3 {
2019-01-17 14:34:23.202 4595-4595/? I/System.out: IdTTypeOfMedicalStudy=4
2019-01-17 14:34:23.202 4595-4595/? I/System.out: TypeName=Abdominal
2019-01-17 14:34:23.202 4595-4595/? I/System.out: }
2019-01-17 14:34:23.202 4595-4595/? I/System.out: <<<<<
2019-01-17 14:34:23.202 4595-4595/? I/System.out: >>>>> Dumping cursor android.database.sqlite.SQLiteCursor@eadd4d3
2019-01-17 14:34:23.202 4595-4595/? I/System.out: 0 {
2019-01-17 14:34:23.202 4595-4595/? I/System.out: IdDoctor=1
2019-01-17 14:34:23.202 4595-4595/? I/System.out: DoctorName=Mary
2019-01-17 14:34:23.202 4595-4595/? I/System.out: }
2019-01-17 14:34:23.202 4595-4595/? I/System.out: 1 {
2019-01-17 14:34:23.203 4595-4595/? I/System.out: IdDoctor=2
2019-01-17 14:34:23.203 4595-4595/? I/System.out: DoctorName=Sue
2019-01-17 14:34:23.203 4595-4595/? I/System.out: }
2019-01-17 14:34:23.203 4595-4595/? I/System.out: 2 {
2019-01-17 14:34:23.203 4595-4595/? I/System.out: IdDoctor=3
2019-01-17 14:34:23.203 4595-4595/? I/System.out: DoctorName=Fred
2019-01-17 14:34:23.203 4595-4595/? I/System.out: }
2019-01-17 14:34:23.203 4595-4595/? I/System.out: 3 {
2019-01-17 14:34:23.203 4595-4595/? I/System.out: IdDoctor=4
2019-01-17 14:34:23.203 4595-4595/? I/System.out: DoctorName=Tom
2019-01-17 14:34:23.203 4595-4595/? I/System.out: }
2019-01-17 14:34:23.203 4595-4595/? I/System.out: <<<<<
2019-01-17 14:34:23.203 4595-4595/? I/System.out: >>>>> Dumping cursor android.database.sqlite.SQLiteCursor@50e1810
2019-01-17 14:34:23.204 4595-4595/? I/System.out: 0 {
2019-01-17 14:34:23.204 4595-4595/? I/System.out: IdMedicalStudyPlace=1
2019-01-17 14:34:23.204 4595-4595/? I/System.out: PlaceName=Home
2019-01-17 14:34:23.204 4595-4595/? I/System.out: }
2019-01-17 14:34:23.204 4595-4595/? I/System.out: 1 {
2019-01-17 14:34:23.204 4595-4595/? I/System.out: IdMedicalStudyPlace=2
2019-01-17 14:34:23.204 4595-4595/? I/System.out: PlaceName=St. Barts
2019-01-17 14:34:23.204 4595-4595/? I/System.out: }
2019-01-17 14:34:23.205 4595-4595/? I/System.out: 2 {
2019-01-17 14:34:23.205 4595-4595/? I/System.out: IdMedicalStudyPlace=3
2019-01-17 14:34:23.205 4595-4595/? I/System.out: PlaceName=Paddington
2019-01-17 14:34:23.205 4595-4595/? I/System.out: }
2019-01-17 14:34:23.205 4595-4595/? I/System.out: 3 {
2019-01-17 14:34:23.205 4595-4595/? I/System.out: IdMedicalStudyPlace=4
2019-01-17 14:34:23.205 4595-4595/? I/System.out: PlaceName=London School of Medicine
2019-01-17 14:34:23.205 4595-4595/? I/System.out: }
2019-01-17 14:34:23.205 4595-4595/? I/System.out: <<<<<
2019-01-17 14:34:23.205 4595-4595/? I/System.out: >>>>> Dumping cursor android.database.sqlite.SQLiteCursor@eb54f09
2019-01-17 14:34:23.205 4595-4595/? I/System.out: 0 {
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdMedicalStudy=1
2019-01-17 14:34:23.206 4595-4595/? I/System.out: fecha=2019-01-01 10:30
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdDoctor=2
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdTypeOfMedicalStudy=3
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdMedicalStudyPlace=3
2019-01-17 14:34:23.206 4595-4595/? I/System.out: }
2019-01-17 14:34:23.206 4595-4595/? I/System.out: 1 {
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdMedicalStudy=2
2019-01-17 14:34:23.206 4595-4595/? I/System.out: fecha=2019-01-02 12:45
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdDoctor=1
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdTypeOfMedicalStudy=1
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdMedicalStudyPlace=1
2019-01-17 14:34:23.206 4595-4595/? I/System.out: }
2019-01-17 14:34:23.206 4595-4595/? I/System.out: 2 {
2019-01-17 14:34:23.206 4595-4595/? I/System.out: IdMedicalStudy=3
2019-01-17 14:34:23.207 4595-4595/? I/System.out: fecha=2019-01-03 15:25
2019-01-17 14:34:23.207 4595-4595/? I/System.out: IdDoctor=3
2019-01-17 14:34:23.207 4595-4595/? I/System.out: IdTypeOfMedicalStudy=2
2019-01-17 14:34:23.207 4595-4595/? I/System.out: IdMedicalStudyPlace=4
2019-01-17 14:34:23.207 4595-4595/? I/System.out: }
2019-01-17 14:34:23.207 4595-4595/? I/System.out: <<<<<
2019-01-17 14:34:23.211 4595-4595/? I/System.out: >>>>> Dumping cursor android.database.sqlite.SQLiteCursor@adad2c5
2019-01-17 14:34:23.211 4595-4595/? I/System.out: 0 {
2019-01-17 14:34:23.211 4595-4595/? I/System.out: IdMedicalStudy=1
2019-01-17 14:34:23.211 4595-4595/? I/System.out: fecha=2019-01-01 10:30
2019-01-17 14:34:23.211 4595-4595/? I/System.out: IdDoctor=2
2019-01-17 14:34:23.211 4595-4595/? I/System.out: IdTypeOfMedicalStudy=3
2019-01-17 14:34:23.211 4595-4595/? I/System.out: IdMedicalStudyPlace=3
2019-01-17 14:34:23.211 4595-4595/? I/System.out: }
2019-01-17 14:34:23.211 4595-4595/? I/System.out: 1 {
2019-01-17 14:34:23.211 4595-4595/? I/System.out: IdMedicalStudy=2
2019-01-17 14:34:23.211 4595-4595/? I/System.out: fecha=2019-01-02 16:45
2019-01-17 14:34:23.211 4595-4595/? I/System.out: IdDoctor=4
2019-01-17 14:34:23.212 4595-4595/? I/System.out: IdTypeOfMedicalStudy=4
2019-01-17 14:34:23.212 4595-4595/? I/System.out: IdMedicalStudyPlace=2
2019-01-17 14:34:23.212 4595-4595/? I/System.out: }
2019-01-17 14:34:23.212 4595-4595/? I/System.out: 2 {
2019-01-17 14:34:23.212 4595-4595/? I/System.out: IdMedicalStudy=3
2019-01-17 14:34:23.212 4595-4595/? I/System.out: fecha=2019-01-03 15:25
2019-01-17 14:34:23.212 4595-4595/? I/System.out: IdDoctor=3
2019-01-17 14:34:23.212 4595-4595/? I/System.out: IdTypeOfMedicalStudy=2
2019-01-17 14:34:23.212 4595-4595/? I/System.out: IdMedicalStudyPlace=4
2019-01-17 14:34:23.212 4595-4595/? I/System.out: }
2019-01-17 14:34:23.212 4595-4595/? I/System.out: <<<<<https://stackoverflow.com/questions/54208181
复制相似问题