복붙노트

[SQL] SQL 서버 : 쿼리와 컬럼의 디폴트 값을 찾기

SQL

SQL 서버 : 쿼리와 컬럼의 디폴트 값을 찾기

어떻게 SQL 쿼리를 사용하여 테이블의 컬럼의 디폴트 값을 찾을 수 있습니까?

이 저장 프로 시저를 사용하여 :

sp_columns @tablename 

나는 그것을 어떻게 얻을 수, 특정 테이블 만 누락 된 컬럼의 디폴트 값의 컬럼에 대한 몇 가지 정보를 얻을?

해결법

  1. ==============================

    1.당신은 (사용자 환경과 관련된 것들로 찾아 컬럼과 테이블 이름을 조정하기 위해 기억!) 아래에 저장된 정의를 찾을 수 있습니다

    당신은 (사용자 환경과 관련된 것들로 찾아 컬럼과 테이블 이름을 조정하기 위해 기억!) 아래에 저장된 정의를 찾을 수 있습니다

    SELECT object_definition(default_object_id) AS definition
    FROM   sys.columns
    WHERE  name      ='colname'
    AND    object_id = object_id('dbo.tablename')
    
  2. ==============================

    2.사용하다:

    사용하다:

       SELECT so.name AS table_name, 
              sc.name AS column_name, 
              sm.text AS default_value
         FROM sys.sysobjects so
         JOIN sys.syscolumns sc ON sc.id = so.id
    LEFT JOIN sys.syscomments sm ON sm.id = sc.cdefault
        WHERE so.xtype = 'U' 
          AND so.name = @yourtable
     ORDER BY so.[name], sc.colid
    
  3. ==============================

    3.나는이 같은 INFORMATION_SCHEMA 테이블을 사용합니다 :

    나는이 같은 INFORMATION_SCHEMA 테이블을 사용합니다 :

    SELECT 
        TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_DEFAULT
    FROM
        INFORMATION_SCHEMA.COLUMNS
    WHERE
      TABLE_SCHEMA = @SchemaName 
      AND TABLE_NAME = @TableName
      AND COLUMN_NAME = @ColumnName;
    
  4. from https://stackoverflow.com/questions/3817885/sql-server-find-out-default-value-of-a-column-with-a-query by cc-by-sa and MIT license