J'ai une base de données tierce dans laquelle la clé primaire est un type de données char. Lorsque j'exécute ma requête, j'utilise un include pour inclure la table enfant. Le compte est nul cependant. Je regarde sql profiler et les résultats sont retournés. La seule chose que je peux voir est un problème avec les colonnes de relation étant char. Une solution pour cela?Type de données Char dans le problème d'infrastructure d'entité relationnelle
Répondre
Soyez prudent avec le type Char. "1234 "! = "1234"! La base de données ne peut pas remarquer cela, mais l'EF le fait.
Les enregistrements retournés à partir de la base de données correspondent à ce qui se trouve dans la base de données, n'est-ce pas? Même si la requête peut demander 1234, les résultats renvoyés par la requête sont "1234" pour le parent et "1234" pour l'enfant, n'est-ce pas? – Marsharks
Selon votre DB, je suppose. SQL Standard dit inclure les espaces. (Par opposition à VARCHAR, qui ne les requiert pas.) –
Donc, mes relations ne fonctionnent toujours pas avec char. – Marsharks
J'ai trouvé une solution. Si j'utilise dans ma requête pour sélectionner de l'enfant et inclure le parent, obtenir le premier enfant dans la liste, puis obtenir une référence au parent, je suis capable d'obtenir le parent avec tout l'enfant.
var query = from l in Context.LicenseItems
.Include("License")
Char est un hareng rouge, alors. Voici le véritable problème que vous traitez: http://blogs.msdn.com/alexj/archive/2009/06/02/tip-22-how-to-make-include-really-include.aspx –
- 1. fluent nhibernate problème cartographie char (1) type
- 2. Base de données relationnelle
- 3. Problème avec le type de données DateTime
- 4. Convertir le type de données MYSQL_TIME en chaîne char * ou C++
- 5. Problème de type de données double long dans C
- 6. Stockage d'objets R dans une base de données relationnelle
- 7. Utilisation de Lucene comme une base de données relationnelle
- 8. Représentation des paires clé/valeur où la valeur peut être de n'importe quel type (dans une base de données relationnelle)
- 9. base de données relationnelle et la structure de réseau
- 10. Préserver l'intégrité relationnelle avec Mnesia
- 11. Modélisation de différents types d'utilisateurs dans une base de données relationnelle
- 12. Problème avec le type de tableau "DAMPAR" dans MATLAB deconvolucy.m
- 13. Pourquoi nous ne pouvons pas avoir de type "char" enum
- 14. Question de modèle de conception de base de données relationnelle - base de données Massive Read Only
- 15. XSD neutre de base de données standard pour décrire un schéma de base de données relationnelle
- 16. convertir char ** en char * ou char
- 17. Problème C++ Stuffing 8 bits dans un char
- 18. Quel est le problème avec ce HQL? "Aucun type de données pour le noeud"
- 19. Comment imprimer le type de données de texte dans mysql
- 20. Char compte dans le serveur sql
- 21. Comment représenteriez-vous une entité relationnelle comme une seule unité de données récupérables dans BerkeleyDB?
- 22. Comment puis-je modéliser ceci dans une base de données relationnelle?
- 23. Erreur dans la requête avec le type de données XML
- 24. Structures de données persistantes efficaces pour la base de données relationnelle
- 25. Conversion de valeurs EBCDIC Char en Hex (données EBCD EBCDIC)
- 26. Modéliser correctement les statistiques sportives dans une base de données relationnelle
- 27. C++ char ** -> vecteur <string> -> string -> char ** problème d'analyse syntaxique
- 28. Base de données orientée objet Objet Vs Base de données relationnelle
- 29. RBuf8 char * dans Symbian C++
- 30. Problème de ligne de commande MySQL 5.1: supprimer le dernier char ne fonctionne pas
Pourriez-vous montrer le modèle d'entité et la requête. Les clés de char ne devraient pas être un problème par elles-mêmes. –
J'ai une table, Licence. La clé primaire est License_Number qui est un char (30). La table enfant est License_Item qui a une relation établie avec son champ License_Number. La licence d'entité possède une propriété de navigation appelée LicenseItems dans une relation un à plusieurs. de l dans context.License.Include ("LicenseItems") où l.License_Number == "1234" select l; Renvoie une licence, les éléments de licence sont chargés, mais le nombre est zéro. – Marsharks