Azure / Azure/data-api-builder
[Enh]: introduce `dab update <stored-proc> --parameter <param-name> --<property-name> <property-value>`
- Langage dominant
- C#
- Étoiles
- 1.5k
- Forks
- 370
- Merge moyen
- 3 j 22 h
- PR mergées (30 j)
- 9
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
```
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par suivre le fonctionnement de la commande existante `dab update` et de sa syntaxe de paramètres en masse, puis examinez les tests CLI et la documentation associés. La modification est terminée lorsque les mises à jour ciblées peuvent modifier une propriété d’un paramètre de procédure stockée, que la redéfinition en masse héritée fonctionne toujours avec la sortie de syntaxe suggérée et que les exemples documentés recommandent la nouvelle forme.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- csharp
- Domaine
- cli, databases
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 48/100