我有一个winform,有四个文本框,两个下拉列表和一个Save按钮
文本框就像这些
使用在文本框2011-03-02中输入的值启动文本框 (YYYY-MM-DD)
在文本框中输入值的Enddate文本框2013-09-04(yyyy-mm-dd)
截止日期文本框,在该文本框中输入的值为(2011-03-15)(15 2011年3月3日)
在该文本框中输入值的amonut到期文本框为120.00。
paymentoption下拉列表,价值12个月现金,24个月 现金
付费选项下拉列表,其中包含每年,每月的值
我有一张桌子
paymentschedule
columns: paymentscheduleid
datetobepaid
amountdue
paymentoption
单击“保存”按钮时,值将保存在表格中,如下面的设置
如果“付费选项”是每月且结果集如下(付费选项是每月),这将是结果集
paymentscheduleid datetobepaid amountdue paymentoption
1 2011-04-15 120.00 12 months cash
2 2011-05-15 120.00 12 months cash
3 2011-06-15 120.00 12 months cash
4 2011-07-15 120.00 12 months cash
- - - -
- - - -
- - - -
20 2013-08-15 120.00 12 months cash
如果付费选项是年度,那么结果集将是这样的(付费选项是每年)
paymentscheduleid datetobepaid amountdue paymentoption
1 2011-04-15 120.00 12 month cash
2 2012-04-15 120.00 12 months cash
3 2013-04-15 120.00 12 months cash
datetobpaid取决于startdate和在截止日期文本框中输入的值
是否可以使用mysql和c#
使用单个insertstatement任何人都可以帮助解决这个问题
非常感谢......答案 0 :(得分:1)
这完全在MS Sql上运行,您可以根据需要将其更改为Mysql:
declare @DueDate Datetime
declare @EndDate Datetime
declare @PaidOption varchar(10)
set @PaidOption='Monthly'
set @DueDate='2011-03-15'
set @EndDate='2013-09-04'
if @PaidOption='Monthly' -- for monthly
Begin
set @DueDate=DATEADD(month,+1,@DueDate)
WHILE @DueDate<@EndDate
BEGIN
--insert statement use @duedate for datetobepaid and other values are as you input
set @DueDate=DATEADD(month,+1,@DueDate)
END
End
Else -- for yearly
Begin
set @DueDate=DATEADD(Year,+1,@DueDate)
WHILE @DueDate<@EndDate
BEGIN
--insert statement use @duedate for datetobepaid and other values are as you input
set @DueDate=DATEADD(year,+1,@DueDate)
END
End
此处Paidoption和其他字段是静态设置的。虽然您可以将它用作输入参数
希望这可以解决你的问题