Accept schema qualified table names for upload
authorKarl O. Pinc <kop@karlpinc.com>
Tue, 2 Feb 2021 19:35:20 +0000 (13:35 -0600)
committerKarl O. Pinc <kop@karlpinc.com>
Tue, 2 Feb 2021 19:35:20 +0000 (13:35 -0600)
src/pgwui_upload_core/views/upload.py

index 7c90a332dec851b1f1367e069a11d734ac84c038..1eca47239bb1334a0663edaef4b5a2385b2f6490 100644 (file)
@@ -247,6 +247,11 @@ class BaseTableUploadHandler(TabularFileUploadHandler):
                 return x
             return column_quoter
 
+    def quotetable(self, schema, table):
+        if schema:
+            return f'{doublequote(schema)}.{doublequote(table)}'
+        return doublequote(table)
+
     def build_insert_stmt(
             self, data, qualified_table, quotecols, column_quoter):
         schema, table = self.validate_table(qualified_table)
@@ -259,7 +264,7 @@ class BaseTableUploadHandler(TabularFileUploadHandler):
         else:
             column_sql += '    AND columns.column_name = lower(%s::name)'
 
-        insert_stmt = 'INSERT INTO {0} ('.format(doublequote(qualified_table))
+        insert_stmt = f'INSERT INTO {self.quotetable(schema, table)} ('
         value_string = ''
         col_sep = ''
         bad_cols = []