Инициализация драйвера

Примечание

Материал статьи дополняется.

Для подключения к YDB требуется указать обязательные параметры (подробнее читайте в разделе Подключение к серверу YDB) и дополнительные, которые определяют поведение драйвера при работе.

Ниже приведены примеры кода подлкючения к YDB (создания драйвера) в разных YDB SDK.

package main

import (
  "context"
  "os"

  "github.com/ydb-platform/ydb-go-sdk/v3"
)

func main() {
  db, err := ydb.Open(ctx, "grpc://localhost:2136/local")
  if err != nil {
      log.Fatal(err)
  }
  ...
}
С помощью коннектора (рекомендуемый способ)
package main

import (
  "context"
  "database/sql"
  "os"

  "github.com/ydb-platform/ydb-go-sdk/v3"
)

func main() {
  ctx, cancel := context.WithCancel(context.Background())
  defer cancel()
  nativeDriver, err := ydb.Open(ctx,
    os.Getenv("YDB_CONNECTION_STRING"),
  )
  if err != nil {
    panic(err)
  }
  defer nativeDriver.Close(ctx)
  connector, err := ydb.Connector(nativeDriver)
  if err != nil {
    panic(err)
  }
  db := sql.OpenDB(connector)
  defer db.Close()
  ...
}
С помощью строки подключения

Регистрация драйвера database/sql реализуется в момент импорта пакета конкретного драйвера через символ подчеркивавния:

package main

import (
  "context"
  "database/sql"
  "os"

  _ "github.com/ydb-platform/ydb-go-sdk/v3"
)

func main() {
  db, err := sql.Open("ydb", "grpc://localhost:2136/local")
  if err != nil {
      log.Fatal(err)
  }
  ...
}

Примечание

Материал статьи дополняется.