JAIST Repository >
School of Information Science >
JAIST Research Reports >
Research Report - School of Information Science : ISSN 0918-7553 >
IS-RR-2015 >

Please use this identifier to cite or link to this item: http://hdl.handle.net/10119/12871

Title: Formal Semantics of Core SQL Language based on the K Framework
Authors: Sitthisak, Pakakorn
Issue Date: 2015-02-17
Publisher: 北陸先端科学技術大学院大学情報科学研究科
Magazine name: Research report (School of Information Science, Japan Advanced Institute of Science and Technology)
Volume: IS-RR-2015-001
Start page: 1
End page: 71
Abstract: There are lots of SQL dialects, e.g., MySQL, various versions of Oracle, and Microsoft SQL Server, ProgreSQL, and more. They share common semantics on standard table operations (with slight syntax differences), which appear in a textbook of relational database management systems. However, formal semantics of non-standard operations, e.g., type violation like SELECT 1 + "1a", varies in detail. Most of programmers in system development do not aware of such differences, which will be crucial when applying formal methods. They are typically coercion, NULL, the name space, and the error handling. Even a standard operation JOIN varies depending on detailed types (including the bit-width) of arguments. This thesis investigates detailed semantics of the core of SQL, specifically on MySQL and Oracle11. First, we observe their formal semantics by testing queries on boundary cases. Next, the semantics of the core of MySQL is implemented on the K framework. We call it KSQL, which covers basic table operations, like selection, creation, deletion, update, and insertion. They are defined with the features of coercion, NULL, and the name space convention. Lastly, we discuss on current limitations and difficulties in KSQL implementation.
URI: http://hdl.handle.net/10119/12871
Material Type: publisher
Appears in Collections:IS-RR-2015

Files in This Item:

File Description SizeFormat
IS-RR-2015-001.pdf484KbAdobe PDFView/Open

All items in DSpace are protected by copyright, with all rights reserved.

 


Contact : Library Information Section, JAIST (ir-sys[at]ml.jaist.ac.jp)