Design and Development of a Bangla SQL System for

8 downloads 0 Views 180KB Size Report
Design and Development of a Bangla SQL System for DBMS. Al-Mukaddim Khan. Pathan .... Bijoy keyboard layout has been used to do the operation. ▫ Since it ...
Design and Development of a Bangla SQL System for DBMS Al-Mukaddim Khan A. K. M. Najmul Islam Department of CIT, Pathan Department of CIT, Islamic University of Technology, Board Bazar, Gazipur-1704, Bangladesh. [email protected]

Salimur Rashid Choudhury

Sazadul Amin Lemon

Islamic University of Department of Computer Department of CIT, Technology, Board Bazar, Science and Engineering, Islamic University of Gazipur-1704, Bangladesh. Sylhet International University, Technology, Board Bazar, [email protected] Sylhet, Bangladesh. Gazipur-1704, Bangladesh. [email protected] [email protected]

Abstract In the last couple of years, few works have been done to in the field of Bangla SQL (BSQL) system. Most of the works done so far, concentrate on the development of the Bangla SQL interface that uses a dictionary to find the English reference strings of the input Bangla SQL command words and works accordingly. Unlike that, in this paper, we have reported the development of a Bangla SQL system from the scratch. The proposed BSQL system does not use a dictionary. Rather, it has its own Bangla SQL command words to do query on the given database. A parser is designed to get the tokens from the BSQL commands. The grammar for the proposed BSQL is developed and an Integrated Development Environment (IDE) is also built to support the proposed BSQL system. Keywords Bangla SQL (BSQL), DBMS, parser, Development Interface (IDE), grammar.

Integrated

1. INTRODUCTION ORACLE was the first company that releases a very powerful English-based interactive tool, SQL-structured query language [1]. This language allows end user to store data, modify data, delete and retrieve data from the relational database management system [1]. Relational database management system is the collection of data, which organize data as relations (i.e., table). We know near about 200 million people use Bangla as their language [2]. But there is no full-fledged, Banglabased SQL system. Very few Researches have been done in this aspect. In this regard, we have proposed a fullfledged Bangla SQL system. Most of the works done so far, concentrate on the development of the Bangla SQL interface that uses a dictionary to find the English reference strings of the input Bangla SQL command words and works accordingly. But the proposed BSQL system does not use a dictionary. Rather, it has its own Bangla SQL command words to do query on the given database. A parser is designed to get the tokens from the BSQL commands. The grammar for the proposed BSQL is developed and an Integrated Development Environment (IDE) is also built to support the proposed BSQL system. The rest of the paper is organized as follows: Section 2 discusses on the SQL, Section 3 provides the block diagram and the grammar of the proposed BSQL system, Section 4 deals with the component description of the proposed BSQL system, Section 5 performs the performance evaluation and Section 6 concludes the paper.

2. THE EXISTING SQL SYSTEM Using SQL one can create and maintain data manipulation objects such as tables, views, sequences etc and the actual manipulation of data within these objects is done using SQL in the database management system [3]. There are several types of SQL statements [4]. 2.1. DDL statements These statements are used to define schema-object (i.e., description of the database) and also to grant and revoke privileges. For example: create table ( , < field_name 2> , ... < field_name n> ); 2.2. DML statements These statements are used to specify query, insert, delete and update operations. In addition, locking a table or view or examining the execution plan of a query. 2.3. Transaction control statements Transaction control statements in SQL include COMMIT, SAVEPOINT, and ROLLBACK. 2.4. Session control statements Session control statements allow users to control the properties of their current session by enabling or disabling roles of users and changing language setting. For example: ALTER SESSION, CREATE ROLE. 2.5. System control statements These statements allow the administrator to change setting such as the minimum number of shared services or to kill a session. For example: ALTER SYSTEM. 2.6. Embedded SQL statement Allow SQL statement to be embedded in a procedural programming language such as PL/SQL of ORACLE or C language. 3. BLOCK DIAGRAM OF THE PROPOSED BSQL SYSTEM The block diagram of the proposed BSQL system is shown in figure 1. 3.1 The grammar The grammar for the proposed BSQL system is: BSQL keyword + tableId +table+Format keyword … tableId letter(letter|digit)* letter … digit

