본문 바로가기

카테고리30

[MS-SQL] 테이블생성, 컬럼생성, 컬럼수정, 컬럼삭제, 테이블명변경 ( Create table, Alter table, Modify, Rename ) Microsoft SQL Server Management Studio 의 디자인을 이용하여 테이블 생성하는 것과 Query 를 이용하여 테이블을 생성 , 컬럼을 수정하는 것을 함꼐 살펴보려고 한다. 디자인을 이용하면 눈에 확실히 보이고 쉬우나, 실시간으로 자주 이용되는 테이블이거나 자료가 많거나 사용양이 높은 상황에서 디자인을 이용하여 컬럼을 수정하는 것은 DB Lock 을 유도하며, 정상 처리되는 데에 시간이 많이 소요되거나, 정상 처리가 진행되지 않는 경우가 있어 쿼리로 처리하는 법도 알아두는 게 유용하다.Create Table Query 편집기로 새로운 테이블을 생성한다. CREATE TABLE TEST_TEMP( emp_id int primary key, emp_name varchar(50), e.. 2025. 1. 14.
[Excel] 문서양식 - 일정관리표, COUNTA 함수 아무래도 회사 생활에서 내 일정관리는 날 위하기도 하지만 보고하기도 좋은 형태로 한 눈에 일정이 잘 파악되며, 어떤 일을 하는 지 잘 보여지는 게 중요하지 않나 생각한다. 월별 업무 일정관리표가 필요할 때가 있다. 이 때에 해당 리스트 포맷으로 관리하면 업무가 어떤 일자에 시작되어 종료되는 지 한 눈에 깔끔하게 보이며, 나의 한 달간의 업무 스케쥴 관리에 이점이 있어서 일정이 너무 많이 몰릴 때 사용하기 좋다. [V]를 사용해도 좋고, [O]를 사용해도 좋고 어쨌든 일자별 셀에 내용을 기재하면 우측에 COUNTA 함수를 이용하여 표기된 일수를 계산할 수 있도록 처리해두었다. COUNTA입력된 셀 갯수 세기 위와 같이 =COUNTA(B5:AF5) 로 지정을 하면 지정된 범위 내에서 값이 입력된 셀의 카운트.. 2025. 1. 10.
[MS-SQL] 인덱스 단편화 조회 및 리빌드 프로그램을 운영하다보면 특정 조회 조건에서 이상하리만큼 속도 저하가 발생하는 경우들이 간혹 있다. 서버 메모리나 네트워크 등 지목할만한 원인이 없고, 조회되는 테이블조차도 특이사항이 없는데도 말이다. 이럴 때 인덱스 단편화 조회 및 인덱스 리빌드를 확인 및 진행해주면 원활하게 운영되는 경우들이 있다.  그래서 오늘은 인덱스 리빌드를 확인하고자 한다. 단편화 ( Fragmentation )기억 장치의 빈 공간 또는 자료가 여러 개의 조각으로 나뉘는 현상을 말한다. 이 현상은 기억장치의 사용 가능한 공간을 줄이거나, 읽기와 쓰기의 수행속도를 늦추는 문제점을 야기한다.SELECT TOP (50) DB_NAME() AS 'Database_Name', Object_Name(SYS_DM.OBJECT_ID) AS.. 2025. 1. 9.
[ C# ] - 작업표시줄, 타이틀바 아이콘 설정 C# 실행파일의 아이콘 설정을 위해 우선 이미지 등록을 진행합니다.프로젝트에서 우클릭하여 속성을 클릭합니다. 아래와 같이 속성창이 활성화되면 애플리케이션 - 일반 - Win32리소스 - 아이콘 항목에 찾아보기를 클릭하여 .ico 파일을 선택합니다.이렇게 선택된 파일은 프로그램 실행 시, 작업표시줄 표기 아이콘으로 설정됩니다. 위 이미지 등록 시, 아래처럼 솔루션 탐색기에서 등록된 .ico 파일을 확인할 수 있습니다. 로그인 창을 별도로 관리할 경우, 로그인창이 활성화 상태일 때 작업표시줄에 아이콘 모양은 위 설정으로 처리가 되지 않아 별도로 설정이 필요합니다. 아래와 같이 FrmLogin 의 속성에서 IconOptions 를 선택하면 해당 화면이 활성화 시 작업표시줄 아이콘을 지정할 수 있습니다. 프로그.. 2025. 1. 8.
[MS-SQL] 테이블-컬럼 정보 조회 특정 테이블에 컬럼정보를 모두 조회해야하는 경우가 있는데, 물론 디자인을 통해서 살펴볼 수도 있겠지만 테이블명, 컬럼명, 컬럼타입, 기재해둔 코멘트, 해당 컬럼에 설정된 디폴트 데이터값 등을 한번에 확인해야할 경우가 있다. 이럴 땐 아무래도 디자인을 통해서 보는 것보다는 쿼리를 이용하여 전체를 한 눈에 확인하는 게 편하기 때문에 오늘은 그 방법을 확인하고자 한다.Table 정보조회DECLARE @table_name VARCHAR(30) = '테이블명'BEGIN --Table Definiti SELECT A.Object_ID AS Object_ID, SCHEMA_NAME(SCHEMA_ID) + '.' + Lower(A.NAME) AS TABLE_NAME, A.NAME AS TB_NAME, .. 2025. 1. 1.
[MS-SQL] FOR JSON PATH - Json형식변 MS-SQL 에서는 조회되는 자료를 JSON 형태로 변환하여 표기하는 함수를 제공하고 있다. 오늘은 JSON FOR PATH에 대해서 확인하도록 하자. 단, SQL 2016 이상부터만 제공되고 있다.TEST Table&Data Create테스트 자료 생성./* 임시테이블 생성 */CREATE TABLE #TmpStudent( student_id int ,student_name nvarchar(10)) /* 임시테이블에 데이터 추가 */INSERT INTO #TmpStudent VALUES ('1', '홍길동')INSERT INTO #TmpStudent VALUES ('2', '임꺽정') FOR JSON PATH쿼리 맨 아래쪽에 FOR JSON PATH 절을 추가해서 사용.SELECT * FROM #Tm.. 2024. 10. 22.
[C#] resx 웹 표시를 제거하세요. 발생 시 처리방법. .resx 파일은 인터넷 또는 제한 영역에 있거나 파일에 웹 표시가 있으므로 처리할 수 없습니다. 이러한 파일을 처리하려면 웹 표시를 제거하세요.  빌드를 처리하려는데, 위와 같은 오류가 발생하면서 빌드가 되지 않는 경우가 있다. 이럴 땐 아래와 같은 방법으로 처리를 진행해보자. 1. .resx 파일의 경로에 가서 속성을 확인하자. 아래 이미지에서 차단 해제 부분을 체크. 위의 차단 해제만으로 바로 처리될 때도 있지만, 처리가 되지 않을수도 있다... 당황하지 말고 두번째 방법을 확인하자. 2-1. 윈도우 검색창에서 Windows PowerShell 을 검색하여 활성화하자. 2-2. Unblock-File 을 입력해보자. [ .resx 파일이 존재하는 경로로 입력하시길 바란다. ]gci -Recurse .. 2024. 10. 21.
[MS-SQL] NEWID() - 랜덤함수 MS-SQL 에서는 데이터를 무작위로 데이터를 조회하는 함수를 제공하고 있다. 오늘은 무작위 랜덤함수윈 newid() 를 확인하도록 하자.TEST Table&Data Create설명글CREATE TABLE #tmp_data( cust_id int, cust_name varchar(10),)INSERT INTO #tmp_data VALUES (1,'홍길동')INSERT INTO #tmp_data VALUES (2,'홍길동')INSERT INTO #tmp_data VALUES (3,'홍길동')INSERT INTO #tmp_data VALUES (4,'임꺽정')INSERT INTO #tmp_data VALUES (5,'임꺽정')INSERT INTO #tmp_data VALUES (6,'임꺽정')INSERT I.. 2024. 6. 25.
[MSSQL] REPLACE - 문자열 치환 함수 MS-SQL 에서 문자열 관련 함수 중 REPLACE와 REPLICATE 함수에 대해서 확인하도록 하자. 우선, REPLACE 는 문자열 치환 함수라고 부르며, 특정 문자열을 지정한 문자열로 변경한 결과를 반영한다. REPLACE문자열 치환 함수DECLARE @txt_comm nvarchar(100)SET @txt_comm = N'오늘 하루도 행복하게 화이팅!'SELECT REPLACE(@txt_comm, N'화이팅', N'활기차게') ◈ TIP @txt_comm 을 nvarchar(100) 으로 유니코드 문자로 선언하며 유니코드 문자임을 알리기 위해 텍스트 앞에 N을 붙여서 처리했다. 유니코드 :  영문자, 숫자, 특수문자 뿐만 아니라 다양한 언어들을 표현할 수 있음. 영문자를 제외한 한국어 한자 등 .. 2024. 6. 24.
[MSSQL] 특정 컬럼명이 포함된 테이블 검색 데이터 베이스에서 특정 컬럼명이 사용된 전체 테이블 리스트를 확인이 필요할 때 사용하는 쿼리를 확인하도록 하자. 특정 컬럼명이 포함된 테이블 검색검색단어 부분에 검색하고자 하는 컬럼명을 입력하면 해당 컬럼명을 사용하는 테이블 리스트 및 관련 정보를 확인할 수 있다.SELECT B.NAME AS 테이블명, A.NAME AS 컬럼명, TYPE_NAME(USER_TYPE_ID) AS 데이터타입, CONVERT(INT, MAX_LENGTH) AS 길이, B.CRDATE AS 테이블생성일FROM SYS.ALL_COLUMNS AS A INNER JOIN SYSOBJECTS AS B ON A.OBJECT_ID = B.ID AND B.XTYPE IN ('U')WHERE A.NAME LIKE '%검.. 2024. 6. 14.