gpt4 book ai didi

sql-server - 尝试在 Go 中使用包时出错 - 需要帮助修复

转载 作者:IT王子 更新时间:2023-10-29 02:34:49 24 4
gpt4 key购买 nike

首先,我是 Go 语言的新手。

我决定为我们作为业余爱好项目开发的一些 .NET 服务创建一个 Go 版本。尝试这样做的原因是:

  • 我对 Go 语言有点感兴趣。
  • 我认为 .NET 网络服务可以改进很多,但我不是我们公司的 .NET 开发人员。

现在为了创建这些网络服务,我需要获得对我们数据库的访问权限。我将我们的测试服务器配置为允许使用 ODBC 访问数据库。

下一步:获取在 Go 应用程序中工作的 ODBC 连接。有几个可用的 Go ODBC 包,目前我正在尝试使用这个:https://github.com/BenoyRNair/godbc

项目中包含一个示例。当我尝试运行该示例时,我收到以下错误消息:

MacBook-Air:go wolf$ go run example.go 
# godbc
godbc.go:77:2: expected declaration, found '('
godbc.go:81:2: expected declaration, found 'IDENT' x
godbc.go:104:2: expected declaration, found 'IDENT' dsn
godbc.go:109:2: expected declaration, found 'IDENT' returnInt
godbc.go:132:2: expected declaration, found 'IDENT' driver
godbc.go:137:2: expected declaration, found 'IDENT' returnInt
godbc.go:161:2: expected declaration, found 'IDENT' outConnectionString
godbc.go:185:2: expected declaration, found 'IDENT' messageText
godbc.go:188:2: expected declaration, found 'IDENT' returnInt
godbc.go:212:2: expected declaration, found 'IDENT' returnInt
godbc.go:230:2: expected declaration, found 'IDENT' returnInt
godbc.go:242:2: expected declaration, found 'IDENT' returnInt
godbc.go:275:2: expected declaration, found 'IDENT' returnInt
godbc.go:291:2: expected declaration, found 'IDENT' buffer
godbc.go:336:2: expected declaration, found 'for'

现在我不确定如何处理这个错误。我认为该错误可能与文件的格式有关,但也许还有其他原因。当我查看 github 页面时,在问题选项卡上,我注意到其他人提到了同样的问题,但注意到该代码无法使用最新版本的 Go 进行编译,所以我假设它在过去已经编译过。

有谁知道这个问题是否有一些简单的解决方法,或者我应该试试其他 ODBC 包的运气?如果是这样:会推荐什么套餐?

最佳答案

https://github.com/BenoyRNair/godbc是很旧的包。正如您所发现的,它甚至不再编译。

Go 现在有 database/sql 标准包来访问任何 sql 数据库。它提供接口(interface),但您还需要一个“驱动程序包”来实现对您选择的数据库的访问。这种设计的想法是你可以替换“驱动程序包”来访问不同的数据库。大多数(如果不是全部)用户代码不应更改。

除非您需要一些特定于 ODBC 的功能,否则您应该尝试使用 database/sql 包。这将允许您尝试不同的驱动程序,直到找到适合您的驱动程序。

自己写过ODBC驱动http://code.google.com/p/odbc/ .我用它来访问 MS SQL Server。也许,它对您有用。

亚历克斯

关于sql-server - 尝试在 Go 中使用包时出错 - 需要帮助修复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13995550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com