The abbreviation known as SQL corresponds to the English expression Structured Query Language (understood in Spanish as Structured Query Language), which identifies a type of language associated with the management of relational databases that is defined by the specification. Allows a variety of operations between them. Thanks to the use of algebra and relational calculations, SQL offers the possibility of consultations aimed at obtaining information from the database in a simple way.
Scientist Edgar Frank Codd (1923 - 2003) was the one who proposed a relational model for databases and created a sub-language for accessing the data to predict the data. Based on Codd's work, IBM (International Business Machines) defined a language called Structured English Query Language (SEQUEL).
SEQUEL is considered the predecessor of SQL, a fourth generation language that was standardized in 1986. The most primitive version of SQL, hence the name SQL-86 (also known as SQL1), was created.
In short, SQL is a high-level declarative language because, by handling record sets and not individual records, it provides high productivity in coding and object orientation. A SQL statement can be equivalent to more than one program that uses a low level language.
A database, experts say, implies the coexistence of several types of languages. The so-called Data Definition Language (also known as DDL) is one that allows the structure of objects covered by a database to be modified through four basic operations. SQL, on the other hand, is a language that allows manipulating data (Data Manipulation Language or DML) that contributes to the management of the database through queries.
How to build an efficient database?
Any company that aims for a bright future with potential for growth and expansion should have a database that will be different in each case, accommodating the particular needs of each type of business, but which must be carefully crafted. A solid and configurable structure that is open to potential modifications without jeopardizing its integrity.
One of the basic points when creating a database is indexing. To understand this concept, let's briefly look at a basic practical example: Suppose a company wants to store personal information of its customers and track their transactions; For this, one will likely have a table for your data (name, surname, e-mail address, etc.), another for the details of the products (item name, price, description) and one for sales. Before going into detail about what fields may exist in this last table, it should be mentioned that the rest contain one essential element to a good organization: a unique identification key.
Usually called the ID, it is usually a whole number (without a decimal) and the positive is that the database automatically assigns it to each new record (in this case, each new customer or product) and it is never repeated, so that it recognizes it as its birth (the moment of creation) until its death (when it is not finished). So, if we take for example the record "103 Pablo Bernal pbernal@proveedor.com", we will note that his ID is 103. What is its usefulness? In short, search for a customer whose name is n, his last name, and his e-mail, and, it takes more time to return all the data of the customer with ID "103" from Aadhaar. While it is likely that in the first operation we specify all your information, once the program is found, we can use this number for the rest of the consultations.
Going back for example, since the Customers and Products table will have their IDs, it is very simple to relate them to the Sales table; Its fields can be: Transaction ID, Customer ID, Product ID, Date, Overview. Without going into the technicalities, it is clear that each sale contains a lot of information, which can be seen at a glance, for example, the ID of the client helps us to access all our data in the corresponding table. In implementation, it goes without saying that the complexity can be enormous, but it's important to start with the basics to understand the importance of solid and efficient relationships.
What is NoSQL?
NoSQL is a new class of database management systems. The main feature is non-compliance with relational database concepts. NoSQL "not SQL".
The concept of NoSQL database has grown with the internet giants like Google, Facebook, Amazon etc which deal with huge amount of big data.
If you use a relational database for huge amounts of data, the system slows down and the response time deteriorates.
To overcome this, the system can be enhanced by upgrading the existing hardware.
The first conceivable alternative to the above problem would be to distribute the database load across multiple hosts as the load increases.
This is known as "scaling up".
A NoSQL database consists of non-relational databases better than relational databases and designed with web applications in mind.
They do not use SQL to search the data and do not follow strict schemes like the relational database model. With NoSQL, the ACID (Atomicity, Consistency, Isolation, Durability) properties are not always guaranteed, so the results are not always the same whereas an UPDATE will remember the key data.
Why is it useful to learn SQL after NoSQL?
With the advantages of NoSQL databases (scaling better than the relational model) outlined above, you might wonder why people still want to use relational databases in organizations.
The answer is that NoSQL databases are highly specialized systems with their own specific uses and limitations. NoSQL is more suitable for people who have huge amount of data to process. Most organizations use relational databases and associated tools.
Relational databases have the following advantages over NoSQL databases;
Relational databases have a mature data storage and management model. This is important for business users.SQL databases support authorization of data so that users can only view the data they are allowed to view. The data they are not allowed to see is hidden from them.Relational databases support stored procedures that allow database developers to implement much of the business logic in the database. This greatly simplifies applications as the developer does not have to take into account the business logic.Compared to NoSQL databases, relational databases have better security models.
The world did not say farewell to the use of relational databases. There is a growing demand for professionals who can work with relational databases. So it is still useful to gather knowledge about database and SQL.
In the early 1970s, Edgar F. After learning about the relational model from Codd [12], SQL was initially developed at IBM by Donald D. Chamberlin and Raymond F. Developed by Boyce. [13] This version, initially called SEQUEL (Structured English Query Language), was designed to manipulate and retrieve data stored in IBM's original quasirelational database management system, System R, which was developed by IBM SAN. Developed during the 1970s by a group at the Jose Research Laboratory. [13]
Chamberlin and Boyce's first attempt at a relational database language was Square, but it was difficult to use because of the subscript notation. After moving to the San Jose Research Laboratory in 1973, he began work on SEQUEL. [12] The acronym Sequel was later changed to SQL because "sequel" was a trademark of the UK-based Hawker Siddeley Mobility Engineering Limited company. [14]
After testing SQL at customer test sites to determine the usability and practicality of the system, IBM began developing commercial products based on its System R prototype, including System/38 , SQL/DS and DB2 , which were commercially available in 1979, 1981. and 1983, respectively. [15]
In the late 1970s, Relational Software, Inc. (now Oracle Corporation) saw the potential of the concepts described by Codd, Chamberlin, and Boyce, and developed its own SQL-based RDBMS with aspirations to sell it to the US Navy, Central Intelligence. agency, and other US government agencies. In June 1979, Relational Software introduced the first commercially available implementation of SQL, Oracle V2 (version 2), for VAX computers.
By 1986, the ANSI and ISO standards groups officially adopted the standard "Database Language SQL" language definition. New versions of the standard were published in 1989, 1992, 1996, 1999, 2003, 2006, 2008, 2011, [12] and most recently in 2016. [16]

0 Comments