2017-04-17 2 views
-1

뷰 테이블을 사용하고 있는데 뷰 테이블의 열 중 하나를 추가하려면 수동으로 SQL 관리 스튜디오를 사용하고 있습니다. (스크립트보기 -> 새 쿼리 편집기 창으로 -> 새 쿼리 편집기 창)보기 테이블에 열을 추가하는 방법은 무엇입니까?

그러나 SQL 관리 스튜디오없이 뷰 테이블에 새 열을 추가해야합니다. 프로그램에 새 열을 자동으로 추가해야하는 이유는 고객에게 제공해야하기 때문입니다.

그래서, C#베이스에 존재하는 뷰 테이블 이름과 열을 확인하는 방법을 알고 싶습니다. 그리고 C# base의 기존 뷰 테이블에 새 열을 추가하는 방법. 내가 위의 스크립트가있을 때

예를 들어
ALTER VIEW [dbo].[PackOrderRefV] 
AS 

SELECT 
    ISNULL(G.PrescriptionValue, '') AS BirthDay 
, ISNULL(H.PrescriptionValue, '') AS DoctorName 
FROM 
    PackOrderPouch A 
    LEFT OUTER JOIN PrescriptionDetail G ON A.PrescriptionID = G.PrescriptionID AND G.OCSFormatItemID = 6 --PatientBirthDay 
    LEFT OUTER JOIN PrescriptionDetail H ON A.PrescriptionID = H.PrescriptionID AND H.OCSFormatItemID = 9 --DoctorName 
GO 

) , 내가 C# 코드에서 "환자 이름"을 추가해야합니다. 아래 코드를 참조하십시오.

, ISNULL(I.PrescriptionValue, '') AS PatientName --Select 

LEFT OUTER JOIN PrescriptionDetail I ON A.PrescriptionID = I.PrescriptionID AND I.OCSFormatItemID = 15 --PatientName -- Join 

답변

0

올바르게 이해하면 VIEW 정의를 변경하여 사용자에게 동적 열 선택을 제공하려고합니다. doable 나는 C# 코드로 열 선택을 전송하는 것이 좋습니다 것이지만. 몇 가지 이유가 있지만 분명히 VIEW 개체를 변경하면 모든 데이터베이스 사용자에게 동적으로 영향을 미칩니다. 그래서,보기 PackOrderRefV에는 추가 할 수있는 모든 필드가 포함되어야합니다. 그런 다음, 코드에서이 VIEW에서 DataTable을 인스턴스화 할 수 있습니다. 이 후에 필드를 선택하는 몇 가지 방법이 있습니다. 예를 들어, DataTable에 DataView를 만든 다음 ToTable (string, bool, string []) 메서드를 사용하여이 DataView를 원하는 필드 만있는 다른 DataTable로 변환 할 수 있습니다. 최종 DataTable은 DataGridView 또는 기타 경계 가능한 GUI 컨트롤에 연결될 수 있습니다.

관련 문제