로컬 기반 데이터 저장 (XML 파일) 또는 SQL Server 기반 중에서 선택할 수있는 옵션이 있습니다. xml 파일에 로컬 데이터를 저장하는 응용 프로그램의 형식화 된 데이터 집합을 오래 전에 만들었습니다.C# SQL 데이터 어댑터 기존 입력 된 데이터 집합 채우기
이제 서버 기반 버전과 로컬 버전간에 변경되는 bool이 있습니다. true이면 내 응용 프로그램이 SQL Server에서 데이터를 가져옵니다. ,
는 잘 모르겠어요하지만 SQL을 어댑터의 채우기 방법이 내 로컬에서 (카테고리에 dbo.Categories에서 내 데이터를 작성해야
SqlCommand cmd = new SqlCommand("Select * FROM dbo.Categories WHERE CatUserId = 1", _connection);
cmd.CommandType = CommandType.Text;
_sqlAdapter = new SqlDataAdapter(cmd);
_sqlAdapter.TableMappings.Add("Categories", "dbo.Categories");
_sqlAdapter.Fill(Program.Dataset);
기존 스키마에 데이터를 채울 수없는 것 같다 형식화 된 데이터 집합). 하지만 그렇지 않습니다. 이름이 "Table"인 새 테이블을 만듭니다. 기존 스키마를 처리 할 수없는 것 같습니다.
알아낼 수 없습니다. 문제가 어디에 있습니까?
btw. 물론 내가하는 데이터베이스 요청은 그다지 유용하지 않습니다. 테스트 용으로 단순화 된 버전 일뿐입니다 ...
문제는 이미 기존 데이터 스키마가 있음입니다. 그러나 테이블에는 SQL 데이터베이스의 테이블과 다른 이름이 있습니다. 그래서 내가 sql 데이터베이스를 TableMapping 로컬 데이터 집합 스키마와 일치하도록 만들려고했습니다. 왜 이런 식으로하는지 묻지 마십시오. 하지만 서버에서 테이블의 이름을 바꾸는 대신 작업해야한다고 생각합니다. –
@Rene - 나는 당신이 어떤 테이블의 이름을 바꿀 필요가 있다고 제안하지 않았다. 내 대답에서 두 번째 링크를 확인 했습니까? SQL 데이터베이스의 테이블 이름에는 DataSet의 DataTable과 다른 이름이 필요하지 않습니다. 내가 준 두 번째 링크의 그림 1을 참조하십시오. – AdaTheDev
아, 죄송합니다, 당신의 권리. 나는 그것을 시험해야한다. 좋은 링크 3. 열 이름과 함께 작동되기를 바랍니다. 해결 방법이지만 TableMapping을 사용할 때의 문제는 해결되지 않습니다. 그러나 그것은 해결책입니다. 나는 그것을 시도 할 것이다. –