在线工具 在线编程 在线白板 在线工具 在线编程 在线白板

C#如何判断一个字符串是否在数据库中的某个字段中已存在?

是这样的,想请问一下,C#如何判断一个字符串是否在数据库中的某个字段中已存在?
最新回答
帕嘉音

2025-02-24 09:28:53

???根据这个字符串 查询数据库,如果有返回值 就说明存在,没有返回值或者返回值为NUll 那就不存在
追问
能不能举个例子呢?比如{“a”,“b”,“c”}怎么判断a在不在里面呢?
追答
我也好久没有 弄个C#了 给你个思路吧,你执行sql 语句的时候 ,已知字符串 a ,你想查询 table 表中的b字段 是否存在a 这个值;
以下为连接代码,
SqlConnection sqlConn=new SqlConnection("你的链接字符串");
try{
sqlConn.Open();
}
catch{Messageboxs.Show("数据库连接失败");return;}
string sql="select b from table where b='a' ";
SqlCommand sqlCmd=new SqlCommand(sql,sqlConn);
Object jilu=sqlCmd.ExecuteNonQuery();
if(jilu==null)
{
Messageboxs.Show("不存在此记录")
}
else
{
Messageboxs.Show("存在此记录")
}
try{
sqlConn.Close();
}
catch{return;}
追问
嗯  谢谢  我试试
如果用的是selcet的话 它返回的是一个表 好像不能根据sqlCmd.ExecuteNonQuery();判断
要取得这个表 判断它里面有没有数据 要用dataset?这个应该怎么判断呢?
山前冥想

2025-02-24 14:55:33

这个一般同针对相对的地方进行判断的吧,比如你注册一个用户,用户名不能有相同
奶气缠身

2025-02-24 09:09:07

like 一下 有的话就有
風的廻喑

2025-02-24 06:06:55

给你个参考:
private void Form1_Load(object sender, EventArgs e)
{
using (SqlConnection con = new SqlConnection("data source=.;database=Test;integrated security=true"))
{
using (SqlCommand cmd = con.CreateCommand())
{
cmd.CommandText = "select * from T_Student";
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
sda.Fill(ds);
dataGridView1.DataSource = ds.Tables[0].DefaultView;
label1.Text = "";
bool flag1 = false;
bool flag2 = false;
foreach (DataColumn column in ds.Tables[0].Columns)
{
label1.Text += column.ColumnName + ",";
if (column.ColumnName.Equals("Age"))
{
label2.Text = "列名" + column.ColumnName + "已存在";
flag1 = true;
}

if (column.ColumnName.Equals("StudentName"))
{
label3.Text = "列名" + column.ColumnName + "已存在";
flag2 = true;
}
}
if (!flag1)
{
label2.Text = "列名Age不存在";
}

if (!flag2)
{
label3.Text = "列名StudentName不存在";
}
}
}
}