Skip to main content

Editor's Column - Traditional DBMS

Editor's column
There were days when Rooms-sized processors used for processing data. IT boomed up at the start of 21st Century and so many innumerable inventions made Computer world and few among them are still up in the markets for thier better implemented programming Alogrithms which couples with computer hardware and software ( OS ).

Textpads or notepads were the repository of data and programmers had to be Experts to do data manipulation. In other words, Programmers had to use thier own logic to do insert , delete, update in data source.

For instance,

Consider the following:

file1.txt:
1 I am line number 1
2 I am line number 2
3 I am line number 3
4 I am line number 4
5 I am line number 5
6 I am line number 6
7 I am line number 7
8 I am line number 8
9 I am line number 9
10 I am line number 10


To programmatically delete 8 th record , developer had to use the following logic with OLD file handling methods in 3rd generation language.

1. Open file1.txt, and a temporary file temp_f.txt
2. Read lines one by one
3. Match the 8th line records
4. If matches, Dont write in file temp_f.txt
5. If match not found, write record in temp_f.txt
6. Repeat step 2,3,4,5 until the file1.txt reaches it end of line
7. Close file1.txt and delete file1.txt
8. Now rename the file temp_f.txt to file1.txt

Applies same for other DML operations!

User would never know file1.txt has just been removed of only 8 th records, but what actually happens is the file is completely read and except for one record everything is written into an another file and renamed to source.

As we are in 'RAPID-Technolgoical-Environment', we even ignore to read so much and look for what is intended.

Thanks to RDBMS which now makes everyone's task easy.

Comments

Popular posts from this blog

Design and Operations ( Employee- Model )

-- DB design drop table emp_Salary; drop table emp_Designation; drop table emp; drop table Designations; drop table Departments; drop table Salary_Bands; drop table Addresses; Create table emp( emp_id number, emp_Name varchar2(20), emp_address_id varchar2(10), emp_created_date date, emp_created_by varchar2(20), constraint e_pk primary key(emp_id) ); Create table Departments( dept_id number, dept_name Varchar2(20), constraints dept_pk primary key(dept_id) ); Create table Designations( dept_id number references Departments(dept_id), desg_id number, desg_description varchar2(20), constraints desg_pk primary key(dept_id,desg_id) ); Create table emp_Designation( emp_id number references emp(emp_id), emp_des_dept_id number references departments(dept_...

How to remove duplicate rows without using DISTINCT or ROWID or GROUP BY methods in Oracle?

Make use of SET operators and CTAS (Create Table AS) method.. Example: Create table tmp_tb1 as Select * from table1 intersect Select * from table1; truncate table table1; insert into table1 select * from tmp_tb1; -- This will now have removed all duplicates in the table... commit; *** You can use UNION operator in place of INTERSECT

Identify current and prev details of a customer

  create table customer_rating( id char, name char, irrating char, jcrrating char, procDate date, flag char ); insert into customer_rating values('A','D','X','Y','28-Jul-21','M'); insert into customer_rating values('A','D','M','L','27-Jul-21','M'); Select cr.id, cr.name, cr_prev.irrating pcob_rating, cr.irrating cob_rating, cr_prev.jcrrating pcob_jcr_rating, cr.jcrrating cob_jcr_rating From Customer_Rating cr join Customer_Rating cr_Prev  ON cr.procdate = '28-Jul-21' AND cr_prev.id = cr.id AND cr_prev.procdate = (  Select max(procdate) from Customer_Rating  Where id=cr.id and procdate < cr.procdate ) ;