main.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package main
  2. import (
  3. "database/sql"
  4. "fmt"
  5. "log"
  6. "net"
  7. "os"
  8. _ "xg_driver/xugu"
  9. )
  10. func main() {
  11. // ctx := context.Background()
  12. // conn := xugu.NewConnector("127.0.0.1:5138")
  13. // conn.Connect(ctx)
  14. db, err := sql.Open("xugusql", "IP=10.28.20.101;DB=SYSTEM;User=SYSDBA;PWD=SYSDBA;Port=5190;AUTO_COMMIT=on;CHAR_SET=UTF8")
  15. _, err = db.Exec("create table go_test(c1 int, c2 varchar);")
  16. if err != nil {
  17. log.Fatal(err)
  18. }
  19. db.Close()
  20. }
  21. func testSend() {
  22. db, err := sql.Open("mysql", "root:1234567@tcp(127.0.0.1:3306)/hello")
  23. if err != nil {
  24. log.Fatal(err)
  25. }
  26. defer db.Close()
  27. conn, err := net.Dial("tcp", "10.28.20.101:5190")
  28. if err != nil {
  29. fmt.Println("Error connecting:", err)
  30. os.Exit(1)
  31. }
  32. defer conn.Close()
  33. // 发送消息到服务器
  34. message := "login database = 'SYSTEM' user = 'SYSDBA' password = 'SYSDBA' version='201' "
  35. _, err = conn.Write([]byte(message))
  36. if err != nil {
  37. fmt.Println("Error writing to server:", err)
  38. return
  39. }
  40. fmt.Println("Message sent:", message)
  41. // 接收服务器的返回消息
  42. buffer := make([]byte, 1024)
  43. n, err := conn.Read(buffer)
  44. if err != nil {
  45. fmt.Println("Error reading from server:", err)
  46. return
  47. }
  48. fmt.Println("Message from server:", string(buffer[:n]))
  49. }