Maison > base de données > tutoriel mysql > Identification des objets et objets et texte

Identification des objets et objets et texte

PHPz
Libérer: 2023-08-31 22:25:16
avant
574 Les gens l'ont consulté

Identification des objets et objets et texte

Le SGBD prend en charge les données orientées objet. Il assure une correspondance directe entre les objets du monde réel et leurs représentations dans la base de données. Cette correspondance garantit que les objets conservent leur intégrité et leur identité. Il permet une identification et une manipulation faciles. ODMS) attribue une identité unique à chaque objet indépendant stocké dans la base de données.

Cette identité unique est obtenue grâce à un identifiant d'objet (OID) généré par le système. Cet OID sert de valeur unique attribuée à chaque objet par le système. Il n'est pas visible pour les utilisateurs externes. Cependant, le système l'utilise en interne pour assurer l'identification unique de chaque objet et pour établir et gérer les références entre objets. Si nécessaire, le système attribue des OID aux variables de programme du type approprié pour les opérations impliquant l'objet.

Immuabilité et unicité

La principale exigence d'un identifiant d'objet (OID) dans un système de gestion de données d'objet (ODMS) est l'immuabilité. Il est crucial que la valeur OID attribuée à un objet spécifique reste inchangée, garantissant la préservation de l'identité de l'objet dans le monde réel. doit intégrer des mécanismes pour générer des OID et renforcer leur immuabilité. Il est souhaitable que chaque OID soit unique et utilisé une seule fois. Même si un objet est supprimé de la base de données, son OID ne doit pas être réaffecté à un autre objet.

Pour répondre à ces exigences, l'OID ne doit dépendre d'aucune valeur d'attribut de l'objet. Cela est nécessaire car les valeurs d'attribut peuvent changer ou être corrigées au fil du temps, chaque relation nécessite une clé primaire si la valeur. de la clé primaire est modifiée, le tuple prendra en compte une nouvelle identité. Dans différentes relations, l'objet du monde réel peut avoir des noms différents pour ses attributs clés. Cela peut créer des défis pour déterminer si les clés représentent le même objet du monde réel. l'identifiant de l'objet peut être représenté par "Emp_id" dans une relation et par "Ssn" dans une autre relation.

Utilisez des identifiants d'objet (OID) pour une récupération efficace

L'identifiant d'objet (OID) sur l'adresse physique de l'objet stocké est jugé inapproprié dans un système de gestion de base de données (SGBD). En effet, l'adresse physique peut changer suite à une réorganisation physique de la base de données. Les systèmes (ODMS) ont utilisé l'adresse physique comme OID afin d'améliorer l'efficacité de la récupération d'objets.

Pour s'adapter aux changements d'adresses physiques, des mécanismes impliquant des pointeurs indirects peuvent être utilisés. Ce pointeur est placé à l'adresse d'origine et fournit le nouvel emplacement physique de l'objet. Cependant, dans la pratique moderne, il est plus courant d’attribuer des entiers longs comme OID. Par la suite, une table de hachage ou une structure de données similaire est utilisée pour mapper la valeur OID à l'adresse physique actuelle de l'objet stocké. Cette approche garantit que l'OID n'est affecté par aucune réorganisation physique tout en permettant une récupération efficace des objets.

Premières approches et défis avec les OID

Dans les premiers modèles de données orientés objet (OO), il était nécessaire que toutes les entités, y compris les valeurs simples et les objets complexes, soient représentées comme des objets. Par conséquent, chaque valeur de base comme un entier, une chaîne ou une valeur booléenne était attribuée. un identifiant d'objet (OID). Cette approche permettait à des valeurs de base identiques de posséder des OID différents, ce qui pourrait être avantageux dans certaines situations. Par exemple, la valeur entière 50 pourrait représenter le poids en kilogrammes dans un contexte et l'âge d'une personne. dans un autre contexte. En créant deux objets de base distincts avec des OID séparés, les deux objets pourraient représenter la valeur entière 50. Cependant, bien que cette approche ait une valeur théorique, elle s'est avérée peu pratique car elle aboutissait à la génération d'un grand nombre d'OID.

Pour remédier à cette limitation, la plupart des systèmes de bases de données orientés objet prennent désormais en charge les représentations objet et littérales (ou valeur). Chaque objet doit avoir un OID immuable qui lui est attribué pour garantir son identification unique. En revanche, une valeur littérale n’a pas d’OID et représente simplement sa propre valeur. En règle générale, les valeurs littérales sont stockées dans l'objet et ne peuvent pas être référencées par d'autres objets. De plus, dans de nombreux systèmes, il est possible de créer des valeurs littérales structurées complexes sans OID correspondant si vous le souhaitez.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal