接続し、基本的なデータ操作を行う方法をご紹介します。コンテンツの転載は固くお断りいたします。("context""net/http""time""google.golang.org/appengine""google.golang.org/appengine/datastore""google.golang.org/appengine/log")上のコードでは今回のプログラムで必要なパッケージをインポートしています。操作するのに必須です。スタンダード環境以外の環境から操作する場合には、また違ったパッケージが必要なようですのでご注意下さい。記事を公開するかどうか}今回扱うデータはブログサービスで使えそうなものを用意してみました。活用して運用している当ブログでも使用しています。公開日時はいつか、公開中であるか非公開であるか、そういったデータを保管できます。存在するか検索し、ヒットすればこのデータを元に処理を行う形になります。テーブルような存在となります。先程の構造体データを追加するためのものです。『handler』関数が何か分からない場合は『GAEで初めてのGo言語製ウェブサーバーの作り方』の記事を、そしてログの出力方法については『GAEのスタンダード環境でGo言語を使ってログを出力する方法』で書きましたので確認してみて下さい。データとそれに対応するキーが1対1で管理されています。新規にデータを追加する場合は、新しいキーを用意する必要があり、『datastore』パッケージの『NewIncompleteKey』関数を使えば自動的に最適なキーが生成されます。通常はこの関数を使うと良いでしょう。引数は1番目にコンテキスト、2番目にデータの種類、3番目は追加するデータに親を指定する場合に、そのキーをセットします。テーブル名に相当します。関数はデータの追加と更新する際に使用する関数で、引数の1番目にコンテキスト、2番目に対応するキー、3番目に追加するデータのポインタを渡します。戻り値は1番目にキー、2番目にエラー値です。err)}}上のコードでは、ドメイン名とスラグに一致するデータを取得しています。今回の例では、返ってくるデータはゼロか1つというのを前提に実行しています。ドメイン名に一致する全ての記事のメタデータを取得する例は後ほどご紹介します。データを検索して取得する際にはクエリーを作成する必要があり、それは『NewQuery』関数を使うことで実現できます。引数は1つで、種類を文字列で渡します。作成したクエリーに、Filter関数を使ってフィルターを追加していきます。今回はドメイン名とスラグ両方が一致するデータを取得しています。Filter関数の引数は2つで、1番目にプロパティ名と比較演算子、2番目に比較するデータを渡します。比較演算子は『=』以外、例えば『>』『<』『>=』『<=』を使用する場合はインデックスを作成する必要があります。AND検索のみがサポートされており、OR検索は出来ません。今回の例はドメイン名、スラグの2つのプロパティで検索しており、その2つのデータを満たす結果のみが返却されます。OR検索は出来ません。q.Run(ctx)クエリーを実行するには、作成したクエリーに『Run』関数を使用します。引数にはコンテキストを渡します。戻り値はイテレータです。it.Next(p)イテレータに『Next』関数を使用すると結果を取得できます。引数にデータを格納するためのポインタを渡します。戻り値は、データに対応するキーとエラー値です。使ってデータを取得し続けます。関数を実行してエラーが無ければデータを取得出来たということですので、スライスに追加していくと良いでしょう。あるデータを更新しています。ように条件と一致したデータを指定したデータで直接更新することは出来ません。データを削除するためには、クエリーなどを実行して対象のキーを取得し、Delete関数を呼ぶことで削除が可能です。newP)プロパティ構成の更新もシンプルです。さいごに今回は最低限必要となるであろう機能のみをご紹介しましたが、キー情報を元にデータを取得したり、複数のデータを同時に更新する方法や、複数のデータを一括で削除する方法などなど、他にも沢山あります。(GCP公式ページ)』に載ってありますので、参考にしてみてください。[Go言語入門]基本的なデータの扱い方と種類[Go言語入門]コードの中にコードの解説。2017プライバシーポリシーコンテンツの転載は固くお断りいたします。