main.go 1016 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package main
  2. import (
  3. "fmt"
  4. "pg2csv/utils"
  5. )
  6. func main() {
  7. // 测试加载表列表
  8. tables, err := utils.LoadTableList()
  9. if err != nil {
  10. fmt.Printf("加载表列表错误: %v\n", err)
  11. } else {
  12. fmt.Printf("加载的数据表列表: %v\n", tables)
  13. }
  14. // 测试加载数据库配置
  15. config, err := utils.LoadDBConfig()
  16. if err != nil {
  17. fmt.Printf("加载数据库配置错误: %v\n", err)
  18. } else {
  19. fmt.Printf("加载的数据库配置: %v\n", config)
  20. }
  21. if tables == nil || config == nil {
  22. fmt.Println("程序退出!")
  23. return
  24. }
  25. // 连接数据库
  26. db, err := utils.ConnectDB(config)
  27. if err != nil {
  28. fmt.Printf("数据库连接失败: %v\n", err)
  29. return
  30. }
  31. defer db.Close()
  32. fmt.Println("数据库连接成功!")
  33. // 导出所有表到CSV
  34. fmt.Println("开始导出数据表到CSV...")
  35. dbName := config["database"]
  36. if err := utils.ExportAllTables(db, dbName, tables); err != nil {
  37. fmt.Printf("导出数据失败: %v\n", err)
  38. return
  39. }
  40. fmt.Println("所有表导出完成!")
  41. }