Abstract
CQL++ is a declarative front end to the Ode object-oriented database. It combines a SQL-like syntax with the C++ class model. CQL++ provides facilities for defining classes, and for creating, querying, displaying, and updating objects. Classes and objects created using CQL++ can freely be intermixed with those created using O++, the primary programming language of Ode. CQL++ gives its users a relatively straightforward interface, by hiding from them such O++ details as object-ids, public and private members of objects, and the implementations (bodies) of member functions.
CQL++ is based on an object algebra that preserves the closure property of SQL. CQL++ queries operate upon sets of objects and return sets of objects. CQL++ supports a rich collection of set types to maximize functionality and expressive power. CQL++ allows the user to define new classes, which can include computed attributes and make use of multiple inheritance. The user can supply default and null values for attributes, and indicate how class objects are to be displayed.
Preview
Unable to display preview. Download preview PDF.
References
“Ontos Object Database SQL Command Reference”, Ontologie, Inc., Burlington, MA, Nov. 1989.
R. Agrawal and N. H. Gehani, “Rationale for the Design of Persistence and Query Processing Facilities in the Database Programming Language O++”, 2nd Int'l Workshop on Database Programming Languages, Portland, OR, June 1989.
R. Agrawal and N. H. Gehani, “Ode (Object Database and Environment): The Language and the Data Model”, Proc. ACM-SIGMOD 1989 Int'l Conf. Management of Data, Portland, Oregon, May–June 1989, 36–45.
R. Agrawal, S. J. Buroff, N. H. Gehani and D. Shasha, “Object Versioning in Ode”, Proc. IEEE 7th Int'l Conf. Data Engineering, Tokyo, Japan, Feb. 1991.
A. M. Alashqur, S. Y. W. Su and H. Lam, “OQL: A Query Language for Manipulating Object-Oriented Databases”, Proc. 15th Int'l Conf. Very Large Data Bases, Amsterdam, The Netherlands, Aug. 1989, 433–442.
D. Beech, “A Foundation for Evolution from Relational to Object Databases”, Proc. of Int'l Conf. on Extending Database Technology, March 1988.
M. J. Carey, D. J. DeWitt and S. L. Vandenberg, “A Data Model and Query Language for EXODUS”, Proc. ACM-SIGMOD 1988 Int'l Conf. on Management of Data, Chicago, Illinois, June 1988, 413–423.
S. Dar, N. H. Gehani and H. V. Jagadish, “CQL++: An SQL for a C++ Based Object-Oriented DBMS”, AT&T Bell Labs Technical Memorandum, 1991.
O. Deux, “The O2 Database Programming Language”, Communications of the ACM, Sep. 1991.
P. Dewan, A. Vikram and B. Bhargava, “Engineering the Object-Relation Model in O-Raid”, Proceedings Of The International Conference on Foundations of Data Organization and Algorithms, June 1989, 389–403.
D. H. Fishman, J. Annevelink, E. C. Chow, T. Connors, J. W. Davis, W. Hassan, C. G. Hoch, W. Kent, S. Leichner, P. Lyngback, B. Mahbod, M. A. Neimat, T. Risch, M. C. Shan and W. K. Wilkinson, “Overview of the Iris DBMS”, Technical Report HPL-SAL-89-15, HP Labs, Jan. 1989.
G. Gardarin, J. P. Cheiney, G. Kiernan, D. Pastre and H. Stora, “Managing Complex Objects in an Extensible Relational DBMS”, Proc. 15th Int'l Conf. Very Large Data Bases, Amsterdam, The Netherlands, Aug. 1989, 55–65.
N. H. Gehani and H. V. Jagadish, “Ode as an Active Database: Constraints and Triggers”, Proc. 17th Int'l Conf. Very Large Data Bases, Barcelona, Spain, 1991, 327–336.
W. Kim, “A Model of Queries for Object-Oriented Databases”, Proc. 15th Int'l Conf. Very Large Data Bases, Amsterdam, The Netherlands, Aug. 1989, 423–432.
W. Kim, N. Ballou, H. Chou, J. F. Garza and D. Woelk, “Features of the Orion Object Database System”, in Object-Oriented Concepts and Databases, W. Kim and F.H. Lochovsky (ed.), Addison-Wesley, 1989, 251–282.
C. Lecluse, P. Richard and F. Velez, “O2, an Object-Oriented Data Model”, Proc. ACM-SIGMOD 1988 Int'l Conf. on Management of Data, Chicago, Illinois, June 1988, 424–433.
D. Lieuwen and D. DeWitt, “Optimizing Loops in Database Programming Languages”, 3rd Int'l Workshop on Database Programming Languages, Nafplion, Greece, Aug. 1991.
V. Linnemann, K. Kuspert, P. Dadam, P. Pistor, R. Erbe, A. Kemper, N. Sudkamp, G. Walch and M. Wallrath. “Design and Implementation of an Extensible Database Management System Supporting User Defined Data Types and Functions”, Proc. 14th Int'l Conf. Very Large Data Bases, Los Angeles, California, Aug.–Sept. 1988, 294–305.
J. Melton, (ed.), “(ISO-ANSI Working Draft) Database Language SQL2 and SQL3”, ANSI X3H2-90-001, Dec. 1989.
P. B. Mitschang, “Extending the Relational Algebra to Capture Complex Objects”, Proc. 15th Int'l Conf. Very Large Data Bases, Amsterdam, The Netherlands, Aug. 1989, 297–305.
P. Pistor and F. Andersen, “Designing A Generalized NF2 Model With an SQL-Type Interface”, Proc. 12th Int'l Conf. on Very Large Databases, Kyoto, Japan, Aug. 1986, 278–285.
M. A. Roth, H. F. Korth and D. S. Balory, “SQL/NF: A Query Langage For-1NF Relational Databases”, Information Systems 12, 1(1987), 99–114.
L. A. Rowe and M. R. Slonebraker, “The POSTGRES Data Model”, Proc. 13th Int'l Conf. Very Large Data Bases, Brighton, England, Sept. 1987, 83–96.
H. J. Schek and M. Scholl, “The Relation Model with Relation-Valued Attributes”, Information Sys. 11, 2(1986)
D. L. Spooner, M. Hardwick and G. Samaras, “Some Conceptual Ideas For Extending SQL For Object-Oriented Engineering Database Systems”, Proc. IEEE 1st International Conference on Data and Knowledge Systems for Manufacturing and Engineering, Oct. 1987, 163–169.
B. Stroustrup, in The C++ Programming Language (2nd Ed.), Addison-Wesley, 1991.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dar, S., Gehani, N.H., Jagadish, H.V. (1992). CQL++: A SQL for the Ode object-oriented DBMS. In: Pirotte, A., Delobel, C., Gottlob, G. (eds) Advances in Database Technology — EDBT '92. EDBT 1992. Lecture Notes in Computer Science, vol 580. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0032432
Download citation
DOI: https://doi.org/10.1007/BFb0032432
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55270-3
Online ISBN: 978-3-540-47003-8
eBook Packages: Springer Book Archive