私は現在、クラスのasp.netプロジェクトを仕上げており、必要条件の1つに大きな欠陥があることに気付き始めました。アプリケーションは 5 つの質問をし、その回答をデータベースに書き込みます。その後、調査の結果をユーザーに表示する必要があります。
これは私がこれまでに試みたことです:
public static string GetConnectionString()
{
string connStr = String.Format("server={0}; user id={1}; password={2};" + "database= -table to be accessed-; pooling=false",
"-database server-", "-user-", "-password-");
return connStr;
}
protected void Button1_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
string sex = gender.Text;
string likes = interests.Text;
string edu = education.Text;
string nation = nationality.Text;
string userage = age.Text;
MySql.Data.MySqlClient.MySqlConnection mycon;
mycon = new MySqlConnection(GetConnectionString());
try
{
MySqlCommand cmd = new MySqlCommand("INSERT INTO survey (gender, age, birthplace, occupation, winner) VALUES ('" + sex + ", " + likes + ", " + edu + ", " + userage + "')", mycon);
cmd.ExecuteNonQuery();
mycon.Open();
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
mycon.Close();
}
}
}
先に進み、データベース情報をプレースホルダーに置き換えました。
データベースは MySql で、外部サーバーでホストされています。
私が経験している問題は、コードはコンパイルされますが、情報がデータベースに書き込まれないことです。これがコードをまだテスト中であり、Web アプリケーションをサーバーにアップロードしていないという事実によるものなのか、それとも単に間違っているという事実によるものなのかはわかりません。
結果を表示する限り、上記のコードが正しければ、単純に SQL クエリを変更するだけですよね?
洞察力を前もって感謝します。