SAIF.Framework.Preferences database tables¶
This page catalogs the single database table accessed by SAIF.Framework.Preferences.
Table catalog¶
| Table | Database | Schema/Link | CRUD | Purpose | Primary business object |
|---|---|---|---|---|---|
| USER_PREFERENCE | Oracle | [unqualified]** |
C/R/U/D | Stores one row per saved application/page/user preference blob | PreferenceData |
USER_PREFERENCE¶
| Field | Value |
|---|---|
| Database | Oracle |
| Schema/Link | [unqualified]** — no OWNER. prefix appears in any of the library's SQL statements, and no Web.config/App.config file exists in this library to confirm the connecting Oracle schema owner. |
| Purpose | Stores one row per saved user preference — a JSON-encoded key/value blob scoped by application name, user ID, and optional page name. |
| Access pattern | Direct inline SQL (no stored procedures, no IBusinessCriteria business-object pattern). |
| CRUD operations | Create, Read, Update, Delete — all four are performed by PreferenceData. |
| Key columns used | USER_ID, APP_NAME, PAGE_NAME, PREFERENCE_TEXT, UPDATE_DATE, UPDATE_USER, USER_PREFERENCE_SEQ_NUM |
| Sequence | USER_PREFERENCE_SEQ |
| Related tables | None — no joins or foreign-key relationships were found in any of the library's 7 SQL statements. |
| Business objects | PreferenceData, Preference |
Operations referencing this table¶
- Retrieve single preference blob
- Retrieve all preferences for a user
- Save (upsert/delete) preference
- Insert preference row
- Update preference row
- Delete preference row
- Check preference existence
Business rules referencing this table¶
- BR-001: User IDs are normalized to lower case
- BR-002: Empty preference text triggers deletion
- BR-003: Preference identity is scoped by app, user, and optional page
- BR-004: Update is skipped when stored value is unchanged
- BR-005: Preference text is trimmed before storage
- BR-006: Preference item payload is JSON-encoded key/value data
SQL referencing this table¶
- SQL-001: Insert preference — sequence key generation
- SQL-002: Retrieve single preference blob
- SQL-003: Retrieve all preferences for a user
- SQL-004: Insert preference row
- SQL-005: Update preference row
- SQL-006: Delete preference row
- SQL-007: Check preference existence
Table relationship diagram¶
No cross-table relationships were identified in this library's SQL. USER_PREFERENCE is the only table referenced across all 7 cataloged SQL statements, with no JOIN clauses in any statement.
Note: Statements marked with
**could not be confirmed; treat as unknown until verified.
Related documentation¶
- Index
- Overview
- Architecture
- Dependencies
- Operations and processes
- Business rules
- SQL catalog
- API reference
Sources¶
- SAIF.Framework.Preferences\PreferenceData.cs