MCPcopy Create free account
hub / github.com/go-pg/pg / appendFKConstraint

Method appendFKConstraint

orm/table_create.go:195–221  ·  view source on GitHub ↗
(fmter QueryFormatter, b []byte, rel *Relation)

Source from the content-addressed store, hash-verified

193}
194
195func (q *CreateTableQuery) appendFKConstraint(fmter QueryFormatter, b []byte, rel *Relation) []byte {
196 if rel.Type != HasOneRelation {
197 return b
198 }
199
200 b = append(b, ", FOREIGN KEY ("...)
201 b = appendColumns(b, "", rel.BaseFKs)
202 b = append(b, ")"...)
203
204 b = append(b, " REFERENCES "...)
205 b = fmter.FormatQuery(b, string(rel.JoinTable.SQLName))
206 b = append(b, " ("...)
207 b = appendColumns(b, "", rel.JoinFKs)
208 b = append(b, ")"...)
209
210 if s := onDelete(rel.BaseFKs); s != "" {
211 b = append(b, " ON DELETE "...)
212 b = append(b, s...)
213 }
214
215 if s := onUpdate(rel.BaseFKs); s != "" {
216 b = append(b, " ON UPDATE "...)
217 b = append(b, s...)
218 }
219
220 return b
221}
222
223func (q *CreateTableQuery) appendTablespace(b []byte, tableSpace types.Safe) []byte {
224 b = append(b, " TABLESPACE "...)

Callers 1

AppendQueryMethod · 0.95

Calls 4

appendColumnsFunction · 0.85
onDeleteFunction · 0.85
onUpdateFunction · 0.85
FormatQueryMethod · 0.65

Tested by

no test coverage detected