SQL stands for Structured Query
Language, and it is the standard language used specified by ANSI to communicate
with a database, specifically a relational database. A relational database, as a digital
relational model, organizes data into tables which represent relations between
the column and row vectors. SQL is used
to perform tasks on the database, which can include database updates,
modification, and data retrieval [1]. These
transactions are made through SQL via language elements which include clauses
(such as “update” or “set”, etc.), expressions (which are the arguments and can
either be a vector or scalar), predicates (which specify evaluated conditions
through logical statements, e.g. true/false/equal/etc,), queries (which
retrieves the data based on the previously established criteria—often makes use
of the “select” statement). [2]
The following depicts a simple SQL
query, taken from Wikipedia. Here, the “Select”
query is to retrieve points from the “Book” vector (expression) whose
corresponding prices (from a “price” vector) are greater than 100.
SQL of this type is standard for
overall database communication. However,
most systems also have their own proprietary languages added on which they can
use on their own internal system.
A significance of SQL is that is the
operator behind nearly every movement on a website [3]. Websites are not much more than a series of
databases, and interaction between different parts of the site require at the
least communication and exchange to the databases (for actions such as switching
from one page to another) and sometimes modification of the database (which can
happen during online purchase) [4]. All
of these interactions are based on queries in SQL. It is such a universal language that many
other tools have been built off it used for other application. In relation to the scope of this course, the
importance of SQL is that most—if not probably all—BIM software is built upon
relational database, as described above.
Therefore, SQL is crucial part and limiting factor of BIM’s
functionality.
[2] ANSI/ISO/IEC
International Standard (IS). Database Language SQL—Part 2: Foundation
(SQL/Foundation). 1999.
Bryan,
ReplyDeleteI agree that SQL is the platform upon which all websites have been built. This statement extends to the majority of programs, desktops, phones, and a full list of modern items. In relation to BIM, it is not surprising that SQL supplies the communication between the massive databases upon which programs like Revit run. The query command function allows the user to interact with different parts of Revit, including families. The family database is one of the most obvious databases within Revit. This database can be added to, selected from, and modified. Thus, I agree that SQL is a major part of BIM’s function, but I do not understand how it is a limiting factor. I believe BIM’s limiting factors come from other avenues.
Bryan,
ReplyDeleteI like your overview of SQL and how it relates to websites. Your example from Wikipedia is a perfect example how the sort function works on retail websites such as Amazon. Not that I would be searching for a book over $100, but details about an item such as price or shipping cost are based off of the SQL language. In terms of BIM, there would of course be different relevant details such as material or weight, but the same general concept remains the same.
~Danielle
Oh definitely. It just occurred to me, maybe the 100 represents a price scale, not dollar amount?
DeleteI liked that you related this back to BIM. Take Revit for example (since I know it fairly well). The amount of libraries and commands that are likely based of something like this, or very similar, is huge. You mentioned how most systems have their own proprietary languages built in to use with SQL; I also discussed this a bit in my post, where systems use embedded SQL.
ReplyDelete