Azure / Azure/data-api-builder

[Enh]: introduce `dab update <stored-proc> --parameter <param-name> --<property-name> <property-value>`

Ouverte
#3,191 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
2.x cli stored-procedure
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

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.