International Journal of Research In Science & Engineering e-ISSN: 2394-8299 Volume: 3 Issue: 2 March-April 2017 p-ISSN: 2394-8280 IJRISE JOURNAL| www.ijrise.org|editor@ijrise.org [190-196] SQL Query Generator For Natural Language Amit Kumar Jaiswal 1 , Vivek Yadav 2 , Vidya Sagar Singh 3 1 Student, Computer Science & Engineering, UIET CSJM University Kanpur, amitkumarj441@gmail.com 2 Student, Computer Science & Engineering, UIET CSJM University Kanpur, vivekyadavofficial@gmail.com 3 Student, Computer Science & Engineering, UIET CSJM University Kanpur, vidyasagarsingh000@gmail.com ABSTRACT This research concerns with translating natural language into SQL queries by exploiting the Perl DBI library for both database construction and thesis verification in the task of question answering. We built SQGNL which uses linguistic dependencies and metadata to build sets of possible SELECT and WHERE clauses and is designed to be database and platform independent with multi-user support. It can be used by users with no knowledge of SQL to translate natural language to SQL queries. The program has the ability to learn new grammar. SQGNL application is written in Perl language with a simple user interface implemented using Tk module. It uses Perl recursive descent module to build the underlying parser. Our algorithm can be recursively applied to deal with complex questions, requiring nested SELECT instructions. Our preliminary results are encouraging as they show that our system generates the right SQL query among the first five in the 80% of the cases. This result can be greatly improved by re-ranking the queries with a machine learning algorithms. Keywords: Natural language translation, Perl module, database functionalities --------------------------------------------------------------------------------------------------------------- 1. INTRODUCTION SQGNL propose a large body of work based manual work for grammar specification and dataset annotation. However the task of question answering, translating natural language (NL) into something understandable by a machine, in an automatic way is rather challenging as it is not possible to hand-crafting all the needed rules. Database Management Systems are very powerful means of cumulating and retrieving large amounts of data quickly and efficiently. There are many different commercially available database management systems used around the world. However retrieving data out of the database is not an easy task. A special database interaction language called SQL (Structured Query Language) is used to communicate with these databases. Even though there is an ANSI standard for SQL, there are still minor differences between various database management systems, making it more difficult for even an experienced user to access data. SQGNL is aimed at shortening this complexity of database querying.First it is necessary to use a language that is understood by anybody, whether an expert database programmer or person with non-technical background. The best-pertinent language for this purpose is the English language. This means SQGNL has to translate English language queries into SQL statements before retrieving data from database.