VS2012 Express 만 사용하여 내 응용 프로그램에 대한 전체 데이터베이스를 만들었으므로 (localdb를 사용하고 있습니다) 데이터베이스를 만들고 응용 프로그램에 사용할 데이터 집합 및 테이블 어댑터를 만드는 작업을 처리했습니다. . 지금까지 잘 작동했습니다. 필자는 비동기 데이터베이스 읽기를 허용하는 래퍼 클래스도 만들었으며 이는 또한 훌륭하게 작동합니다.삽입 메서드가 예상대로 작동하지 않습니다.
INSERT INTO Races (ChampionshipID, Driver1, Driver2, RaceTime)
VALUES (@ChampionshipID,@Driver1,@Driver2,@RaceTime);
SELECT ID, ChampionshipID, Driver1, Driver2, RaceTime FROM Races WHERE (ID = SCOPE_IDENTITY())
나는 그것이를 반환하기 위해 하나의 select 않습니다 참조 : I합니다 (Races
테이블에 예를 들어) 내 삽입 방법을 추가 할 때 디자이너 내 테이블 어댑터를 보면
, 그것은 다음 쿼리를 사용 방금 삽입 된 행. 그건 내가 원하는 것에 완벽 해. 그러나, 생성하는 실제 방법은 다음과 같은 서명이 있습니다
int Insert1(long ChampionshipID, long Driver1, long Driver2, DateTime RaceTime)
그것은이 int
아니라 예상 DataRow
또는 DataTable
을 반환하는 것을,도 아니다에 삽입 할 수있는 매개 변수로 DataTable
을 않습니다.
내가 잘못 했나요? 이 기능을 어떻게 구현할 수 있습니까?
명백하게하기 위해 SELECT *는 행을 다시 데이터 집합 *으로 읽지 만 호출하는 프로그램에 행을 반환하지 않습니다. 즉, INSERT로 업데이트 된 ID 또는 타임 스탬프 필드는 읽을 데이터 세트에서 사용할 수 있습니다. – peterG