github.com/gocaveman/caveman@v0.0.0-20191211162744-0ddf99dbdf6e/ddl/create-index-stmt.go (about)

     1  package ddl
     2  
     3  type CreateIndexStmt struct {
     4  	*Builder
     5  
     6  	NameValue        string // index name
     7  	TableNameValue   string
     8  	UniqueValue      bool
     9  	IfNotExistsValue bool // TODO: consider removing this, not supported by MySQL and not really needed
    10  
    11  	ColumnNames []string
    12  }
    13  
    14  func (s *CreateIndexStmt) IsStmt() {}
    15  
    16  func (s *CreateIndexStmt) IfNotExists() *CreateIndexStmt {
    17  	s.IfNotExistsValue = true
    18  	return s
    19  }
    20  
    21  func (s *CreateIndexStmt) Unique() *CreateIndexStmt {
    22  	s.UniqueValue = true
    23  	return s
    24  }
    25  
    26  func (s *CreateIndexStmt) Columns(name ...string) *CreateIndexStmt {
    27  	s.ColumnNames = append(s.ColumnNames, name...)
    28  	return s
    29  }
    30  
    31  type DropIndexStmt struct {
    32  	*Builder
    33  
    34  	NameValue      string // index name
    35  	TableNameValue string
    36  }
    37  
    38  func (s *DropIndexStmt) IsStmt() {}