копирование в другую таблицу с одним дополнительным полем - PullRequest
0 голосов
/ 26 декабря 2018

У меня есть сущность

@Entity(tableName = "student_application")
public class StudentApplication {
    @PrimaryKey(autoGenerate = true)
    private Integer appliactionNo;
    @NonNull
    private String description;
    @NonNull
    private Integer studentAlbumNo;
    @NonNull
    private Integer distanceFromTheCheck_InPlace;
...
}

и DAO для этого

import android.arch.lifecycle.LiveData;
import android.arch.persistence.room.Dao;
import android.arch.persistence.room.Insert;
import android.arch.persistence.room.OnConflictStrategy;
import android.arch.persistence.room.Query;
import java.util.List;
@Dao
public interface StudentApplicationDao {
    @Insert(onConflict = OnConflictStrategy.IGNORE)
    void insert(StudentApplication studentApplication);

    @Query("SELECT * FROM student_application")
    LiveData<List<StudentApplication>> getStudentApplications();

    @Query("DELETE FROM student_application WHERE appliactionNo = :applicationNo")
    void deleteRow(Integer applicationNo);
}

У меня есть другая таблица, которая содержит все поля из этой таблицы и одно дополнительное «состояние».Я хотел бы сделать триггер, который после вставки чего-либо в эту таблицу будет делать копии в этой другой таблице.«статус» в начале всегда одинаков.Это возможно?Желательно с помощью аннотаций. Я читал, что выполнение процедур sqlite невозможно, но я не могу найти ничего значимого для этой проблемы.

В качестве крайней меры я вставляю это в то место, куда я вставляю что-то в student_applicationтаблице, но тогда мне нужно будет спросить базу данных, какой идентификатор приложения был назначен для студента с конкретным идентификатором.Тогда становится неразборчиво, я ищу лучший путь.

Спасибо за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...