Add BETWEEN to _has_operator()
diff --git a/system/database/DB_driver.php b/system/database/DB_driver.php
index d6f9f9c..48f9fb5 100644
--- a/system/database/DB_driver.php
+++ b/system/database/DB_driver.php
@@ -1062,7 +1062,7 @@
 	 */
 	protected function _has_operator($str)
 	{
-		return (bool) preg_match('/(\s|<|>|!|=|IS NULL|IS NOT NULL)/i', trim($str));
+		return (bool) preg_match('/(\s|<|>|!|=|IS NULL|IS NOT NULL|BETWEEN)/i', trim($str));
 	}
 
 	// --------------------------------------------------------------------
diff --git a/user_guide_src/source/changelog.rst b/user_guide_src/source/changelog.rst
index 5b2f59e..027163d 100644
--- a/user_guide_src/source/changelog.rst
+++ b/user_guide_src/source/changelog.rst
@@ -246,6 +246,7 @@
 -  Fixed a bug (#706) - SQLSRV/MSSSQL didn't escape field names.
 -  Fixed a bug (#1452) - protect_identifiers() didn't properly detect identifiers with spaces in their names.
 -  Fixed a bug where protect_identifiers() ignored it's extra arguments when the value passed to it is an array.
+-  Fixed a bug where _has_operator() didn't detect BETWEEN.
 
 Version 2.1.1
 =============