MCPcopy Create free account
hub / github.com/bytebase/bytebase / writeSequenceSDL

Function writeSequenceSDL

backend/plugin/schema/pg/get_database_definition.go:3500–3560  ·  view source on GitHub ↗
(out io.Writer, schemaName string, sequence *storepb.SequenceMetadata)

Source from the content-addressed store, hash-verified

3498}
3499
3500func writeSequenceSDL(out io.Writer, schemaName string, sequence *storepb.SequenceMetadata) error {
3501 // Write CREATE SEQUENCE statement with schema and name
3502 if _, err := fmt.Fprintf(out, "CREATE SEQUENCE \"%s\".\"%s\"", schemaName, sequence.Name); err != nil {
3503 return err
3504 }
3505
3506 // Add data type (always output for consistency with non-SDL format)
3507 if sequence.DataType != "" {
3508 if _, err := fmt.Fprintf(out, " AS %s", sequence.DataType); err != nil {
3509 return err
3510 }
3511 }
3512
3513 // Add START WITH (always output for consistency with non-SDL format)
3514 if sequence.Start != "" {
3515 if _, err := fmt.Fprintf(out, " START WITH %s", sequence.Start); err != nil {
3516 return err
3517 }
3518 }
3519
3520 // Add INCREMENT BY (always output for consistency with non-SDL format)
3521 if sequence.Increment != "" {
3522 if _, err := fmt.Fprintf(out, " INCREMENT BY %s", sequence.Increment); err != nil {
3523 return err
3524 }
3525 }
3526
3527 // Add MINVALUE (always output for consistency with non-SDL format)
3528 if sequence.MinValue != "" {
3529 if _, err := fmt.Fprintf(out, " MINVALUE %s", sequence.MinValue); err != nil {
3530 return err
3531 }
3532 }
3533
3534 // Add MAXVALUE (always output for consistency with non-SDL format)
3535 if sequence.MaxValue != "" {
3536 if _, err := fmt.Fprintf(out, " MAXVALUE %s", sequence.MaxValue); err != nil {
3537 return err
3538 }
3539 }
3540
3541 // Add CYCLE/NO CYCLE (always output for consistency with non-SDL format)
3542 if sequence.Cycle {
3543 if _, err := io.WriteString(out, " CYCLE"); err != nil {
3544 return err
3545 }
3546 } else {
3547 if _, err := io.WriteString(out, " NO CYCLE"); err != nil {
3548 return err
3549 }
3550 }
3551
3552 // Add CACHE (new field to match non-SDL format)
3553 if sequence.CacheSize != "" {
3554 if _, err := fmt.Fprintf(out, " CACHE %s", sequence.CacheSize); err != nil {
3555 return err
3556 }
3557 }

Callers 2

getSDLFormatFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected