@@ -66,7 +66,7 @@ def _create_table(
6666 varchar_lengths = varchar_lengths ,
6767 converter_func = _data_types .pyarrow2postgresql ,
6868 )
69- cols_str : str = "" .join ([f"{ k } { v } ,\n " for k , v in postgresql_types .items ()])[:- 2 ]
69+ cols_str : str = "" .join ([f' "{ k } " { v } ,\n ' for k , v in postgresql_types .items ()])[:- 2 ]
7070 sql = f'CREATE TABLE IF NOT EXISTS "{ schema } "."{ table } " (\n { cols_str } )'
7171 _logger .debug ("Create table query:\n %s" , sql )
7272 cursor .execute (sql )
@@ -397,12 +397,13 @@ def to_sql(
397397 if index :
398398 df .reset_index (level = df .index .names , inplace = True )
399399 column_placeholders : str = ", " .join (["%s" ] * len (df .columns ))
400+ column_names = [f'"{ column } "' for column in df .columns ]
400401 insertion_columns = ""
401402 upsert_str = ""
402403 if use_column_names :
403- insertion_columns = f"({ ', ' .join (df . columns )} )"
404+ insertion_columns = f"({ ', ' .join (column_names )} )"
404405 if mode == "upsert" :
405- upsert_columns = ", " .join (df . columns . map ( lambda column : f"{ column } =EXCLUDED.{ column } " ) )
406+ upsert_columns = ", " .join (f"{ column } =EXCLUDED.{ column } " for column in column_names )
406407 conflict_columns = ", " .join (upsert_conflict_columns ) # type: ignore
407408 upsert_str = f" ON CONFLICT ({ conflict_columns } ) DO UPDATE SET { upsert_columns } "
408409 if mode == "append" and insert_conflict_columns :
0 commit comments