C# c语言中的Sql查询
我正在用C 2010 Express编程 我的程序中有一个SQL数据库,其中一个名为HightAndWeightTable的表有四列。我想从第四列中选择一个称为风险的值,该值基于用户在域的上下框中输入的高度 因此,我在程序中的SQL查询是:C# c语言中的Sql查询,c#,mysql,C#,Mysql,我正在用C 2010 Express编程 我的程序中有一个SQL数据库,其中一个名为HightAndWeightTable的表有四列。我想从第四列中选择一个称为风险的值,该值基于用户在域的上下框中输入的高度 因此,我在程序中的SQL查询是: SELECT Risk FROM HightAndWeightTable WHERE Hight LIKE '%" + domainUpDown1.Text + "%'" 。。。但这不起作用 另外,我们如何编写一个具有范围的SQL查询,例如,如果我想说
SELECT Risk
FROM HightAndWeightTable
WHERE Hight LIKE '%" + domainUpDown1.Text + "%'"
。。。但这不起作用
另外,我们如何编写一个具有范围的SQL查询,例如,如果我想说一个值介于一个值范围之间?首先,在比较我假设的数值时,您不想使用LIKE。您可以只做=或>或任何适合您进行比较的操作 其次,请告诉我,您正在对用户输入进行验证,或者您没有真正计划使用字符串连接来构建SQL字符串使用参数
第三,可以使用运算符来完成范围。首先,在比较我假设的数值时,您不希望使用LIKE。您可以只做=或>或任何适合您进行比较的操作 其次,请告诉我,您正在对用户输入进行验证,或者您没有真正计划使用字符串连接来构建SQL字符串使用参数
第三,可以使用操作员完成范围。首先,您遇到的一个问题是。这已经被写了很多次了,所以我在这里就不多说了 您希望将SQL查询更改为使用参数,如下所示:
using (SqlConnection conn = new SqlConnection("Server=(local);DataBase=Northwind;Integrated Security=SSPI")
{
SqlCommand cmd = new SqlCommand("SELECT Risk From HightAndWeightTable WHERE Hight LIKE '%" + @height + "%'", conn);
SqlParameter param = new SqlParameter();
param.ParameterName = "@height";
param.Value = domainUpDown1.Text;
cmd.Parameters.Add(param);
reader = cmd.ExecuteReader();
while(reader.Read())
{
//do something here:
string risk = reader["Risk"];
}
}
另外,您在查询中是否拼写正确?看起来你拼错了高度
至于:
SELECT thing t FROM table where t.value BETWEEN lowerLimit AND upperLimit
首先,你遇到的一个问题是。这已经被写了很多次了,所以我在这里就不多说了 您希望将SQL查询更改为使用参数,如下所示:
using (SqlConnection conn = new SqlConnection("Server=(local);DataBase=Northwind;Integrated Security=SSPI")
{
SqlCommand cmd = new SqlCommand("SELECT Risk From HightAndWeightTable WHERE Hight LIKE '%" + @height + "%'", conn);
SqlParameter param = new SqlParameter();
param.ParameterName = "@height";
param.Value = domainUpDown1.Text;
cmd.Parameters.Add(param);
reader = cmd.ExecuteReader();
while(reader.Read())
{
//do something here:
string risk = reader["Risk"];
}
}
另外,您在查询中是否拼写正确?看起来你拼错了高度
至于:
SELECT thing t FROM table where t.value BETWEEN lowerLimit AND upperLimit
您在查询中拼错了身高,而体重是正确的。仔细检查表名和列名的拼写是否正确?这不起作用,因为查询必须从风险列中获取值,但没有。是否收到错误消息或结果集为空?这就是Farshid的目的。使用我在前面的问题中指定的上一个查询,为了获取从sql查询返回的风险值,我使用这两个statemt来获取该值,如下所示:DataRow dRow3=ds3.Tables[Hight_Weight].Rows[0];double HightFactor=Convert.ToDoubledRow3.ItemArray.GetValue1.ToString;但是我在第二个statemt中得到一个错误,说索引超出了数组的边界。在查询中,您的高度拼写错误,而权重是正确的。仔细检查表名和列名的拼写是否正确?这不起作用,因为查询必须从风险列中获取值,但没有。是否收到错误消息或结果集为空?这就是Farshid的目的。使用我在前面的问题中指定的上一个查询,为了获取从sql查询返回的风险值,我使用这两个statemt来获取该值,如下所示:DataRow dRow3=ds3.Tables[Hight_Weight].Rows[0];double HightFactor=Convert.ToDoubledRow3.ItemArray.GetValue1.ToString;但是我在第二个statemt中得到一个错误,说索引超出了数组的边界。