如何简单的编写查询代码??
电影票系统有以下字段filmnamemainactorfilmlengthcountrycompanystarttime//首映日endtime//最后上映日有一个for...
电影票系统有以下字段
filmname
mainactor
filmlength
country
company
starttime//首映日
endtime//最后上映日
有一个form表,里面有向对应的textbox,和一个datagridview
我想进行编写查询代码
当他们为空时,查所有记录
当他们不为空时,查填写的记录
我决定很麻烦,因为有时候一些字段填写了查询添加,有的字段没填写查询条件(要查所有记录),若用if else做要写很多,有没有简单的方法
编写查询语句?
我是c# winform里
如果
starttime
endtime
不是textbox 而是datetimePicker 该怎么办 展开
filmname
mainactor
filmlength
country
company
starttime//首映日
endtime//最后上映日
有一个form表,里面有向对应的textbox,和一个datagridview
我想进行编写查询代码
当他们为空时,查所有记录
当他们不为空时,查填写的记录
我决定很麻烦,因为有时候一些字段填写了查询添加,有的字段没填写查询条件(要查所有记录),若用if else做要写很多,有没有简单的方法
编写查询语句?
我是c# winform里
如果
starttime
endtime
不是textbox 而是datetimePicker 该怎么办 展开
展开全部
datetimePicker控件也有Text属性的,返回的是string,而且也包含年月日的值,
Value属性返回的是DateTime,你还要转换一下
下面的代码已经修改了一下,你自己补充一下就好了。
string sql = "select * from 电影票表 where 1=1";//这个1=1方便后面添加and用
string[] arr = {"filmname","mainactor","filmlength","country","company","starttime","endtime"};
for(int i=0;i<arr.Length;i++)
{
for(int j=0;j<this.Controls.Count;j++)
{
if(this.Controls[j].Name == arr[i] && this.Controls[j].Text != string.Empty)
{
if(this.Controls[j] is DateTimePicker)
{
这里取得DateTimePicker的年月日进行SQL的拼接
}
else
{
sql += " and " + arr[i] + "='" + this.Controls[j].Text + "'";
}
}
}
}
Value属性返回的是DateTime,你还要转换一下
下面的代码已经修改了一下,你自己补充一下就好了。
string sql = "select * from 电影票表 where 1=1";//这个1=1方便后面添加and用
string[] arr = {"filmname","mainactor","filmlength","country","company","starttime","endtime"};
for(int i=0;i<arr.Length;i++)
{
for(int j=0;j<this.Controls.Count;j++)
{
if(this.Controls[j].Name == arr[i] && this.Controls[j].Text != string.Empty)
{
if(this.Controls[j] is DateTimePicker)
{
这里取得DateTimePicker的年月日进行SQL的拼接
}
else
{
sql += " and " + arr[i] + "='" + this.Controls[j].Text + "'";
}
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
AiPPT
2024-09-19 广告
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图...
点击进入详情页
本回答由AiPPT提供
展开全部
没办法,必须一一判断
StringBuilder filter = new StringBuilder("select * from table where 1=1");
filter.Append( (!string.IsNullOrEmpty(txtfilmname.Text)) ? "and filmname ='" + txtfilmname.Text + "'" : string.Empty);
filter.Append((!string.IsNullOrEmpty(txtmainactor.Text)) ? "and mainactor ='" + txtmainactor.Text + "'" : string.Empty);
filter.Append((!string.IsNullOrEmpty(dateTimePicker1.Value)) ? " and starttime ='" + Convert.ToDateTime(dateTimePicker1.Value)+ "'" : string.Empty);
filter.Append((!string.IsNullOrEmpty(dateTimePicker2.Value)) ? " and endtime ='" + Convert.ToDateTime(dateTimePicker2.Value)+ "'" : string.Empty);
-------------
如果你嫌这样代码太多,不如自己包个方法
private string GetFilterByValue( string value,string colunm)
{
StringBuilder filter = new StringBuilder("select * from table where 1=1");
try
{
DateTime time=Convert.ToDateTime(value);
filter.Append( "and colunm='" + time+ "'" ;
}
catch
{
filter.Append( (!string.IsNullOrEmpty(value)) ? "and colunm='" + value+ "'" : string.Empty);
}
return filter.ToString();
}
StringBuilder filter = new StringBuilder("select * from table where 1=1");
filter.Append( (!string.IsNullOrEmpty(txtfilmname.Text)) ? "and filmname ='" + txtfilmname.Text + "'" : string.Empty);
filter.Append((!string.IsNullOrEmpty(txtmainactor.Text)) ? "and mainactor ='" + txtmainactor.Text + "'" : string.Empty);
filter.Append((!string.IsNullOrEmpty(dateTimePicker1.Value)) ? " and starttime ='" + Convert.ToDateTime(dateTimePicker1.Value)+ "'" : string.Empty);
filter.Append((!string.IsNullOrEmpty(dateTimePicker2.Value)) ? " and endtime ='" + Convert.ToDateTime(dateTimePicker2.Value)+ "'" : string.Empty);
-------------
如果你嫌这样代码太多,不如自己包个方法
private string GetFilterByValue( string value,string colunm)
{
StringBuilder filter = new StringBuilder("select * from table where 1=1");
try
{
DateTime time=Convert.ToDateTime(value);
filter.Append( "and colunm='" + time+ "'" ;
}
catch
{
filter.Append( (!string.IsNullOrEmpty(value)) ? "and colunm='" + value+ "'" : string.Empty);
}
return filter.ToString();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询