M6S 메모리칩셋

DBTool/MSSQL 2014. 7. 15. 10:24
Posted by 말없제이
,

 

업데이트시 수량을 나눠서 업데이트 할려고하는데.

가끔 TOP 뒤에 ()를 안하고 정수를 넣어줘서 안되는경우가 가끔 순간 당황하는 경우가 있었음.

UPDATE TOP (10000) C

FROM XXX AS C

INNER JOIN XXX AS B

ON C.XX = B.XX

Posted by 말없제이
,

TrimTrailingBlanks가 Yes로 된것 No 로변경.

원인은 테이블 만들때. "SET ANSI_PADDING ON" 구문이 제외되어 Yes로 되었네
시스템마다 자동이니 - -.

--구글링을 찾아보니
--http://bytes.com/topic/sql-server/answers/84113-how-change-trimtrailingblanks-no-yes
Update syscolumns
set typestat = typestat |2
where id in ( object_id('테이블명') )
을 넣을려니..
아.. 이룬. 권한이 머시고 - -

 
음. 없다면,
한개씩 테이블 컬럼 수정(원본 그대로)을 하면 .. 짜잔 바뀜.
SET ANSI_PADDING ON
 
ALTER TABLE [dbo].[MR_InsufRecInfo]
ALTER COLUMN [ChosNo] [char](14) NULL

 

 

Posted by 말없제이
,

DTC 설정

DBTool/MSSQL 2013. 5. 20. 11:40

DTC 설정

참조 : http://cafe.naver.com/jjang12pro/578

일단 위 URL로 가셔서 읽어보세욤.

 

 

 

 

 

 

 

 

Posted by 말없제이
,

SELECT STUFF('1234561234567',7,0,'-')
select REPLICATE('*',LEN('123'))

Posted by 말없제이
,

-- 테이블 트리확인
 select 'sp_helptext ' + t.name
 FROM sys.sysobjects AS t
 INNER JOIN sys.sysobjects AS o
 ON t.parent_obj = o.id
 WHERE
   t.xtype ='TR'
  and o.name like 'DSCTB_'

Posted by 말없제이
,

참조 사이트 : http://msdn.microsoft.com/ko-kr/library/ms180047.aspx

'user','dbo' 요부분은 환경에 맞도록 수정해야 함~~~..

::fn_listextendedproperty 함수 사용시 컬럼명도 같이 넣어야 해서.. 이리저리 찾아서.

@D_CodeType = 'List' 도 만들어 놨어욤^^.

========================================================

DECLARE @D_CodeType VARCHAR(12);
 DECLARE @D_TableName VARCHAR(100);
 DECLARE @D_ColumnName VARCHAR(100);
 DECLARE @D_Value VARCHAR(500);
 DECLARE @D_ColumnRefValue1 VARCHAR(100);
 DECLARE @D_ColumnREFValue2 VARCHAR(100);
 
 SET @D_CodeType = 'D';--S(C/U)/R/D/List
 SET @D_TableName = 'DSCTB_LawInfo';
 SET @D_ColumnName = 'LawDate';
 SET @D_Value = '소송시작일';
 
 SET @D_ColumnRefValue1 = null;
 SET @D_ColumnREFValue2 = null;
 
 IF(ISNULL(@D_ColumnName,'') <> '')
 BEGIN
  SET @D_ColumnRefValue1 = 'column';
  SET @D_ColumnREFValue2 = @D_ColumnName;
 END

 IF(@D_CodeType = 'S')
 BEGIN
  BEGIN TRY -- 생성개념으로, 이미 없는데 업데이트하면 에러발생~~
   exec sp_addextendedproperty 'MS_Description',@D_Value,'user','dbo', 'table',@D_TableName, @D_ColumnRefValue1, @D_ColumnREFValue2
  END TRY
  BEGIN CATCH
   exec sp_updateextendedproperty 'MS_Description',@D_Value,'user','dbo', 'table',@D_TableName, @D_ColumnRefValue1, @D_ColumnREFValue2
  END CATCH
 END
 ELSE IF(@D_CodeType = 'D')
 BEGIN
  BEGIN TRY -- 삭제 없어도 에러발생^^..
   exec sp_dropextendedproperty 'MS_Description','user','dbo', 'table',@D_TableName, @D_ColumnRefValue1, @D_ColumnREFValue2
  END TRY
  BEGIN CATCH
   SELECT '삭제항목 없음'
  END CATCH
 END
 ELSE IF(@D_CodeType = 'R')
 BEGIN -- 기본적인 조회인데.. 값을 다 넣어야 함.. 귀차니즘.
  SELECT *
  FROM ::fn_listextendedproperty(NULL, 'user', 'dbo', 'table',@D_TableName, @D_ColumnRefValue1, @D_ColumnREFValue2)
 END
 ELSE IF(@D_CodeType = 'List')
 BEGIN -- 자잔.. 테이블 명만 넣으면..해당컬럼몽땅나옴. sp_help 명령어처럼(Alt+F1) 화면같이 해돌라고 하지말고 필요하신분이 수정하삼^^.

-- 아 왠지 만들어서 Cltr+F1 예약하면 편한듯한 - -

  SELECT P.name, p.value, i.name , c.name
  FROM sys.extended_properties AS p
  INNER JOIN sys.objects AS i
  ON p.major_id = i.object_id
  LEFT OUTER join sys.syscolumns AS c
  ON p.major_id = c.id
   AND p.minor_id = c.colorder
  WHERE i.name = @D_TableName
  ORDER BY C.colorder ASC
 END

==============================

