νΉμ ν μ΄λΈμ΄ μ°Έμ‘°νλ μΈλ ν€ κ΄κ³λ₯Ό νμΈνλ 쿼리
SELECT conrelid::regclass AS table_name,
conname AS constraint_name,
confrelid::regclass AS referenced_table
FROM pg_constraint
WHERE contype = 'f' AND conrelid = 'your_table_name'::regclass;
[conrelid]
μ μ½μ΄ κ±Έλ € μλ ν μ΄λΈμ OID(Object Identifier)μ΄λ€.
conrelid::regclassλ‘ ν΄λΉ ν μ΄λΈ μ΄λ¦μ μ‘°νν μ μλ€.
[confrelid]
μΈλ ν€κ° μ°Έμ‘°νλ λμ ν μ΄λΈμ OIDμ΄λ€.
confrelid::regclassλ‘ μ°Έμ‘° λμ ν μ΄λΈ μ΄λ¦μ μ‘°νν μ μλ€.
[pg_constraint]
PostgreSQLμμ ν μ΄λΈ κ°μ μ μ½ μ‘°κ±΄(Constraint)μ κ΄λ¦¬νλ μμ€ν μΉ΄νλ‘κ·Έ ν μ΄λΈμ΄λ€.
μΈλ ν€, κΈ°λ³Έ ν€, κ³ μ ν€, μ²΄ν¬ μ μ½ λ±μ μ μ₯νκ³ μλ€.
[contype = 'f']
contypeμ μ μ½μ μ νμ λνλ΄λλ°, 'f'λ μΈλ ν€(Foreign Key)λ₯Ό μλ―Ένλ€.
λ°λΌμ μΈλ ν€ μ μ½ μ‘°κ±΄λ§ μ‘°ννλ€.
['your_table_name'::regclass]
μ¬κΈ°μλ your_table_nameμ μ€μ ν μ΄λΈ μ΄λ¦μΌλ‘ λ°κΎΈμ΄ μ¬μ©νλ€.
μ΄ λΆλΆμ 쿼리μμ conrelidλ₯Ό ν΄λΉ ν μ΄λΈμ OIDλ‘ λΉκ΅νκΈ° μν΄ μ¬μ©λλ€.
μμ SQL
SELECT conrelid::regclass AS table_name,
conname AS constraint_name,
confrelid::regclass AS referenced_table
FROM pg_constraint
WHERE contype = 'f' AND conrelid = 'orders'::regclass;
μ€ν κ²°κ³Ό μμ
table_name | constraint_name | referenced_table
-------------------------------------------------------
orders | orders_user_id_fkey | users
orders | orders_product_id_fkey | products
νΉμ ν μ΄λΈμ΄ μ°Έμ‘°νλ μΈλ ν€ κ΄κ³λ₯Ό νμΈνλ 쿼리
SELECT conrelid::regclass AS table_name,
conname AS constraint_name,
confrelid::regclass AS referenced_table
FROM pg_constraint
WHERE contype = 'f' AND conrelid = 'your_table_name'::regclass;
[conrelid]
μ μ½μ΄ κ±Έλ € μλ ν μ΄λΈμ OID(Object Identifier)μ΄λ€.
conrelid::regclassλ‘ ν΄λΉ ν μ΄λΈ μ΄λ¦μ μ‘°νν μ μλ€.
[confrelid]
μΈλ ν€κ° μ°Έμ‘°νλ λμ ν μ΄λΈμ OIDμ΄λ€.
confrelid::regclassλ‘ μ°Έμ‘° λμ ν μ΄λΈ μ΄λ¦μ μ‘°νν μ μλ€.
[pg_constraint]
PostgreSQLμμ ν μ΄λΈ κ°μ μ μ½ μ‘°κ±΄(Constraint)μ κ΄λ¦¬νλ μμ€ν μΉ΄νλ‘κ·Έ ν μ΄λΈμ΄λ€.
μΈλ ν€, κΈ°λ³Έ ν€, κ³ μ ν€, μ²΄ν¬ μ μ½ λ±μ μ μ₯νκ³ μλ€.
[contype = 'f']
contypeμ μ μ½μ μ νμ λνλ΄λλ°, 'f'λ μΈλ ν€(Foreign Key)λ₯Ό μλ―Ένλ€.
λ°λΌμ μΈλ ν€ μ μ½ μ‘°κ±΄λ§ μ‘°ννλ€.
['your_table_name'::regclass]
μ¬κΈ°μλ your_table_nameμ μ€μ ν μ΄λΈ μ΄λ¦μΌλ‘ λ°κΎΈμ΄ μ¬μ©νλ€.
μ΄ λΆλΆμ 쿼리μμ conrelidλ₯Ό ν΄λΉ ν μ΄λΈμ OIDλ‘ λΉκ΅νκΈ° μν΄ μ¬μ©λλ€.
μμ SQL
SELECT conrelid::regclass AS table_name,
conname AS constraint_name,
confrelid::regclass AS referenced_table
FROM pg_constraint
WHERE contype = 'f' AND conrelid = 'orders'::regclass;
μ€ν κ²°κ³Ό μμ
table_name | constraint_name | referenced_table
-------------------------------------------------------
orders | orders_user_id_fkey | users
orders | orders_product_id_fkey | products