C#将数据保存到access数据库
如何将数据添加到数据库中?我使用access数据库,此时我有一个listview,并将我的数据从数据库中获取到listview中。我制作了第二个表单应用程序,用于在本例中添加用户 所以:我想用我制作的第二个表单将我的数据添加到我的数据库中 这是我的密码。你能帮帮我吗C#将数据保存到access数据库,c#,database,ms-access,visual-studio-2012,save,C#,Database,Ms Access,Visual Studio 2012,Save,如何将数据添加到数据库中?我使用access数据库,此时我有一个listview,并将我的数据从数据库中获取到listview中。我制作了第二个表单应用程序,用于在本例中添加用户 所以:我想用我制作的第二个表单将我的数据添加到我的数据库中 这是我的密码。你能帮帮我吗 namespace Test_login { public partial class AddUser : Form { public AddUser() {
namespace Test_login
{
public partial class AddUser : Form
{
public AddUser()
{
InitializeComponent();
}
private void BtnSaveUser_Click(object sender, EventArgs e)
{
{
OleDbConnection connect = new OleDbConnection();
connect.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\Users\Daniel\Dropbox\Project Barroc-IT\Database\Barroc-IT Database.accdb";
string QueryText = "INSERT INTO Users (Name,Surname,Department,Function,Staffcode,Password) values (@Name,@Surname,@Department,@Function,@Staffcode,@Password)";
connect.Open();
using (OleDbCommand command = new OleDbCommand(QueryText))
{
try
{
OleDbDataAdapter da = new OleDbDataAdapter("INSERT INTO Users", connect);
String Name = Name_textbox.Text;
String Surname = Surname_textbox.Text;
String Department = Department_textbox.Text;
String Function = Function_textbox.Text;
String Staffcode = Staffcode_textbox.Text;
String Password = Password_textbox.Text;
command.Parameters.AddWithValue("@Name", this.Name_textbox.Text);
command.Parameters.AddWithValue("@Surname", this.Surname_textbox.Text);
command.Parameters.AddWithValue("@Department", this.Department_textbox.Text);
command.Parameters.AddWithValue("@Function", this.Function_textbox.Text);
command.Parameters.AddWithValue("@Staffcode", this.Staffcode_textbox.Text);
command.Parameters.AddWithValue("@Password", this.Password_textbox.Text);
command.ExecuteNonQuery();
connect.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
connect.Close();
}
}
}
}
}
}
你没有提到你的问题但是
名称
、功能
和密码
都在Microsoft Access上。您应该将它们与方括号一起使用,如<代码>[名称],[功能]
和[密码]
作为一般建议,不要在数据库中为标识符和对象名使用保留关键字。您可以按以下操作
string sqlQuery = "INSERT INTO Users (`Name`,`Surname`,Department,`Function`,Staffcode,`Password`) values (?,?,?,?,?,?)";
using (OleDbConnection conn = new OleDbConnection("your connection string"))
using(OleDbCommand cmd = new OleDbCommand(sqlQuery, conn))
{
conn.Open();
cmd.Parameters.AddWithValue("@Name", this.Name_textbox.Text);
cmd.Parameters.AddWithValue("@Surname", this.Surname_textbox.Text);
cmd.Parameters.AddWithValue("@Department", this.Department_textbox.Text);
cmd.Parameters.AddWithValue("@Function", this.Function_textbox.Text);
cmd.Parameters.AddWithValue("@Staffcode", this.Staffcode_textbox.Text);
cmd.Parameters.AddWithValue("@Password", this.Password_textbox.Text);
cmd.ExecuteNonQuery();
}
对于保留关键字,请使用波浪线标记,还需要为命令对象设置连接是否收到异常或错误消息?