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

    Примечание

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

    Для подключения к 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, "grpcs://localhost:2135/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", "grpcs://localhost:2135/local")
      if err != nil {
          log.Fatal(err)
      }
      ...
    }
    

    Примечание

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