@@ -2587,7 +2587,7 @@ public String getSetString(RequestMethod method, Map<String, Object> content, bo
2587
2587
if (setString .isEmpty ()) {
2588
2588
throw new IllegalArgumentException ("PUT 请求必须在Table内设置要修改的 key:value !" );
2589
2589
}
2590
- return " SET " + setString ;
2590
+ return ( isClickHouse ()? " " : " SET ") + setString ;
2591
2591
}
2592
2592
2593
2593
/**SET key = concat(key, 'value')
@@ -2665,9 +2665,15 @@ public static String getSQL(AbstractSQLConfig config) throws Exception {
2665
2665
case POST :
2666
2666
return "INSERT INTO " + tablePath + config .getColumnString () + " VALUES" + config .getValuesString ();
2667
2667
case PUT :
2668
- return "UPDATE " + tablePath + config .getSetString () + config .getWhereString (true ) + (config .isMySQL ()||config .isClickHouse () ? config .getLimitString () : "" );
2668
+ if (config .isClickHouse ()){
2669
+ return "ALTER TABLE " + tablePath + " UPDATE" + config .getSetString ()+ config .getWhereString (true );
2670
+ }
2671
+ return "UPDATE " + tablePath + config .getSetString () + config .getWhereString (true ) + (config .isMySQL () ? config .getLimitString () : "" );
2669
2672
case DELETE :
2670
- return "DELETE FROM " + tablePath + config .getWhereString (true ) + (config .isMySQL ()||config .isClickHouse () ? config .getLimitString () : "" ); // PostgreSQL 不允许 LIMIT
2673
+ if (config .isClickHouse ()){
2674
+ return "ALTER TABLE " + tablePath + " DELETE" + config .getWhereString (true );
2675
+ }
2676
+ return "DELETE FROM " + tablePath + config .getWhereString (true ) + (config .isMySQL () ? config .getLimitString () : "" ); // PostgreSQL 不允许 LIMIT
2671
2677
default :
2672
2678
String explain = (config .isExplain () ? (config .isSQLServer () || config .isOracle () ? "SET STATISTICS PROFILE ON " : "EXPLAIN " ) : "" );
2673
2679
if (config .isTest () && RequestMethod .isGetMethod (config .getMethod (), true )) {
@@ -2679,7 +2685,7 @@ public static String getSQL(AbstractSQLConfig config) throws Exception {
2679
2685
String column = config .getColumnString ();
2680
2686
if (config .isOracle ()) {
2681
2687
//When config's database is oracle,Using subquery since Oracle12 below does not support OFFSET FETCH paging syntax.
2682
- return explain + "SELECT * FROM (SELECT" + (config .getCache () == JSONRequest .CACHE_RAM ? "SQL_NO_CACHE " : "" ) + column + " FROM " + getConditionString (column , tablePath , config ) + ") " + config .getLimitString ();
2688
+ return explain + "SELECT * FROM (SELECT " + (config .getCache () == JSONRequest .CACHE_RAM ? "SQL_NO_CACHE " : "" ) + column + " FROM " + getConditionString (column , tablePath , config ) + ") " + config .getLimitString ();
2683
2689
}
2684
2690
2685
2691
return explain + "SELECT " + (config .getCache () == JSONRequest .CACHE_RAM ? "SQL_NO_CACHE " : "" ) + column + " FROM " + getConditionString (column , tablePath , config ) + config .getLimitString ();
0 commit comments