我做了一个程序,它显示了我数据库中的一个表。
声明如下:
string sql = ("select CCase.RefNo AS Az, EventTemplate.EventCode AS
Vorgang from ikaros.CCase join ikaros.Event on CCase.ID =
Event.CCaseID join ikaros.EventTemplate on Event.EventTemplateID =
EventTemplate.ID where EventTemplate.EventCode='IRVB' and
Event.EventDate ='2014-07-03' order by CCase.RefNo ASC");
现在使用
Event.EventDate='2014-07-03'
我得到SELECT语句中给出的日期表。但我想让用户有机会在文本框中给出其他日期。文本框应更改对账单中的日期。
我看了看:
尝试1个
尝试2
但这与我的问题不同。如果这是一个复制品,而我只是愚蠢地找到它,请告诉我。
添加的链接显示您正在使用WPF因此,
如果您的日期来自TextBox
,那么您应该使用TextBox.Text
属性从用户输入(如(中读取日期
var date = TextBox1.Text;
或
如果使用DatePicker
,则可以使用DatePicker.SelectedDate.Value.Date
属性读取用户输入
var date = DatePicker1.SelectedDate.Value.Date;
然后将其传递给类似的sql查询
string sql = ("select ... where EventTemplate.EventCode='IRVB' and
Event.EventDate ='"+ date +"' order by CCase.RefNo ASC");
注意:始终使用准备好的语句(参数化查询(来防止sql注入攻击。
我不确定你是否在使用ADO.NET,但你的参数化查询看起来像
string sql = ("select ... where EventTemplate.EventCode='IRVB' and
Event.EventDate = @date order by CCase.RefNo ASC");
SqlCommand command = new SqlCommand(sql, connection);
command.Parameters.AddWithValue("@date", date);