You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@metamodel.apache.org by ka...@apache.org on 2016/07/26 14:45:20 UTC

metamodel git commit: METAMODEL-1106: Added 'INDEX' (and other) keyword(s) to SqlKeywords

Repository: metamodel
Updated Branches:
  refs/heads/feature/METAMODEL-1106-sql-keywords [created] e695a3758


METAMODEL-1106: Added 'INDEX' (and other) keyword(s) to SqlKeywords

Project: http://git-wip-us.apache.org/repos/asf/metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/metamodel/commit/e695a375
Tree: http://git-wip-us.apache.org/repos/asf/metamodel/tree/e695a375
Diff: http://git-wip-us.apache.org/repos/asf/metamodel/diff/e695a375

Branch: refs/heads/feature/METAMODEL-1106-sql-keywords
Commit: e695a3758ddba8d21e054e300fff2b3898303fc2
Parents: a5235c1
Author: kaspersorensen <i....@gmail.com>
Authored: Tue Jul 26 07:43:50 2016 -0700
Committer: kaspersorensen <i....@gmail.com>
Committed: Tue Jul 26 07:44:56 2016 -0700

----------------------------------------------------------------------
 CHANGES.md                                      |  1 +
 .../org/apache/metamodel/jdbc/SqlKeywords.java  | 62 ++++++++++++--------
 2 files changed, 40 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/metamodel/blob/e695a375/CHANGES.md
----------------------------------------------------------------------
diff --git a/CHANGES.md b/CHANGES.md
index 4f61177..93a28d8 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -6,6 +6,7 @@
  * [METAMODEL-1086] - Fixed encoding issue when CsvDataContext is instantiated with InputStream.
  * [METAMODEL-1094]�- Added support for Apache Cassandra version 3.x.
  * [METAMODEL-1093] - Close compiled ResultSets.
+ * [METAMODEL-1106] - Fixed bug in JDBC adaptor caused by not quoting columns named as a keyword, e.g. 'index'. 
  * [METAMODEL-1102] - Separated FixedWidthLineParser.
  * [METAMODEL-1107] - Added support for PostgreSQL's "json" and "jsonb" data types.
  

http://git-wip-us.apache.org/repos/asf/metamodel/blob/e695a375/jdbc/src/main/java/org/apache/metamodel/jdbc/SqlKeywords.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/metamodel/jdbc/SqlKeywords.java b/jdbc/src/main/java/org/apache/metamodel/jdbc/SqlKeywords.java
index b2207df..7ffb6c9 100644
--- a/jdbc/src/main/java/org/apache/metamodel/jdbc/SqlKeywords.java
+++ b/jdbc/src/main/java/org/apache/metamodel/jdbc/SqlKeywords.java
@@ -23,29 +23,45 @@ import java.util.Set;
 
 class SqlKeywords {
 
-	private static final Set<String> KEYWORDS;
+    private static final Set<String> KEYWORDS;
 
-	static {
-		KEYWORDS = new HashSet<String>();
-		KEYWORDS.add("SELECT");
-		KEYWORDS.add("DISTINCT");
-		KEYWORDS.add("AS");
-		KEYWORDS.add("COUNT");
-		KEYWORDS.add("SUM");
-		KEYWORDS.add("MIN");
-		KEYWORDS.add("MAX");
-		KEYWORDS.add("FROM");
-		KEYWORDS.add("WHERE");
-		KEYWORDS.add("LIKE");
-		KEYWORDS.add("IN");
-		KEYWORDS.add("GROUP");
-		KEYWORDS.add("BY");
-		KEYWORDS.add("HAVING");
-		KEYWORDS.add("ORDER");
-	}
+    static {
+        KEYWORDS = new HashSet<String>();
+        KEYWORDS.add("SELECT");
+        KEYWORDS.add("DISTINCT");
+        KEYWORDS.add("AS");
+        KEYWORDS.add("COUNT");
+        KEYWORDS.add("SUM");
+        KEYWORDS.add("MIN");
+        KEYWORDS.add("MAX");
+        KEYWORDS.add("FROM");
+        KEYWORDS.add("WHERE");
+        KEYWORDS.add("LIKE");
+        KEYWORDS.add("IN");
+        KEYWORDS.add("GROUP");
+        KEYWORDS.add("BY");
+        KEYWORDS.add("HAVING");
+        KEYWORDS.add("ORDER");
+        KEYWORDS.add("INDEX");
+        KEYWORDS.add("PRIMARY");
+        KEYWORDS.add("KEY");
+        KEYWORDS.add("CONSTRAINT");
+        KEYWORDS.add("UNIQUE");
+        KEYWORDS.add("IS");
+        KEYWORDS.add("NOT");
+        KEYWORDS.add("NULL");
+        KEYWORDS.add("CREATE");
+        KEYWORDS.add("INSERT");
+        KEYWORDS.add("INTO");
+        KEYWORDS.add("UPDATE");
+        KEYWORDS.add("VALUES");
+        KEYWORDS.add("DELETE");
+        KEYWORDS.add("AND");
+        KEYWORDS.add("OR");
+    }
 
-	public static boolean isKeyword(String str) {
-		str = str.toUpperCase();
-		return KEYWORDS.contains(str);
-	}
+    public static boolean isKeyword(String str) {
+        str = str.toUpperCase();
+        return KEYWORDS.contains(str);
+    }
 }