MySQL と C を使用して単純な電子メール送信関数を開発する方法
要約: この記事では、C プログラミング言語を使用して単純な電子メール ベースの関数を開発する方法を紹介します。 MySQLデータベース上でのメール送信機能。この記事では主に、データベースの設計、C コードの実装、電子メール送信機能の実装について説明します。
1. データベース設計
MySQL データベースでは、電子メール関連の情報を保存するために少なくとも 2 つのテーブルを作成する必要があります。最初のテーブルは、ユーザー ID、ユーザー名、パスワードなどのユーザー情報を保存するために使用されます。 2 番目のテーブルは、電子メール ID、送信者 ID、受信者 ID、電子メールの件名、電子メールの内容などを含む電子メールの内容を保存するために使用されます。
ユーザー情報テーブルを作成するSQL文は次のとおりです。
CREATE TABLE user ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(50) NOT NULL, password VARCHAR(50) NOT NULL );
メール内容テーブルを作成するSQL文は次のとおりです。
CREATE TABLE mail ( id INT PRIMARY KEY AUTO_INCREMENT, sender_id INT, receiver_id INT, subject VARCHAR(100) NOT NULL, content TEXT NOT NULL, FOREIGN KEY (sender_id) REFERENCES user(id), FOREIGN KEY (receiver_id) REFERENCES user(id) );
2. Cコード実装
#include <mysql_driver.h> #include <mysql_connection.h> using namespace std; using namespace sql;
cppsql::mysql::MySQL_Driver *driver; cppsql::mysql::MySQL_Connection *con; cppsql::mysql::MySQL_Statement *stmt; cppsql::mysql::MySQL_Resultset *res; driver = cppsql::mysql::get_mysql_driver_instance(); con = driver->connect("tcp://127.0.0.1:3306", "root", "password"); stmt = con->createStatement();
void sendMail(int senderID, int receiverID, string subject, string content) { string sql = "INSERT INTO mail (sender_id, receiver_id, subject, content) VALUES (" + to_string(senderID) + ", " + to_string(receiverID) + ", '" + subject + "', '" + content + "')"; stmt->execute(sql); }
C コードでは、sendMail 関数を呼び出して電子メールを送信できます。 . .以下に例を示します。
sendMail(1, 2, "Hello", "This is a test email.");
以上がMySQLとC++を使って簡単なメール送信機能を開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。