데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
테이블의 데이터 형식을 지정해서 그에 해당하는 컬럼의 이름을 셀렉트할수 있을까요?
그리고 테이블의 애트리뷰트가 입력된 시간을 알수는 없을까요 ?
애초에 테이블에 데이터 입력시 getdate를 하지 않은 상태로요...
Comment 4
-
쓸만한게없네(윤선식)
2013.01.12 12:14
-
minsouk
2013.01.12 13:25
소고기 사나 안사나? -
쓸만한게없네(윤선식)
2013.01.13 18:39
그... 이야기는 따로 좀. ㅋ
-
l3lue
2013.01.14 09:02
1번 답변내용 정말감사합니다.
2번 같은경우 전자의 경우라 ㅋ 역시 안되는군요
덕분에 잘해결될것같습니다.!
1. Column 이름 SELECT
SELECT
B.name AS [schema_name],
A.name AS table_name,
C.name as columnname,
D.name as datatype
FROM
sys.objects A JOIN sys.schemas B ON A.schema_id = B.schema_id
JOIN sys.columns C ON A.object_id = C.object_id
JOIN sys.types D ON C.user_type_id = D.user_type_id
WHERE
A.type = 'U' AND D.name ='int'
ORDER BY
B.name, A.name, C.column_id
GO
위 명령어를 응용해 보심이.
2. 애트리뷰트 입력된 시간
여기서 말씀하시는 게 칼럼을 추가한 시각을 말씀하시는 건가요? (Entity 를 Table로, Attribute를 Column으로 본다면)
아니면, 새로운 데이터를 추가한 시각을 말씀하시는 것인가요?
전자라면 특별히 알 수 있는 방법이 없는 것으로...
후자의 경우엔
- SQL Server 2008 Enterprise 이상일 경우 Audit 기능이나 CDC(Change Data Capture) 기능으로 가능하고요.
- 기타의 경우 Trigger 등으로 확인이 가능합니다만...