From 947eaaeecbf60e10421e01a7aa99745303ce1873 Mon Sep 17 00:00:00 2001 From: Dana Fallon <8871189+danafallon@users.noreply.github.com> Date: Tue, 14 Jan 2025 16:18:40 -0800 Subject: [PATCH] Remove any double quotes from the string in SnowflakeDialect.QuoteIdentifier() --- clients/snowflake/dialect/dialect.go | 2 +- clients/snowflake/dialect/dialect_test.go | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/clients/snowflake/dialect/dialect.go b/clients/snowflake/dialect/dialect.go index ad8e17b6d..6b330fee6 100644 --- a/clients/snowflake/dialect/dialect.go +++ b/clients/snowflake/dialect/dialect.go @@ -14,7 +14,7 @@ import ( type SnowflakeDialect struct{} func (SnowflakeDialect) QuoteIdentifier(identifier string) string { - return fmt.Sprintf(`"%s"`, strings.ToUpper(identifier)) + return fmt.Sprintf(`"%s"`, strings.ToUpper(strings.ReplaceAll(identifier, `"`, ``))) } func (SnowflakeDialect) EscapeStruct(value string) string { diff --git a/clients/snowflake/dialect/dialect_test.go b/clients/snowflake/dialect/dialect_test.go index fa01cb711..c7dd17887 100644 --- a/clients/snowflake/dialect/dialect_test.go +++ b/clients/snowflake/dialect/dialect_test.go @@ -16,6 +16,7 @@ func TestSnowflakeDialect_QuoteIdentifier(t *testing.T) { dialect := SnowflakeDialect{} assert.Equal(t, `"FOO"`, dialect.QuoteIdentifier("foo")) assert.Equal(t, `"FOO"`, dialect.QuoteIdentifier("FOO")) + assert.Equal(t, `"FOO; BAD"`, dialect.QuoteIdentifier(`FOO"; BAD`)) } func TestSnowflakeDialect_IsTableDoesNotExistErr(t *testing.T) {