table format fields field fieldId dataType

4.1. Interface The user gives BSQL statements in the > prompt in Bangla. Whenever a user clicks on button, the text area will be activated and then user will be able to give BSQL command at

(fields); field| field, fields fieldId+ dataType tableId ....

4. COMPONENT DESCRIPTION The proposed system is a completely Bangla-based SQL system, where all the BSQL statements will be given in Bangla. This BSQL system can be divided into several modules: Interface Parser Spell and syntax checker Execution module The different modules are described here:

> prompt. Whenever a user clicks on the button, input is sent to the parser module and the area. output of the query will be shown in the After that if a user wants to make another query, he must have to click on button again. Whenever a button, the BSQL program will be user clicks on terminated. 4.1.1. An example The Integrated Development Environment (IDE) for the proposed BSQL system is shown in figure 2.

Figure 1. The proposed BSQL system.

Figure 2. The IDE of the proposed BSQL system.

Suppose we want to create a table named fields write

and

; where

having will be the

(primary key). For this purpose, we have to the statementat the.

> prompt. Then we click at the area we find the result of the button and in the statement. 4.2. Parser The parser takes input from interface module and parses (i.e., split each individual part) the necessary information from the command. For example: is the table name, keywords of BSQL, and

Where, and are the are the field names,

< >and are the data types and is the primary key. The parser extracts all the individual part from the BSQL command in an array. Then it sends them to the spell and syntax checker module. 4.3. Spell and Syntax checker This module takes input from the parser and check it based on the grammar. For example: Where is the table name, and are the keywords of BSQL.

The following steps are taken by the spell and syntax checker based on the above example: keyword’s spelling. Check Then check whether one or more space is present. Gets table name . is present in Then it checks whether table the database of BSQL system. If present, it again checks to see whether one or more space is present. Then checks the keyword’s spelling And then check whether ‘;’ is present or not. If spell and syntax checker finds any problem then it will send appropriate error message on the display area like the following:

etc. If spell and syntax checker finds no problem, it will send necessary information to the execution module. 4.4. Execution module This execution module executes the BSQL statement based on the information given by the spell and syntax checker module. For example, if the command is given, it gets from the spell and syntax checker module the table name , keyword and all the values. Then it recognizes the and inserts all the values into the keyword

an

Execution module checks all the necessary constraint defined in the database. It ensures that wrong data will not be inserted in the database.

5. PERFORMANCE EVALUATION The proposed BSQL system has a number of advantages stated as follows: The proposed BSQL system doses not make use of any dictionary or lookup table. Rather, the system is developed from the scratch as a fullfledged Bangla-based SQL system. We have used the ASCII value of the Bangla words. Bijoy keyboard layout has been used to do the operation. Since it does not make use of any intermediate dictionary the speed of operation is increased. We used simple Bangla words to make SQL statements. So, it is easy to remember and there is less possibility of making syntax error. If anybody makes any error then the appropriate error message will be displayed on the area of the interface so that user can detect error and resubmit the query.

6. CONCLUSION Here, in this paper, we have presented the analysis, design and implementation technique of the proposed BSQL system. Initially we have implemented it only using several simple DDL and DML statement and did not consider complex and nested queries. We are working to gradually develop the BSQL system so that it includes all the features of English SQL system. Such a system will encourage the major community of our country who has lack in English and allow them to expertise in the field of database management system.

table in the database and delivers area as: -acknowledgement on the

REFERENCES [1] L. Kevin, “Oracle 9i: The Complete Reference”, McGraw Hill-Edition, 2002, pp-8. [2] H. Kamrul, “Development of a Bangla SQL interface for DBMS”, ICCIT-2002. [3] S. Abraham, “Database System Concepts”, McGrawHill International Editions, Singapore, 1997. [4] Navathe, ”Fundamentals of Database”, McGraw Hill-forth edition, pp-332

Suggest Documents