1 回答

TA貢獻1818條經驗 獲得超7個贊
通過進行有限的測試,如果外鍵是在列級別定義的,那么id列對于之前定義的外鍵來說是一個更高的值。
您可以使用在 SELECT 語句中返回結果的編譯指示,例如并根據其中一列進行排序(如果使用了合適的列命名約定,則使用了 id,您可以根據from列進行排序(注意它需要被括起來) ))
SELECT * FROM pragma_foreign_key_list('mytable') ORDER BY id ASC;
例如考慮以下內容:-
DROP TABLE IF EXISTS mytable;
CREATE TABLE IF NOT EXISTS mytable (id INTEGER PRIMARY KEY,
_otherd_building_id_reference INTEGER REFERENCES _building(_id),
_building_id_reference INTEGER REFERENCES _building(_id),
_room_id_reference INTEGER REFERENCES _room(_id),
_campus_id_reference INTEGER REFERENCES _campus(_id),
_othera_campus_reference INTEGER REFERENCES _campus(_id),
_otherz_room_id_reference INTEGER REFERENCES _room(_id),
_otherc_building_id_reference INTEGER REFERENCES _building(_id)
);
SELECT * FROM pragma_foreign_key_list('mytable') ORDER BY id DESC;
請注意,最初的列沒有像* other? 這樣的前綴?被添加,othera,c 和 z 被添加到最后,最后 _otherd_building_id_reference 被添加。
結果,在運行上述內容時始終如一: -
- 1 回答
- 0 關注
- 134 瀏覽
添加回答
舉報