C# 打开SQL命令对数据进行排序
您好,提前谢谢您的帮助 我在读取SQL数据库时遇到问题 如果指定列名,该命令将100%起作用C# 打开SQL命令对数据进行排序,c#,sql,sql-server,C#,Sql,Sql Server,您好,提前谢谢您的帮助 我在读取SQL数据库时遇到问题 如果指定列名,该命令将100%起作用 SqlCommand com = new SqlCommand("Select * From Stock where Fuad > 0 ", con); 但问题是,我的程序跟踪用户之间的股票运动,我需要使用类似于的命令 String currentuser = //(current user logged in, passed when logged in) SqlCommand com = n
SqlCommand com = new SqlCommand("Select * From Stock where Fuad > 0 ", con);
但问题是,我的程序跟踪用户之间的股票运动,我需要使用类似于的命令
String currentuser = //(current user logged in, passed when logged in)
SqlCommand com = new SqlCommand("Select * From Stock where '" + currentuser + "' > 0 ", con);
但是当我运行这段代码时,我得到一个错误:“将varchar值'Fuad'转换为数据类型int时,转换失败。”现在我知道我在sql中的列被设置为int。但是这对列名有什么影响
我可以为每个用户写出来,但从长远来看,这毫无意义,因为对于每个新员工,我都必须写一个更新。有没有一种方法可以使用通用调用方ie:currentuser来帮助实现这一点
SQL数据库设置为int列,每列都有技术人员/员工的姓名,并跟踪他当前预订的每个部分的数量
如果是Int,我就不知道如何调用列名,因为我使用的任何字符串都是varchar
加载此文件的完整代码是
SqlConnection con = new SqlConnection(Connectstring)
con.Open();
SqlCommand com = new SqlCommand("Select * From Stock where '" + currentuser + "' > 0 ", con);
try
{
SqlDataReader dr = com.ExecuteReader();
while (dr.Read())
{
ListViewItem item = new ListViewItem(dr["ItemName"].ToString());
item.SubItems.Add(dr["ItemCode"].ToString());
item.SubItems.Add(dr[currentuser].ToString());
listView1.Items.Add(item);
}
dr.Close();
如前所述,如果我用列名替换“currentuser”,这将100%起作用。是否可以使用字符串调用它,如果不能,我将不得不找到另一种方法来执行此操作。尝试使用
[Fieldname]
这种方法:
String currentuser = //(current user logged in, passed when logged in)
SqlCommand com = new SqlCommand("Select * From Stock where [" + currentuser + "] > 0 ", con);
请尝试以以下方式使用
[Fieldname]
:
String currentuser = //(current user logged in, passed when logged in)
SqlCommand com = new SqlCommand("Select * From Stock where [" + currentuser + "] > 0 ", con);
只是不要在列名“'”中使用单个括号
只是不要在列名“'”中使用单个括号 “现在我知道我在sql中的列设置为Int”-你能在sql中粘贴列定义和几行示例数据吗?currentuser返回什么?现在我知道我在sql中的列设置为Int”-你能在sql中粘贴列定义和几行示例数据吗?currentuser返回什么?
Fuad
不是关键字,所以不需要[]?使用[]是所有select命令的最佳实践。如果这是您否决的原因,那么您的否决是不正确的。Fuad
不是关键字,因此不需要[]?使用[]是所有select命令的最佳实践。如果这就是你投否决票的原因,那么你的否决票是不正确的。