Saturday, February 6, 2016

B5, Group B - Cummings



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.

4 comments:

  1. Bryan,
    I 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.

    ReplyDelete
  2. Bryan,

    I 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

    ReplyDelete
    Replies
    1. Oh definitely. It just occurred to me, maybe the 100 represents a price scale, not dollar amount?

      Delete
  3. I 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