Skip to content

Commit 8bcb246

Browse files
William Smithcnfait
authored andcommitted
Make column names quoted identifiers
adding double quotes around the column names to make them quoted identifiers allows using SQL Server keywords such as "close" or "open" as column names.
1 parent 1585906 commit 8bcb246

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

awswrangler/sqlserver.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ def _create_table(
9090
varchar_lengths=varchar_lengths,
9191
converter_func=_data_types.pyarrow2sqlserver,
9292
)
93-
cols_str: str = "".join([f"{k} {v},\n" for k, v in sqlserver_types.items()])[:-2]
93+
cols_str: str = "".join([f'"{k}" {v},\n' for k, v in sqlserver_types.items()])[:-2]
9494
table_identifier = _get_table_identifier(schema, table)
9595
sql = (
9696
f"IF OBJECT_ID(N'{table_identifier}', N'U') IS NULL BEGIN CREATE TABLE {table_identifier} (\n{cols_str}); END;"
@@ -416,7 +416,7 @@ def to_sql(
416416
table_identifier = _get_table_identifier(schema, table)
417417
insertion_columns = ""
418418
if use_column_names:
419-
insertion_columns = f"({', '.join(df.columns)})"
419+
insertion_columns = "({})".format(", ".join(f'"{col}"' for col in df.columns))
420420
placeholder_parameter_pair_generator = _db_utils.generate_placeholder_parameter_pairs(
421421
df=df, column_placeholders=column_placeholders, chunksize=chunksize
422422
)

0 commit comments

Comments
 (0)