输一个 判断一次,如果 否 messageboxshow"不存在”
要源码!
添加一个按钮,事件如下面的就行了,mssql自己改下SQL对应的对象
private void button2_Click(object sender, EventArgs e)
{
if (dgv1.Rows.Count > 0)
{
//如果不是Access数据库自己驱动和对象,如System.Data.SqlClient.SqlConnection。Access的话自己注意修改access文件路径
OleDbConnection cn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0;data source=E:\文件\C#\dgdemo\bin\Debug\data.mdb");
//SqlConnection cn = new SqlConnection("mssqlserver驱动字符串");//驱动格式如: server=.;database=数据库名;uid=用户名;pwd=用户密码
cn.Open();
OleDbCommand cmd = new OleDbCommand();
//SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
string value = "";
foreach (DataGridViewRow dr in dgv1.Rows)
if (dr.Cells[2].Value != null&&(value=dr.Cells[2].Value.ToString().Trim())!="")
{
cmd.CommandText = "select count(1) from [userinfo] where [email]='" + SQLReplace(value) + "'";
if (cmd.ExecuteScalar().ToString() != "0")
{
MessageBox.Show("第" + (dr.Index + 1) + "行Email地址“" + value + "”数据库中已经存在!");
}
}
cn.Close();
dgv1.Rows.Clear();
}
else MessageBox.Show("没有输入数据!");
}
datagridview添加CellEndEdit事件,判断下email是否存在数据库中
private void dgv1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 2)//如果你的邮箱列不在第三列修改这里,下标从0开始
{
DataGridViewCell cur = dgv1.CurrentCell;
if (cur.Value == null) return;
string value = cur.Value.ToString().Trim();
if (value != "")//email值不为空判断数据库中是否存在此email
{
OleDbConnection cn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0;data source=E:\文件\C#\dgdemo\bin\Debug\data.mdb");
cn.Open();
OleDbCommand cmd = new OleDbCommand("select count(1) from [userinfo] where [email]='" + SQLReplace(value) + "'", cn);
bool ex = cmd.ExecuteScalar().ToString() != "0";
cn.Close();
if (ex)
{
MessageBox.Show("Email地址“" + value + "”已经存在!");
cur.Value = "";//清空值
dgv1.CurrentCell = cur;
dgv1.BeginEdit(true);
}
}
}
}
private void button2_Click(object sender, EventArgs e)
{
if (dgv1.Rows.Count > 0)
{
//如果不是Access数据库自己驱动和对象,如System.Data.SqlClient.SqlConnection。Access的话自己注意修改access文件路径
OleDbConnection cn = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0;data source=E:\文件\C#\dgdemo\bin\Debug\data.mdb");
//SqlConnection cn = new SqlConnection("mssqlserver驱动字符串");//驱动格式如: server=.;database=数据库名;uid=用户名;pwd=用户密码
cn.Open();
OleDbCommand cmd = new OleDbCommand();
//SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
string value = "";
foreach (DataGridViewRow dr in dgv1.Rows)
if (dr.Cells[2].Value != null&&(value=dr.Cells[2].Value.ToString().Trim())!="")
{
cmd.CommandText = "select count(1) from [userinfo] where [email]='" + SQLReplace(value) + "'";
dr.Cells[3].Value = cmd.ExecuteScalar().ToString() != "0";
}
cn.Close();
}
else MessageBox.Show("没有输入数据!");
}