Вы можете сохранить любое желаемое значение из-за гибкости SQLite (за одним исключением, из псевдонима rowid, которым вы идентифицируете столбец, вы можете хранить любой тип значения в любом типе столбца).
Вы можете сохранить нулевое значение, не указав значение для столбца (если оно не определено с помощью ограничения NOT NULL), для которого потребуется указать столбцы для вставки.
Так что в вашем случаеSQL, используемый для вставки, должен быть равен: -
INSERT INTO your_table (due_date_column_name,due_time_column_name) VALUES('2018-01-01','10:30');
При использовании метода вставки это будет выглядеть следующим образом: -
ContentValues cv = new ContentValues();
cv.put(COLUMN_DUEDATE,"2018-01-01");
cv.put(COLUMN_DUETIME,"10:00");
long inserted_id = db.insert(TABLE_NAME,null,cv);
Вместо: -
ContentValues cv = new ContentValues();
cv.put(COLUMN_DUEDATE,"2018-01-01");
cv.put(COLUMN_DUETIME,"10:00");
cv.putCOLUMN_NOTIFTIME,calculated_notiftime_as_long);
long inserted_id = db.insert(TABLE_NAME,null,cv);
Однако простейшим способом было бы сохранить длинную, которая не была бы логически действительной и, следовательно, легко обнаруживаемой, в то же время даты (так что срок выполнения + время_действия - время уведомления = 0)), 0, вероятно, будет самым простым, -1 также часто используется, чтобы ничего не указывать (обычно, когда 0 может быть допустимым).