読者です 読者をやめる 読者になる 読者になる

そーす

福岡在住のプログラマ

Orma Inner join バグ

Android

v2.0.6

@Table
public class Message {
    @PrimaryKey(auto = false, onConflict = OnConflict.IGNORE)
    public long id;

    @Column
    public String body;

    @Column
    public Image image;

    @Column
    public Image image2;
}

こういう2つ以上同じモデルをカラムとしてもつ場合、生成されるSQL文にバグがあるらしく

 E/SQLiteLog: (1) ambiguous column name: Image.original_url
W/System.err: android.database.sqlite.SQLiteException: ambiguous column name: Image.original_url (code 1): , while compiling: SELECT "Message"."body", "Message"."image", "Image"."original_url", "Image"."thumbnail_url", "Image"."id", "Message"."image2", "Image"."original_url", "Image"."thumbnail_url", "Image"."id", "Message"."id" FROM "Message" JOIN "Image" ON "Message"."image" = "Image"."id"  JOIN "Image" ON "Message"."image2" = "Image"."id"

多分これかな

github.com