gorm:Migrate生成表,並創建聯合唯一索引


package ipo

import (
	"database/sql"
	"fmt"
	"ipoCompany/tool"
)

type IpoBalance struct {
	ID                               int             `gorm:"column:id;primary_key;auto_increment;not null"`
	S_INFO_WINDCODE                  string          `gorm:"column:S_INFO_WINDCODE;unique_index:S_R"`           //Wind代碼
	ANN_DT                           string          `gorm:"column:ANN_DT"`                                      //公告日期
	ACTUAL_ANN_DT                    string          `gorm:"column:ACTUAL_ANN_DT"`                               //實際公告日期
	REPORT_PERIOD                    string          `gorm:"column:REPORT_PERIOD;unique_index:S_R"`              //報告期
	STATEMENT_TYPE                   string          `gorm:"column:STATEMENT_TYPE"`                              //報表類型
	MONETARY_CAP                     sql.NullFloat64 `gorm:"column:MONETARY_CAP;type:decimal(20,4);"`            //	貨幣資金
	MONETARY_CAP_YOY                 sql.NullFloat64 `gorm:"column:MONETARY_CAP_YOY;type:decimal(20,4);"`        //	貨幣資金    
	OPDATE                           int             `gorm:"column:OPDATE;type:int(10);"`
}

// TableName 獲取表名
func (IpoBalance) TableName() string {
	return "balance"
}

// CreateNumberTable 創建表
func CreateBalanceTable() {
	if !tool.IPO.HasTable(&IpoBalance{}) {
		tool.IPO.AutoMigrate(&IpoBalance{})
		if tool.IPO.HasTable(&IpoBalance{}) {
			fmt.Println("balance表創建成功")
		} else {
			fmt.Println("balance表創建失敗")
		}
	} else {
		fmt.Println("表已存在")
	}
}

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM