php エディタ Xiaoxin は、Golang を使用して新しいユーザーを作成するときに SQL エラーが発生しました。このエラーにより、ユーザーは正常に登録できず、Web サイトの通常の動作に問題が発生する可能性があります。この問題については、エラーの原因を分析し、解決策を見つける必要があります。この記事では、Golang SQL エラーを引き起こす可能性のあるいくつかの一般的な原因を紹介し、開発者がこの問題を迅速に解決して Web サイトが正常に動作するように支援する対応する解決策を提供します。
golangパッケージ viper
と cobra
を使用してユーザーを作成する際、 new_user.go
で受け取りました。このエラー。エラーは次のとおりです:
私のコードは相互に通信する 2 つのファイルに分割されています。これはツリー階層です:
リーリーデータベースに接続するために、config.go
の資格情報を抽出するための yaml ファイル db-creds.yaml
を作成しました。ここではエラーは表示されません:
config.go
ファイル
一番上に記載したエラーは、結果
を返すときに発生するエラーです。 cobra
の flag
オプションを実装して、-n
の後に name
を使用して、新しいユーザーが追加されていることを示します。
new_user.go
ファイル
このプロジェクトの主な目的は 3 つあります。 1.) 新しいユーザーを作成します。 2.) 任意のユーザーに特定の権限を付与します。 3.) それらを削除します。 それが私の最終目標です。一度に 1 ステップずつ進むと、このエラーが発生しました。誰かが私を助けてくれることを願っています。私は golang を初めて使用し、約 2 週間前に使い始めました。
go は、何が起こっているかを非常に明確に示します。 cobra の rune
メンバーは、コールバックがエラー (成功した場合は nil) を返すことを期待しています。
ここでは、エラーではなく、SQL クエリによって返される特定の型の結果を返しています。これは関数がどのように見えるかです。
リーリー db.exec
コマンドの結果が必要な場合 (実際にはそうではないようです)、cobra コールバックはそのように設計されていないため、必要なすべての処理を cobra コールバックで実行する必要があります。メインスレッドに値を返します。
の場合のように) 予期せぬことが起こってもパニックになったり、プログラムを終了したりしないでください。代わりに、そのエラーリターンを使用してエラーをメインスレッドに伝播し、何をすべきかを決定させます。
関数はエラーを返すことができるはずです: func getconnection() (*sql.db, error)
。このエラーは、単にログに記録して通常どおり処理するのではなく、rune
関数で処理する必要があります。
以上が新しいユーザーを作成しようとすると Golang SQL エラーが発生するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。