in internal/database/postgres/postgres.go [478:504]
func (h postgresHandler) GenerateDeleteTableCommentSQL(ctx context.Context, db *database.DB, tableName string) (string, error) {
if tableName == "" {
return "", fmt.Errorf("table name cannot be empty")
}
existingComment, err := h.GetTableComment(ctx, db, tableName)
if err != nil {
return "", err
}
startTag := "<gemini>"
endTag := "</gemini>"
startIndex := strings.Index(existingComment, startTag)
endIndex := strings.LastIndex(existingComment, endTag)
var finalComment string
if startIndex != -1 && endIndex != -1 && endIndex > startIndex {
prefix := existingComment[:startIndex]
suffix := existingComment[endIndex+len(endTag):]
finalComment = strings.TrimSpace(prefix + suffix)
} else {
finalComment = existingComment // No gemini tags, keep original.
}
quotedComment := pq.QuoteLiteral(finalComment)
return fmt.Sprintf("COMMENT ON TABLE %s IS %s;", h.QuoteIdentifier(tableName), quotedComment), nil
}