Skip to main content

Bridging the gap between C++ and relational databases

  • Conference paper
  • First Online:
ECOOP ’96 — Object-Oriented Programming (ECOOP 1996)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1098))

Included in the following conference series:

Abstract

This work presents a new approach to access existing relational databases from C++ programs in an easy and natural way. The coupling of both worlds makes use of data reverse engineering techniques. Semantics that is inherent to relational data is made explicit by using object-oriented concepts extensively. Relationships and subtypes are expressed directly in order to take great benefit of them. C++ application programs are thus given the ability to handle relational data as if they were C++ objects.

The key to our approach is a powerful specification language that allows for defining object-oriented views, i.e., describing how object types, relationships between them, and subtype hierarchies are derived from relational tables. Even complex relational situations can be remodelled in an intuitive and concise manner.

Given a concrete specification, a C++ database interface is generated preserving the object-oriented view for accessing relational data. Access methods are automatically implemented on top of the relational system.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Aksit, L. Bergmans, S. Vural: An Object-Oriented Language-Database Integration Model: The Composition-Filters Approach. In [Mad92]

    Google Scholar 

  2. A. Alashqur, C. Thompson: O-R Gateway: A System for Connecting C++ Application Programs and Relational Databases. In: C++ Conference, Portland 1992, USENIX Association, Berkeley

    Google Scholar 

  3. E. Bertino, M. Negri, G. Pelagatti, L. Sbattella: Applications of Object-Oriented Technology to the Integration of Heterogeneous Database Systems. In: Distributed and Parallel Databases 1994, Vol. 2

    Google Scholar 

  4. Reverse Engineering. Special Issue of Comm. of the ACM 37(5), 1994

    Google Scholar 

  5. M. Castellanos, F. Saltor: Semantic Enrichment of Database Schemas: An Object-Oriented Approach. In: Proc. of 1st Int. Workshop on Interoperability in Multidatabase Systems Kyoto (Japan), 1991

    Google Scholar 

  6. R. Cattell (ed.): The ODMG-93 Standard for Object Databases. 2nd edition, Morgan-Kaufmann Publishers, San Mateo (CA) 1994

    Google Scholar 

  7. R. Chiang, T. Barron, V. Storey: Reverse Engineering of Relational Databases: Extraction of an EER model from a Relational Database. Data&Knowledge Engineering 12, 1994

    Google Scholar 

  8. Proc. 12th Int. Conf. on Entity-Relationship Approach. Karlsruhe 1993

    Google Scholar 

  9. M. Härtig: An Object-Oriented Integration Framework for Building Heterogeneous Database Systems. In [HNS92]

    Google Scholar 

  10. D.K. Hsia, E.J. Neuhold, R. Sacks-Davis (eds.): Proc. of the 5th IFIP WG 2.6 Database Semantics Conference (DS-5) on Interoperable Database Systems, Lorne (Australia), 1992

    Google Scholar 

  11. U. Hohenstein: Query Processing in Semantically Enriched Relational Databases. In: Basque Int. Workshop on Information Technology (BIWIT'95) “Data Management Systems”, San Sebastian (Spain), 1995

    Google Scholar 

  12. U. Hohenstein, C. Körner: A Graphical Tool for Specifying Semantic Enrichment of Relational Databases. In: 6th IFIP WG 2.6 Work. Group on Data Semantics (DS-6) “Semantics of Database Applications” 1995

    Google Scholar 

  13. U. Hohenstein, E. Odberg: A C++ Database Interface Based upon the Entity-Relationship Approach. In: Proc. of 11th British National Conf. on Database Systems (BNCOD11), Keele (England) 1993

    Google Scholar 

  14. J.-L. Hainault, C. Tonneau, M. Joris, M. Chandelon: Schema Transformation Techniques for Database Reverse Engineering. In [ERA93]

    Google Scholar 

  15. Legacy Systems. Special Issue of IEEE Software 12(1), 1995

    Google Scholar 

  16. W. Kim: On Unifying Relational and Object-Oriented Database Systems. In [Mad92]

    Google Scholar 

  17. M. Kaul, K. Drosten, E. Neuhold: ViewSystem: Integrating Heterogeneous Information Bases by Object-Oriented Views. In: Proc. 6th Int. Conf. on Data Engineering, Los Angeles 1990

    Google Scholar 

  18. O.L. Madsen (ed.): European Conf. on Object-Oriented Programming (ECOOP92), Utrecht 1992

    Google Scholar 

  19. V. Markowitz, J. Makowsky: Identifying Extended ER Object Structures in Relational Schemas. IEEE Trans. on Software Engineering 16(8), 1990

    Google Scholar 

  20. B. Narasimhan, S. Navathe, S. Jayaraman: On Mapping ER and Relational Models into OO Schemas. In [ERA93]

    Google Scholar 

  21. G. Pernul, H. Hasenauer: Combining Reverse with Forward Engineering — A Step forward to Solve the Legacy System Problem. In: Int. Conf. on Database and Expert Systems Applications, 1995

    Google Scholar 

  22. W. Premerlani, M. Blaha: An Approach for Reverse Engineering of Relational Databases. Communications of the ACM 37(5), May 1994

    Google Scholar 

  23. F. Saltor, M. Castellanos, M. Garcia-Solaco: Overcoming Schematic Discrepancies in Interoperable Databases. In [HNS92]

    Google Scholar 

  24. M. Schrefl, E. Neuhold: A Knowledged-Based Approach to Overcome Structural Differences in Object-Oriented Database Integration. In: The Role of Artifical Intelligence in Database & Information Systems. IFIP Working Conf., Canton (China) 1988

    Google Scholar 

  25. S. Spaccapietra, C. Parent: Conflicts and Correspondence Assertions in Interoperable Databases. ACM SIGMOD-RECORD 1991, 20(4)

    Google Scholar 

  26. B. Stroustrup: The C++ Programming Language. 2nd edition, Addison-Wesley 1991

    Google Scholar 

  27. L.-L. Yan, T.-W. Ling: Translating Relational Schema With Constraints Into OODB Schema. In [HNS92]

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Pierre Cointe

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hohenstein, U. (1996). Bridging the gap between C++ and relational databases. In: Cointe, P. (eds) ECOOP ’96 — Object-Oriented Programming. ECOOP 1996. Lecture Notes in Computer Science, vol 1098. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053071

Download citation

  • DOI: https://doi.org/10.1007/BFb0053071

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-61439-5

  • Online ISBN: 978-3-540-68570-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics