Every library artifact has a type prefix and a UUID (1.abcd... service, 25.… BPD, 64.… coach view, 12.… business object, 7.… participant group, 61.… managed asset). In the Process Center database the items are in the "LSW_" tables, one per type; the column *_ID holds the id without the prefix.
-- which artifact is 25.1a2b3c4d-....? (BPDs)
select bpd_id, name, snapshot_id, branch_id from lsw_bpd where bpd_id = '1a2b3c4d-....';
-- services (type 1.)
select process_id, name, snapshot_id from lsw_process where process_id = '...';
-- coach views (64.), business objects (12.), managed assets (61.)
select coach_view_id, name from lsw_coach_view where coach_view_id = '...';
select class_id, name from lsw_class where class_id = '...';
select asset_id, name from lsw_managed_asset where asset_id = '...';
-- generic: every library item of a snapshot with its type
select po.name, po.po_type, po.po_id from lsw_po_versions po where po.snapshot_id = '<snapshot id without 2064.>';
Easier than SQL (and supported): the REST call GET /rest/bpm/wle/v1/snapshot/{snapshotId}?parts=validation returns the validation errors with the artifact id and name; and in the Web Process Designer you can paste the id into the library search box - it matches ids as well as names.
"Artifact is unreachable" means the item is referenced but not part of the snapshot any more (deleted, or from a toolkit dependency that changed - see question 3145). The referencing artifact is the one the validation entry names; open it, find the reference (a step's implementation, a variable's type, a coach view usage) and re-select it.
Do not update the LSW_ tables by hand - the Process Center keeps a version graph over them; use the designer or a twx export / import.
References