2014-09-18 2 views
0

Visual Studio 2012, SQL Server, C#을 사용하고 있습니다.범위 시간 내에 데이터베이스에 삽입

두 개의 DatePicker 개체가 있는데, 선택한 날짜 사이에 매일 데이터베이스에 1 행을 삽입하려고합니다.

예를 들어, I 선택

날짜 선택기 1 2014년 9월 8일 (MM/DD/YYYY)

날짜 선택기 2 2014년 9월 10일 (MM/DD/YYYY)

그리고 "A", 그것을 참조 2014년 9월 10일에 2014년 9월 8일 사이의 날짜가 3 회를 삽입합니다 그림 같은 내용으로 삽입 버튼을 클릭하면

http://www.mediafire.com/convkey/2b4c/13l6kpevdk113026g.jpg

http://www.mediafire.com/convkey/e25c/842wgeaq4z107y36g.jpg

나는 이러한 목표를 달성하기 위해 루프를 사용하여 생각하고 있지만 나는 그것을 작성하는 방법을 모르는 : 데이터베이스의 결과는 다음과 같을 것이다.

당신에게

+3

생산하고 노력 무엇을 가지고있다. DATEDIFF/DATEADD를 사용하는 저장 프로 시저가 필요한 항목 일 것입니다. – ItalianStallion

+0

예상되는 출력은 무엇이며 어떻게 데이터를 테이블에 삽입합니까 ?? – Ambrish

+0

C#, SQL 서버 및 리피터로 출력 – user3544501

답변

0

당신은 C#을 사용하면 실행하는 SQL 문자열을 구성하기 위해 날짜 시간의 기능을 사용할 수 있습니다 사용하는 경우 대단히 감사합니다. 예 :

DateTime start = new DateTime(2000, 2, 25); 
    DateTime end = new DateTime(2000, 3, 2); 
    String sql = ""; 
    for (int i = 0; i < end.Subtract(start).Days; i++) 
    { 
     if (sql.Length > 0) 
      sql += ","; 
     sql += "\n('" + start.AddDays(i).ToString("yyyy-MM-dd") + "')"; 
    } 
    sql = "INSERT INTO tableX VALUES" + sql; 

는 데이터베이스 것은 당신이 사용하는

INSERT INTO tableX VALUES 
('2000-02-25'), 
('2000-02-26'), 
('2000-02-27'), 
('2000-02-28'), 
('2000-02-29'), 
('2000-03-01') 
관련 문제