Golang は、効率性、シンプルさ、スケーラビリティの利点を備えた強力に型指定されたコンパイル言語であり、現在最も人気のあるプログラミング言語の 1 つとなっています。 Golang で日常的にプログラミングをしていると、データを削除する必要がある場面によく遭遇しますが、Golang で削除ステートメントを記述するにはどうすればよいでしょうか?この記事では、Golangのdelete文の書き方を詳しく紹介します。
1. 基本概念
Golang では、削除操作はデータベース操作の DELETE ステートメントに相当し、その機能は指定されたデータをデータ テーブルから削除することです。もちろん、削除操作を実行するときは、まず次の概念を明確にする必要があります。
2. delete 文の基本構文
Golang における削除操作の基本構文は次のとおりです:
DELETE FROM `table_name` WHERE `condition`;
このうち DELETE がキーワードであり、これは削除操作を実行することを意味し、FROM の後には削除するデータテーブルの名前が続き、WHERE の後には削除するデータを指定する削除条件が続きます。
たとえば、users という名前のデータ テーブルから 20 歳未満のすべてのユーザー データを削除する場合は、次の削除ステートメントを作成できます:
DELETE FROM users WHERE age < 20;
3. 削除ステートメントを実行します。 Golang の場合
Golang で削除操作を実行するには、database/sql 標準ライブラリと対応するデータベース ドライバーを使用する必要があります。ここでは、Sqlite データベースを例として、削除操作を実行する方法を紹介します。
Golang の delete ステートメントを作成する前に、以下に示すように、いくつかの必要なライブラリをインポートする必要があります。
database/sql パッケージは Golang でのリレーショナル データベース操作の標準ライブラリであり、github.com/mattn/go-sqlite3
は Sqlite データベースに接続するためのドライバー ライブラリです。
import ( "database/sql" "fmt" _ "github.com/mattn/go-sqlite3" )
ここでは、test.db という名前の Sqlite データベースが開き、接続情報が db 変数に保存されます。
defer ステートメントを使用して接続を閉じ、プログラムの実行終了時にデータベース接続を正常に閉じることができるようにします。
db, err := sql.Open("sqlite3", "./test.db") if err != nil { fmt.Println(err) return } defer db.Close()
このうち
users は削除するデータテーブルの名前、age
は指定されたパラメータ値よりも古いデータを削除することを意味します。
sqlStr := "DELETE FROM users WHERE age < ?"
上記のコードでは、
db.Prepare を使用します。 ()Function は SQL ステートメントをコンパイルし、stmt オブジェクトを作成します。 stmt オブジェクトの Exec
メソッドを使用して SQL ステートメントを実行し、パラメータを SQL WHERE 句のプレースホルダに渡します。さらに、result.RowsAffected()
メソッドを使用して、削除の影響を受ける行数を取得して出力します。 これで、Golang での delete ステートメントの書き方の紹介が完了しました。
概要
この記事では主に、基本概念、基本構文、削除操作を実行するための具体的な手順など、Golang での削除ステートメントの作成方法を紹介します。この記事を読むと、誰もが Golang の delete ステートメントについての理解が深まると思います。もちろん、Golang は Sqlite データベースだけでなく、MySQL、PostgreSQL などの主流のデータベースもサポートしており、実際の開発のニーズに応じて選択できます。
以上がgolang の削除ステートメントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。