Fixed length binary columns in user defined table types fail when constructed
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 55/100
Piste de recherche
Commencez par lire src/SqlClient.DesignTime/DesignTime.fs autour de la ligne 544 et reproduisez le type de table personnalisé fourni à l’aide d’une colonne binary(16). Ajoutez un test unitaire de régression pour construire la valeur du type de table généré, puis vérifiez qu’il s’exécute jusqu’à son terme sans l’exception du constructeur SqlMetaData signalée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Issue Summary
When using a user defined table type with a fixed length binary column the wrong constructor for SqlMetaData is used resulting in the following exception.
System.ArgumentException: 'The dbType Binary is invalid for this constructor.'
This line looks like it's causing the issue, which incorrectly assumes if it is a fixed length that it can safely use the two parameter constructor:
To Reproduce
- Create a custom table type
CREATE TYPE [dbo].[CustomTableType] AS TABLE(
[Value] [binary](16)
)
- Use the type in a query
type StaticProvider =
SqlCommandProvider<"
Declare @Updates as CustomTableType = @Inputs;
" , staticConnectionString>
use cmd = new StaticProvider(context.connection, transaction = context.transaction)
cmd.AsyncExecute(
data.inputs
|> List.map(fun x ->
StaticProvider.CustomTableType( // <--- Error in constructor
Value = x.value
)
)
Error
System.ArgumentException: 'The dbType Binary is invalid for this constructor.'
Expected behavior
There should not be an error in this case.
What you can do
- I am willing to contribute a PR with a unit test showcasing the issue
- I am willing to test the bug fix before next release
- Langage dominant
- F#
- Étoiles
- 206
- Forks
- 65
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de fsprojects/FSharp.Data.SqlClient
-
Document agentic contribution workflowPeut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
-
can't use SQL2025 for design timePeut-être à nouveau libre @smoothdeveloper l’a pris il y a 98 jours, et aucune pull request n’est ouverte. Ouverte
fsprojects/FSharp.Data.SqlClient#484 · 3 commentaires · 1 personne assignée ·
-
Requirements going forward?Ouverteenhancement question
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
fsprojects/FSharp.Data.SqlClient#445 · 9 commentaires ·
-
enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 45/100
fsprojects/FSharp.Data.SqlClient#429 · 5 commentaires ·
-
NullReferenceException in SqlConnection.UseLocallyPeut-être à nouveau libre @smoothdeveloper l’a pris il y a 1231 jours, et aucune pull request n’est ouverte. Ouvertebug
fsprojects/FSharp.Data.SqlClient#428 · 2 commentaires · 1 personne assignée ·
Toutes les issues de fsprojects/FSharp.Data.SqlClient
Issues similaires
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
liberation-data/drivine-python#432 ·
Les mainteneurs répondent en général sous 1 jour
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
liberation-data/drivine#639 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 80/100
oracle/rust-oracledb#66 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
drizzle-team/drizzle-orm#6639 ·
Les mainteneurs répondent en général sous 4 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
scylladb/scylla-cdc-source-connector#402 ·
Les mainteneurs répondent en général sous 1 jour