제품을 .NET으로 마이그레이션 한 직후에 잃을 MS 액세스 기능을 복제하도록 상사가 요청했습니다..NET SQL에서 데이터 업데이트보기
이 기능은 데이터베이스의 모든 데이터 (특히 테이블 또는 뷰)를 표 형식의 눈금으로보고 업데이트 할 수있는 기능입니다.
SqlDataAdapter는 DataTable을 통해 채우기/업데이트하기 위해 관련 CRUD 메서드를 자동으로 생성 할 수 있기 때문에 ID 열이있는 순수 테이블에 대해이 작업을 수행 할 수 있습니다.
그러나보기가 다소 까다 롭습니다. SQL Server Management Studio에서는이를 허용합니다. 보기에서 '상단 xx 행 편집'을 클릭하면 표준 .NET DataGridView로 보이는 일부 열의 데이터를 편집 할 수 있습니다. 약간의 마력이 들지만 말입니다.
그래서, 몇 가지 질문 :
SSMS는 키가보기에없는 경우에도 사용할 수있는 기본 키를 추론 않는 방법?
SSMS는보기 내부의 열을 편집/삽입/삭제할 수 있는지 여부를 어떻게 결정합니까?
.NET 응용 프로그램 내에서 이것을 복제하는 최선의 방법은 무엇입니까?
DataGridView를 데이터베이스에 지속적으로 직접 연결되어있는 이전 스타일의 oledb/obdc 연결에 연결할 수 있습니까?
평소대로 모든 안내를 부탁드립니다. 그들은 하나의 테이블 인 것처럼
말론
또한 뷰를 업데이트 할 수없는 경우 업데이트 트리거 대신 제공하여 STIL을 생성 할 수 있습니다.) 그러면 실제 테이블 삽입을 수행 할 수 있습니다. – TomTom
Daniel, 고맙습니다. SQL이 모든 작업을 수행 할 수 있다면 좋습니다 (정상적인 경우). 그러나 SQL에 대한 지속적인 연결이 없으므로 일부 WHERE 절이 필요합니다. 뷰의 올바른 행을 업데이트하는 update 문과 함께. ROW_NUMBER 함수와 함께 데이터를 선택해도 좋을까요, 아니면 직접 데이터베이스를 편집 할 수있는 ADODB RecordSet과 함께 가상 모드에서 DataGridView를 사용해 볼 수 있습니다. – Marlon
모든 단일 열 또는 열의 조합을 사용하여 뷰의 행을 식별해야합니다. 이 작업을 수행 할 수있는 열의 조합이없는 경우 (보기에 모든 열에 동일한 값을 가진 행이 포함될 수있는 경우) 신원으로 사용할 수있는보기에 새 열을 추가해야합니다. 모든 기본 테이블에 기본 키가있는 한 뷰에는 모든 기본 키 열의 조합으로 구성된 기본 키가 있습니다. 모든 열은 뷰에 의해 노출되어야하며 뷰에 일부 키가있는 경우 변경됩니다. 집합. –