안녕하세요. 그레이프시티입니다.
문의하신 사항에 대한 답변은 아래와 같습니다.
문의사항 1. dbo.FGC_US_W_***의 생성이유 및 용도
데이터베이스에는 사용자 서비스 정보 캐시 테이블이 있습니다. 그러나 외부 데이터베이스를 사용하는 경우, 다른 사용자 서비스를 가진 다중 포건시 애플리케이션이 동일한 데이터베이스에 연결될 수 있습니다. 그렇게 되면 캐시 테이블이 충돌하게 됩니다. 그리고 포건시는 크로스 데이터베이스 연결은 지원하지 않습니다. 그래서 포건시는 사용자 정보를 저장하기 위해 외부 데이터베이스에 테이블을 생성한 것입니다.
문의사항 2. 해당 테이블을 활용 가능한지? 서버관리자에 업데이트한 내용이 자동 반영 가능한지?
이 테이블은 서버관리자와 관련이 없습니다. 서버관리자에는 사용자 정보를 저장하는 SQLite 데이터베이스가 있습니다. 서버관리자의 데이터는 SQLite파일에서 가져옵니다.
문의사항 3. 어느 시점에 자동 생성되는 지?
페이지에 외부 데이터 테이블에 대한 사용자 바인딩과 페이지에 대한 사용자 필드의 확장 필드를 바인딩하는 경우 런타임에 들어갈 때 외부데이터베이스에 사용자 정보테이블을 생성합니다.
아래의 스탭과 같습니다.
1. 페이지에 FGC_Creator의 메일과 같은 사용자 필드의 하위 필드 바인딩
2. 실행을 하고, 페이지에 하위 필드 데이터를 표시하거나 테이블에 데이터를 추가
문의사항 4. <dbo.FGC_USD_W_***>라는 것도 있던데, 이름이 정해지는 규칙이 랜덤한건지?
이름은 랜덤하게 생성되지 않습니다.
아래와 같은 정책에 따라 이름이 생성됩니다.
1. 서버 사이트의 경우 테이블이 이름이 FGC_US_%ComputerName%입니다.
2. 빌더사이트의 경우 FGC_USD_%ComputerName%입니다.
3. 윈도우 인증을 사용할 경우 테이블 이름에 "_W"가 추가됩니다.
- FGC_US_@%컴퓨터이름%
- FGC_USD_@%컴퓨터이름%
4. SecurityProvider의 경우 테이블 이름에 "_S"가 추가됩니다.
- FGC_US_S_%컴퓨터 이름%
- FGC_USD_S_%컴퓨터 이름%
5. 데이터베이스에는 테이블 이름 길이 제한이 있기 때문입니다. 따라서 ComputerName이 너무 길면 컴퓨터 이름이 하위 문자열이 됩니다.
- Oracle에서는 모든 유니코드가 "_"로 변환됩니다.
- 모든 특수 문자는 " ", "?"와 같은 "_"로 변환됩니다.
- Oracle 및 ODBC userInfo 테이블 이름의 최대 길이는 28입니다.
- SqlServer 컴퓨터 이름의 최대 길이는 30자이며 유니코드는 1자로 처리됩니다.
이상입니다.
감사합니다.