package main import ( "fmt" "log" "gorm.io/driver/mysql" "gorm.io/gorm" "gorm.io/gorm/logger" ) func main() { // 连接数据库 dsn := "root:bindbox2025kdy@tcp(150.158.78.154:3306)/dev_game?charset=utf8mb4&parseTime=True&loc=Local" db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{ Logger: logger.Default.LogMode(logger.Info), }) if err != nil { log.Fatalf("连接数据库失败: %v", err) } txID := "4200002973202602178066391745" var orderNo string // 查询支付交易表 type PaymentTransaction struct { OrderNo string } var pt PaymentTransaction if err := db.Table("payment_transactions").Select("order_no").Where("transaction_id = ?", txID).First(&pt).Error; err != nil { fmt.Printf("查询支付交易失败: %v\n", err) return } orderNo = pt.OrderNo fmt.Printf("OrderNo: %s\n", orderNo) // 查询订单表 type Order struct { ID int64 Status int IsConsumed int } var o Order if err := db.Table("orders").Where("order_no = ?", orderNo).First(&o).Error; err != nil { fmt.Printf("查询订单失败: %v\n", err) return } fmt.Printf("Order Details: ID=%d, Status=%d, IsConsumed=%d\n", o.ID, o.Status, o.IsConsumed) }