Skip to content

Commit d09c0f0

Browse files
committed
Escape table name in the loader query
1 parent fcb0bf3 commit d09c0f0

File tree

6 files changed

+16
-5
lines changed

6 files changed

+16
-5
lines changed

internal/__snapshots__/TestGenerate_Default_loader_1.snap/author.go.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ func (l *AuthorLoader) getInnerLoader() *dataloader.Loader[pgtype.UUID, model.Au
5757
func (l *AuthorLoader) findItemsMap(ctx context.Context, keys []pgtype.UUID) (map[pgtype.UUID]model.Author, error) {
5858
res := make(map[pgtype.UUID]model.Author, len(keys))
5959

60-
query := `SELECT id, name, status FROM public.authors WHERE id = ANY($1)`
60+
query := `SELECT id, name, status FROM "public"."authors" WHERE id = ANY($1)`
6161
rows, err := l.db.Query(ctx, query, keys)
6262
if err != nil {
6363
return nil, err

internal/__snapshots__/TestGenerate_Loader_With_LRU_Cache_1.snap/author.go.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ func (l *AuthorLoader) getInnerLoader() *dataloader.Loader[pgtype.UUID, model.Au
6060
func (l *AuthorLoader) findItemsMap(ctx context.Context, keys []pgtype.UUID) (map[pgtype.UUID]model.Author, error) {
6161
res := make(map[pgtype.UUID]model.Author, len(keys))
6262

63-
query := `SELECT id, name, status FROM public.authors WHERE id = ANY($1)`
63+
query := `SELECT id, name, status FROM "public"."authors" WHERE id = ANY($1)`
6464
rows, err := l.db.Query(ctx, query, keys)
6565
if err != nil {
6666
return nil, err

internal/__snapshots__/TestGenerate_Loader_with_changed_id_1.snap/author.go.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ func (l *AuthorLoader) getInnerLoader() *dataloader.Loader[pgtype.Text, model.Au
5757
func (l *AuthorLoader) findItemsMap(ctx context.Context, keys []pgtype.Text) (map[pgtype.Text]model.Author, error) {
5858
res := make(map[pgtype.Text]model.Author, len(keys))
5959

60-
query := `SELECT id, name, status FROM public.authors WHERE name = ANY($1)`
60+
query := `SELECT id, name, status FROM "public"."authors" WHERE name = ANY($1)`
6161
rows, err := l.db.Query(ctx, query, keys)
6262
if err != nil {
6363
return nil, err

internal/__snapshots__/TestGenerate_Loader_with_id_of_enum_type_1.snap/author.go.snap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func (l *AuthorLoader) getInnerLoader() *dataloader.Loader[model.Status, model.A
5656
func (l *AuthorLoader) findItemsMap(ctx context.Context, keys []model.Status) (map[model.Status]model.Author, error) {
5757
res := make(map[model.Status]model.Author, len(keys))
5858

59-
query := `SELECT id, name, status FROM public.authors WHERE status = ANY($1)`
59+
query := `SELECT id, name, status FROM "public"."authors" WHERE status = ANY($1)`
6060
rows, err := l.db.Query(ctx, query, keys)
6161
if err != nil {
6262
return nil, err

internal/model/struct.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,17 @@ func (s *Struct) FullTableName() string {
7777
return fmt.Sprintf("%s.%s", schema, tableName)
7878
}
7979

80+
func (s *Struct) EscapedFullTableName() string {
81+
schema := s.table.Rel.GetSchema()
82+
tableName := s.table.Rel.GetName()
83+
84+
if schema == "" {
85+
return tableName
86+
}
87+
88+
return fmt.Sprintf("\"%s\".\"%s\"", schema, tableName)
89+
}
90+
8091
func (s *Struct) Type() *gotype.GoType {
8192
return s.goType
8293
}

internal/renderer/templates/dataloader.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@
6767
func (l *{{ .Struct.LoaderName }}) findItemsMap(ctx context.Context, keys []{{ .PrimaryKeyFieldType}}) (map[{{ .PrimaryKeyFieldType}}]{{ .Struct.Type.TypeWithPackage }}, error) {
6868
res := make(map[{{ .PrimaryKeyFieldType}}]{{ .Struct.Type.TypeWithPackage }}, len(keys))
6969

70-
query := `SELECT {{ .Struct.SqlFieldNamesString }} FROM {{ .Struct.FullTableName }} WHERE {{ .PrimaryKeyColumnName}} = ANY($1)`
70+
query := `SELECT {{ .Struct.SqlFieldNamesString }} FROM {{ .Struct.EscapedFullTableName }} WHERE {{ .PrimaryKeyColumnName}} = ANY($1)`
7171
rows, err := l.db.Query(ctx, query, keys)
7272
if err != nil {
7373
return nil, err

0 commit comments

Comments
 (0)