Azure / Azure/data-api-builder
[Enh]: introduce `dab update <stored-proc> --parameter <param-name> --<property-name> <property-value>`
- Dominant language
- C#
- Stars
- 1.5k
- Forks
- 370
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 8
Description
## What?
Introduce:
```
dab update \
--parameter \
--
```
This allows updating a single stored procedure parameter without redefining all parameters.
## Why?
Today, modifying a single parameter requires redefining every parameter.
Also, this is
### Example of the problem
To change just one default value, you must restate all parameters:
```
dab update UpdateCustomerPreferences \
--parameters.name "CustomerID,EmailNotifications,SMSNotifications,PreferredCurrency,MarketingOptIn" \
--parameters.description "Customer ID to update,Enable email notifications for orders and promotions,Enable SMS notifications for shipping updates,Preferred billing currency (ISO 4217 code),Opt in to marketing communications" \
--parameters.required "true,false,false,false,false" \
--parameters.default ",true,false,EUR,false"
```
Even though only `PreferredCurrency` changed.
### Example of the solution
Update only the intended parameter:
```
dab update UpdateCustomerPreferences \
--parameter PreferredCurrency \
--default=EUR
```
Update description:
```
dab update FindProducts \
--parameter SearchText \
--description "This is the new description value."
```
## How?
* Keep supporting the existing bulk parameter syntax.
* Introduce targeted parameter mutation syntax.
* Update documentation to recommend the new approach.
* Leave legacy syntax for full parameter redefinition scenarios.
### Output
* When legacy syntax is used, output/log the new syntax preference.
```
Using legacy parameter syntax.
Consider using targeted syntax:
dab add \
--parameter \
--property-name
dab update \
--parameter \
--property-name
```
Contributor guide
Assessment
This issue has not been assessed yet.