tables

package
v3.2.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2024 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const AFTER_DDL_FILE_SUFFIX = "11"
View Source
const AUDIT_IDENTIFY_LENGTH = 58
View Source
const DDL_FILE_SUFFIX = "10"
View Source
const SHT_INDEX = "一覧"
View Source
const SHT_TEMPLATE = "テンプレート"

Variables

This section is empty.

Functions

This section is empty.

Types

type Constraint

type Constraint struct {
	PraimaryKey []string     `yaml:"primary_key"`
	Uniques     []Fields     `yaml:"uniques"`
	ForeignKeys []ForeignKey `yaml:"foreign_keys"`
}

type Element

type Element struct {
	NameJp       string
	NameEn       string
	DbModel      string
	Constraint   string
	MustNotNull  bool
	IsDefaultStr bool
	IsEnum       bool
	Description  string
	IsOrigin     bool
	OriginName   string
}

type Elements

type Elements struct {
	EArray []Element
	// contains filtered or unexported fields
}

func NewElements

func NewElements(path string) (*Elements, error)

func (*Elements) DDLField

func (elements *Elements) DDLField(field Field, schema string) string

nameJp → ddlField

func (*Elements) MdField

func (elements *Elements) MdField(field Field) string

nameJp → mdField

func (*Elements) NameEn

func (elements *Elements) NameEn(nameJp string) string

nameJp → nameEn

func (*Elements) ToExcel

func (elements *Elements) ToExcel() []string

toTableElements

type Field

type Field struct {
	Name     string  `yaml:"name"`
	Nullable bool    `yaml:"nullable"`
	Default  *string `yaml:"default"`
}

type Fields

type Fields struct {
	Name   string   `yaml:"name"`
	Fields []string `yaml:"fields"`
}

type ForeignField

type ForeignField struct {
	ThisField string `yaml:"this"`
	RefField  string `yaml:"ref"`
}

type ForeignKey

type ForeignKey struct {
	Name         string         `yaml:"name"`
	RefTable     string         `yaml:"reference_table"`
	DeleteOption *string        `yaml:"delete_option"`
	UpdateOption *string        `yaml:"update_option"`
	Fields       []ForeignField `yaml:"fields"`
}

type Index added in v3.2.0

type Index struct {
	Name   string       `yaml:"name"`
	Unique bool         `yaml:"unique"`
	Fields []IndexField `yaml:"fields"`
}

type IndexField added in v3.2.0

type IndexField struct {
	Field string `yaml:"name"`
	Asc   bool   `yaml:"asc"`
}

type SaveData

type SaveData struct {
	DataType string    `yaml:"data_type"`
	Version  string    `yaml:"version"`
	CreateAt time.Time `yaml:"create_at"`
	Schema   Schema    `yaml:"schema"`
	Tables   []Table   `yaml:"tables"`
	// contains filtered or unexported fields
}

func FromExcel

func FromExcel(fileName string) (*SaveData, error)

func New

func New(path string) (*SaveData, error)

func (*SaveData) CreateDdl

func (savedata *SaveData) CreateDdl(ddlDir string, elements Elements, saveHistry bool) (int, error)

ddl生成

func (*SaveData) CreateMd

func (savedata *SaveData) CreateMd(viewDir string, elements Elements) error

ddl生成

func (*SaveData) ToExcel

func (savedata *SaveData) ToExcel() []string

toExcel

func (*SaveData) Write

func (savedata *SaveData) Write(path string) error

yamlファイルの書き込み

type Schema

type Schema struct {
	NameJp string `yaml:"name_jp"`
	NameEn string `yaml:"name_en"`
}

type Table

type Table struct {
	NameJp     string     `yaml:"name_jp"`
	NameEn     string     `yaml:"name_en"`
	IsMaster   bool       `yaml:"is_master"`
	Fields     []Field    `yaml:"fields"`
	Constraint Constraint `yaml:"constraint"`
	Indexes    []Index    `yaml:"indexes"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL