Go Driver

ArangoDB 官方 Go 驱动程序
授权协议 Apache-2.0
开发语言 Google Go
所属分类 数据库相关、 数据库驱动程序
软件类型 开源软件
地区 不详
投 递 者 徐晔
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Go Driver 是 ArangoDB 数据库的官方 Go 驱动程序。

支持的版本

  • ArangoDB 3.1 及更高版本
    • 单服务器和集群设置
    • 有或没有认证都支持
  • Go 1.7 及更高版本

Go 依赖

配置

要使用驱动程序,首先将源提取到您的GOPATH.

go get github.com/arangodb/go-driver

使用驱动程序,需要始终创建一个Client. 以下示例显示如何在 localhost 上运行的单个服务器创建一个 Client

import (
	"fmt"
	driver "github.com/arangodb/go-driver"
	"github.com/arangodb/go-driver/http"
)


...

conn, err := http.NewConnection(http.ConnectionConfig{
    Endpoints: []string{"http://localhost:8529"},
})
if err != nil {
    // Handle error
}
client, err := driver.NewClient(driver.ClientConfig{
    Connection: conn,
})
if err != nil {
    // Handle error
}

创建Client后,可以在服务器上访问/创建的数据库,访问/创建集合、图形、文档等。

重要类型

使用 Go 驱动程序需要了解的关键类型是:

  • Database 
  • Collection 
  • Graph 
  • EdgeDefinition

连接到 ArangoDB

conn, err := http.NewConnection(http.ConnectionConfig{
    Endpoints: []string{"http://localhost:8529"},
    TLSConfig: &tls.Config{ /*...*/ },
})
if err != nil {
    // Handle error
}
c, err := driver.NewClient(driver.ClientConfig{
    Connection: conn,
    Authentication: driver.BasicAuthentication("user", "password"),
})
if err != nil {
    // Handle error
}

打开数据库

ctx := context.Background()
db, err := client.Database(ctx, "myDB")
if err != nil {
    // handle error 
}

检查集合是否存在

ctx := context.Background()
found, err := db.CollectionExists(ctx, "myCollection")
if err != nil {
    // handle error 
}

创建集合

ctx := context.Background()
options := &driver.CreateCollectionOptions{ /* ... */ }
col, err := db.CreateCollection(ctx, "myCollection", options)
if err != nil {
    // handle error 
}
 相关资料
  • 问题内容: 如何使用mongo-go-driver过滤字段。使用findopt.Projection进行了尝试,但没有成功。 最后,我要取消显示字段“ _id”。但是文件没有改变。 问题答案: 编辑: 随着mongo- go驱动程序的发展,可以使用以下简单方法指定投影: 原始(旧)答案如下。 它对您不起作用的原因是因为未导出该字段,因此,没有其他包可以访问它(仅声明包)。 您必须使用导出的字段名称

  • 问题内容: 我正在尝试使用go sql驱动程序从数据库表中读取数据,并将值转换为。列名称是映射的键,值是。我将所有列添加到数组中。我以https://github.com/go- sql-driver/mysql/wiki/Examples上的 “ RawBytes”代码示例作为示例开始。 但是,在示例中-所有列值都转换为如下所示, 有没有办法保留它,这样我就可以在使用 问题答案: 基于的答案。使

  • 谷歌SpreadsheetService似乎是一个“正在进行的工作”,有时/突然回答缓慢,随机错误消息等。有些人已经建议我在使用电子表格API时尽可能使用谷歌Drive API。但是我找不到关于Google Drive/Spreadsheet API组合的合适文档。 通过一些调试和试错,我在级别创建了一个“entrypoint”: 我能得到一些真实的代码示例吗(超过;“只是使用提要”等)?

  • Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。官方教程是官方文档的教程页面上的教程。

  • Go官方提供了一个RPC库: net/rpc。 包rpc提供了通过网络访问一个对象的输出方法的能力。 服务器需要注册对象, 通过对象的类型名暴露这个服务。注册后这个对象的输出方法就可以远程调用,这个库封装了底层传输的细节,包括序列化(默认GOB序列化器)。 服务器可以注册多个不同类型的对象,但是注册相同类型的多个对象的时候会出错。 同时,如果对象的方法要能远程访问,它们必须满足一定的条件,否则这个

  • 问题内容: 我正在尝试找到可以与Go一起使用的MySql驱动程序,该驱动程序支持在一个调用中发出多个SQL语句。例如,我可能希望使用以下SQL创建数据库: 在PHP之类的语言中,您可以将两个SQL语句放在一个字符串中,然后一次性执行,如下所示: 我需要这个的原因是因为我有SQL转储(来自),我想以编程方式应用于各种数据库。 我在Go中寻找相同的功能,但似乎所有不同的驱动程序都不支持它,坦率地说,这

  • 我试图通过网络驱动程序在“http://www.kayak.co.in/?ispredir=true”中选择入住和退房时间。无法选择任何日期。请帮帮我。

  • 对于ex,当我的chrome放在Compand提示符中时,会给出路径-/applications/google\chrome.app system.setproperty(“webdriver.chrome.driver”,“/applications/google/chrome.app”);WebDriver driver=new ChromeDriver(); driver.get(“http