---
title: SQL-019: Insert Provider Address
summary: Inserts a new provider address record into Oracle.
status: draft
owner: SAIF
last_reviewed: 2026-07-24
library: SAIF.Business.Provider
reference_type: package
---

# SQL-019: Insert Provider Address

Inserts a new provider address record into Oracle.

## Classification

| Field | Value |
| --- | --- |
| **SQL ID** | SQL-019 |
| **Operation type** | Create |
| **Execution method** | Inline |
| **Database** | Oracle |
| **Schema** | [unqualified]** |
| **Command type** | Text |
| **Business object** | `clsProviderAddress` |
| **Criteria property** | `InsertSQL` |
| **Lifecycle method** | `BeforeInsert` |

## Parameters

| Parameter | Direction | Type | Max length | Description |
| --- | --- | --- | --- | --- |
| :ProviderLocationSeqNum | Input | Decimal | N/A | Value from `ProviderLocationSeqNum` |
| :ProviderAddressCode | Input | String | 5 | Value from `ProviderAddressCode` |
| :EffDate | Input | Date | N/A | Value from `EffDate` |
| :ForeignAddressFlag | Input | String | 1 | Value from `ForeignAddressFlag` |
| :ExpDate | Input | clsSmartDate | N/A | Value from `m_ExpDate` |
| :AddressLine1 | Input | clsSmartString | 40 | Value from `m_AddressLine1` |
| :AddressLine2 | Input | clsSmartString | 40 | Value from `m_AddressLine2` |
| :AddressLine3 | Input | clsSmartString | 40 | Value from `m_AddressLine3` |
| :CityName | Input | clsSmartString | 25 | Value from `m_CityName` |
| :StateCode | Input | clsSmartString | 2 | Value from `m_StateCode` |
| :ZipCode | Input | clsSmartDecimal | N/A | Value from `m_ZipCode` |
| :ZipCodeExt | Input | clsSmartString | 4 | Value from `m_ZipCodeExt` |
| :CountryCode | Input | clsSmartString | 2 | Value from `m_CountryCode` |
| :ProviderAddressSeqNum | Input | Decimal | N/A | Value from `ProviderAddressSeqNum` |
| :UpdateUser | Input | String | 30 | Value from `UpdateUser` |
| :UpdateNum | Input | Decimal | N/A | Value from `UpdateNum` |
| :UpdateDate | Input | Date | N/A | Value from `UpdateDate` |

## Tables

| Table | Access | Columns used |
| --- | --- | --- |
| [PROVIDER_ADDRESS](../database-tables.md#provider_address) | INSERT | See business-object criteria for key columns. |

## Sample SQL

```sql
Insert into PROVIDER_ADDRESS ( PROVIDER_ADDRESS_SEQ_NUM, PROVIDER_LOCATION_SEQ_NUM, PROVIDER_ADDRESS_CODE, EFF_DATE, EXP_DATE, ADDRESS_LINE1, ADDRESS_LINE2, ADDRESS_LINE3, CITY_NAME, STATE_CODE, ZIP_CODE, ZIP_CODE_EXT, COUNTRY_CODE, FOREIGN_ADDRESS_FLAG, UPDATE_USER, UPDATE_NUM, UPDATE_DATE ) Values ( :ProviderAddressSeqNum, :ProviderLocationSeqNum, :ProviderAddressCode, :EffDate, :ExpDate, :AddressLine1, :AddressLine2, :AddressLine3, :CityName, :StateCode, :ZipCode, :ZipCodeExt, :CountryCode, :ForeignAddressFlag, :UpdateUser, :UpdateNum, :UpdateDate)
```


## Operations and processes
- [Maintain provider address](../operations/maintain-provider-address.md)

## Business rules
- [BR-007: Address effective periods must not overlap](../business-rules.md#br-007-address-effective-periods-must-not-overlap)
- [BR-008: Domestic addresses require city, state, and ZIP data](../business-rules.md#br-008-domestic-addresses-require-city-state-and-zip-data)

> **Note:** Statements marked with `**` could not be confirmed; treat as unknown until verified.

## Sources
- `Business\SAIF.Business.Provider\clsProviderAddress.vb`
