与往常一样,我对这一切都很陌生,正如您将从我的问题中看到的那样。我一直在练习C#,用户可以输入有关其活动的各种信息,然后其他人可以通过搜索找到该信息。我首先用XML做了这个,并让它工作。我现在继续看看我是否可以在sql中完成它。
这很容易,但似乎非常强大。
我已经建立了一个包含数据集的本地数据库。我把桌子做成了“事件”。花了我一两天的时间来摆弄,直到我写信给我时没有收到错误信息,所以我认为确实如此。但当我“显示表格数据” - 它不在那里。
我做错了什么?也希望在我尝试这样做的方式输入其他任何错误。
这是我写入数据库中“事件”表的代码:
private void button2_Click(object sender, EventArgs e)
{
DateTime date = dateTimePicker1.Value;
DateTime time = dateTimePicker2.Value;
int ID = 55; //JUst for testing
XMLClass eventen = new XMLClass(dato, tid, comboBox1.Text, comboBox2.Text, textBox1.Text, textBox2.Text, textBox3.Text); //Still called XML class. Its just my constructor for the objects, though.
SqlConnection conn = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\SampleDatabase.mdf;Integrated Security=True");
using (SqlCommand command = new SqlCommand("INSERT into Event values(@Place, @Adress, @Titel, @Whatsup, @Category, @Date, @Time, @Displaytitel, @ID)", conn))
{
conn.Open();
command.Parameters.Add(new SqlParameter(@"Place", eventen.Place));
command.Parameters.Add(new SqlParameter(@"Adress", eventen.Adress.ToString()));
command.Parameters.Add(new SqlParameter(@"Titel", eventen.Titel));
command.Parameters.Add(new SqlParameter(@"Whatsup", eventen.Whatsup));
command.Parameters.Add(new SqlParameter(@"Category", eventen.Category));
command.Parameters.Add(new SqlParameter(@"Date", eventen.Date));
command.Parameters.Add(new SqlParameter(@"Time", eventen.Time));
command.Parameters.Add(new SqlParameter(@"Displaytitel", eventen.Titel.ToString() + ". " + eventen.Category.ToString() + ". Date: " + eventen.Date.ToString() + ". Starter: " + eventen.Time.ToString() + ". Bydel: " + eventen.Place.ToString() + "."));
command.Parameters.Add(new SqlParameter(@"ID", ID));
command.ExecuteNonQuery();
conn.Close();
}
}
EDIT!事实证明,我的理解甚至比我对数据库的想法还要少。它既可以在本地创建,也可以写入和读取。我只需要从头开始吧。对于其他任何正在努力解决这些问题的人来说,这是一个从头开始的好地方:http://www.homeandlearn.co.uk/csharp/csharp_s12p7.html
感谢所有帮助的尝试,伙计们。真的很感激。很抱歉在这里浪费任何人的时间。