自己写的代码太傻,请大家给我一个比较好的写法,谢了:) 可以是用参数。string SQL ="SELECT 姓名,年龄 FROM 成员表 WHERE 年龄 >@age ";然后让参数的value=age 这个变量也可以! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 string SQL ="SELECT 姓名,年龄 FROM 成员表 WHERE 年龄>"+textBox1.Text ; 去掉string age=textBox1.Text 这句,直接接上textBox1.Text 可以是用参数。string SQL ="SELECT 姓名,年龄 FROM 成员表 WHERE 年龄 >@age ";然后让参数的value=age 这个变量也可以!_______________________________________________对,我就是想用这种方法,看着就简洁。可是我不怎么会用,能给出个具体写法吗?:)谢谢楼上几位的关注。BY:AllenTing()写的也比我强 举个例子:SqlCommand sampleCMD = new SqlCommand("select....", nwindConn);sampParm = sampleCMD.Parameters.Add("@age", SqlDbType.NVarChar, 12);sampParm.Value = "Sample Value"; String.Format("SELECT 姓名,年龄 FROM 成员表 WHERE 年龄>{0}",this.TextBox1.Text); 个人经验:sql语句不要写死在程序里面!!否则如果以后升级什么的会烦死人的!!(举个例子,假如你的数据库换了另一个环境,不能用中文字段名,那你不是要全部改程序??)可以统一放到一个地方(封装一个类也是一个不错的主意),要不一张表里也行。用的时候取出来,用要查询的参数Format一下,比如语句: str = “ SELECT 姓名 as name,年龄 as age FROM 成员表 WHERE 年龄>={0}”;format( str, textBox1.Text );//记不大清C#怎么用Format了,查一下其实也就和你上面的差不多,引用的时候不要直接用字段名,而是通过as name...用 sqlReader["name"].ToString();这样即使你的字段名变了,也无所谓,只要改表里的语句,程序一点也不用动!!程序会简洁明了,易懂得多!! string age=textBox1.Text.Trim(); //最好写上此句以曲调空格string SQL ="SELECT 姓名,年龄 FROM 成员表 WHERE 年龄>=@age";SqlCommand sqlComm=new SqlCommand();sqlComm.Connection=sqlConn;sqlComm.CommandText=SQL;sqlComm.AddPar...... topken(topken) 说的有道理。 1、sqlConn没有及时关闭2、我诀的用存储过程快一点,比较好维护3、catch(SqlException ex){MessageBox.Show("错误:"+ex.Message );}finally{sqlConn.Close();}}4、用不用parameters没有必要,因为用parameters可以省略command重新构造,在这里没command只构造了一次 求一正则 询问一个正则表达的问题 证件扫描程序在运行时出错,请大家帮忙看看 两台计算机在不同的局域网中,如何用C#实现文件传输? 菜鸟300问之三--------------C#语句在HTML语句中不能动 如何只让显示2位小数点 请教高手一个dataGrid的问题 在C# 中,如何开启服务,如何关闭服务? 用资源实现多语言时,手动添加的字符串资源经常在编译后消失,是怎么回事啊? 哪位有图书馆管理系统的C#源程序? 请问如何在Dataset中“添加”新的行,而不是覆盖? c#如何调用c语言写的函数.c文件怎么生成dll/lib
去掉string age=textBox1.Text 这句,直接接上textBox1.Text
然后让参数的value=age 这个变量也可以!
_______________________________________________
对,我就是想用这种方法,看着就简洁。可是我不怎么会用,能给出个具体写法吗?:)
谢谢楼上几位的关注。
BY:AllenTing()写的也比我强
sampParm.Value = "Sample Value";
否则如果以后升级什么的会烦死人的!!(举个例子,假如你的数据库换了另一个环境,不能用中文字段名,那你不是要全部改程序??)
可以统一放到一个地方(封装一个类也是一个不错的主意),要不一张表里也行。用的时候取出来,用要查询的参数Format一下,
比如语句:
str = “ SELECT 姓名 as name,年龄 as age FROM 成员表 WHERE 年龄>={0}”;
format( str, textBox1.Text );//记不大清C#怎么用Format了,查一下
其实也就和你上面的差不多,
引用的时候不要直接用字段名,而是通过as name...用 sqlReader["name"].ToString();
这样即使你的字段名变了,也无所谓,只要改表里的语句,程序一点也不用动!!
程序会简洁明了,易懂得多!!
string SQL ="SELECT 姓名,年龄 FROM 成员表 WHERE 年龄>=@age";
SqlCommand sqlComm=new SqlCommand();
sqlComm.Connection=sqlConn;
sqlComm.CommandText=SQL;
sqlComm.AddPar......
catch(SqlException ex)
{
MessageBox.Show("错误:"+ex.Message );
}
finally
{
sqlConn.Close();
}}
4、用不用parameters没有必要,因为用parameters可以省略command重新构造,在这里没command只构造了一次