헉,.. tistory로 올라가면 탭이 공백으로 바뀌네욤^^.

Posted by 말없제이
,

SELECT
 CASE
  WHEN ISNULL(S.FieldCode, '')  = '' THEN 'ZZ'
  WHEN ISNULL(S.FieldCode, '')  = '!' THEN 'AA'
             ELSE S.FieldCode
 END            AS FieldCode,
 CASE
  WHEN ISNULL(S.FieldCode, '')  = '' THEN '전체'
  WHEN ISNULL(S.FieldCode, '')  = '!' THEN '미정'
             ELSE MAX(dbo.DSCUF_EE_GetCodeName('Field', S.FieldCode, Default, Default))
 END            AS FieldName,
 CASE
  WHEN ISNULL(S.FieldCode, '')  = '' THEN '총계'
  WHEN ISNULL(S.VendorCode, '') = '' THEN '계'
             ELSE S.VendorCode
 END            AS VendorCode,
 CASE
  WHEN ISNULL(S.FieldCode, '')  = '' THEN '총계'
  WHEN ISNULL(S.VendorCode, '') = '' THEN '계'
             ELSE MAX(S.VendorName)
 END            AS VendorName,
 SUM(S.ContractCnt )       AS ContractCnt,
 AVG(S.AvgPoint )        AS AvgPoint,
 CASE
  WHEN S.VendorCode IS NULL    THEN '9999'
             ELSE CONVERT(VARCHAR , MAX(Ranking))
 END            AS Ranking,
 MAX(S.Remark)         AS Remark
FROM
 (
 SELECT
   ISNULL(C.FieldCode, '!')          AS FieldCode,
   MAX(dbo.DSCUF_EE_GetCodeName('Field', C.FieldCode, '', ''))  AS FieldName,
   B.VendorCode             AS VendorCode,
   MAX(B.CtrtVendorNm)            AS VendorName,
   COUNT(1)              AS ContractCnt,
   AVG(A.ApprTotalPoint)           AS AvgPoint,
   RANK() OVER (
        PARTITION BY C.FieldCode
         ORDER BY AVG(A.ApprTotalPoint) DESC
       )            AS Ranking,
   ''                AS Remark
   FROM
   dbo.DSCTB_EEApprTargetContract     AS A
   INNER JOIN dbo.DSCVW_EEContractInfo   AS B
     ON
      B.ContractNum = A.ContractNum
       AND B.OrdNum  = A.OrdNum
       AND 0 = 
        (
        SELECT COUNT(1)
          FROM dbo.DSCTB_EEApprExceptContract
         WHERE 
            ContractNum = B.ContractNum
             AND OrdNum  = B.OrdNum
         )          
   LEFT  JOIN dbo.DSCTB_EEContTypeFieldInfo  AS C
     ON
      B.WorkerClsCode   = C.ContTypeCode
   WHERE
    A.ApprFinishYN  = 'Y'
     AND A.ApprReplyYN  = 'N'
   GROUP
   BY C.FieldCode, B.VendorCode
  ) AS S
 GROUP
 BY S.FieldCode, S.VendorCode WITH ROLLUP

Posted by 말없제이
,

 Sql Sever 에이전트가 먼저 서비스에 실행되도록해야함.

 위 SQL Sever 에이전트 > 새작업 > 일반 > 이름 넣음 - > 확인.

 단계 > 새로만들기 하면 아래 그림.

 이름넣고 -> 데이터베이스 설정하고 -> 명령을 넣어줌.

 일정 > 새로만들기.... 하면 아래 화면.

 이름 넣어주고 해당하는것 넣어주고 확인.

혹시 작동을 안할수도 있으니, 일정화면 스크립트 실행.

확인은 "작업 활동 모니터"로 확인.

 

Posted by 말없제이
,

출처 : http://www.sqldbatips.com/showarticle.asp?ID=78

출처 : http://withsoju.tistory.com/145

.

이리 저리 찾아보니..

구글에..

도구 > 외부도구 > SortFiles Asc... 선택하라고 하는데 --

먼가가 빠진느낌 ^^

그리하야 - -.. 찾아보니.

파일이 하나 필요했음.

일단 아래 주소로 먼저가셔서 확인해주 시고 ^^

http://www.sqldbatips.com/showarticle.asp?ID=78

.

잉 ssmssqlproj인뎅... 일경우 아래 확인.

http://withsoju.tistory.com/145

.

확인해주시고..

.

sql 솔루션으로 만든 ssmssqlproj 일경우 바로 된다는곳이.. - - 확인은 못했음.

http://social.msdn.microsoft.com/Forums/en-US/sqltools/thread/bc4ce2a6-561d-4653-bf88-a8816db8d2a7

<LogicalFolder Name="Queries" Type="0" Sorted="false">

으로 바꾸라고 하네욤..
.

그래도 안된다는 느낌이 든다.

ssmssqlproj 일경우 솔루션 닫기등할때  .ssmssln 로 저장함.

다시 열고나서 도구상자에서 정렬시키면, 소스가 바뀐머시기 재로딩물을경우 재로딩.

안물을경우 닫고 솔루션 호출하면 정렬되어있음.

 

              ->

저렇게 정렬됨. (SLQ Server 2008 - SSMS 10.0.5500.0 기준). 즉 출처되로 하면 ... 된다는거임 - -.

혹시나 저 출처들이 사라질 경우 대비 파일은 저장 시켜 둡니다.(출처에 첨부파일이 더 좋다는.. ㅋㅋ)

SortSQLFilesInProject_Source.zip 

SortSQLFilesInProject.zip

Posted by 말없제이
,