본문 바로가기
반응형

IT/MSSQL170

[MSSQL] 뷰(View) 테이블 생성방법 오늘은 원하는 결과를 가공해서 보여주기 위해 사용하는 가상의 뷰 테이블 생성 방법에 대해서 알아보겠습니다. VEIW 테이블 생성 문법 CREATE VIEW [뷰명] AS SELECT [컬럼명] FROM [테이블명] WHERE [조건절] VEIW 테이블 생성 예제 BEBE 테이블의 정보를 이용해서 age가 3이하인 V_BEBE 뷰 테이블을 생성합니다. CREATE VIEW V_BEBE AS SELECT * FROM BEBE WHERE age 2021. 4. 12.
[MSSQL] View 권한 부여 (테이블 select) MSSQL에서 테이블의 정보들을 가공해서 VIew 테이블을 만들어 두는 경우가 있습니다. 오늘은 이 View 테이블에 읽기 권한인 SELECT 권한만 사용자에게 부여하는 방법에 대해서 알아보겠습니다. 1. SSMS를 통해서 MSSQL 데이터베이스에 접속합니다. 2. [보안] > [로그인]에서 마우스 우 클릭으로 [새 로그인]을 클릭합니다. 3. 일반 탭에서 SQL Server 인증을 체크하고 로그인 이름과 암호를 입력합니다. 4. 사용자 매핑 탭에서 생성하는 신규 계정인 test가 사용할 데이터베이스를 체크합니다. 이후 확인을 눌러서 첫 번째 설정을 종료합니다. 5. 특정 권한( View 테이블 Select 권한)만 주기 위한 설정을 진행하겠습니다. AdventureWorks2016 데이터베이스를 열어서.. 2021. 4. 12.
[MSSQL] BEGIN TRY, BEGIN CATCH 트랜젝션 오류 처리 이번 시간에는 MSSQL BEGIN TRY, BEGIN CATCH 사용법에 대해서 알아보겠습니다. BEGIN TRY, BEGIN CATCH 문은 BEGIN TRY 속에 있는 쿼리의 결과 값이 오류가 발생하면 BEGIN CATCH 로 보내서 해당 쿼리를 실행하게 하는 구문입니다. (보통은 원하는 결과가 아니면 BEGIN CATCH 에서 오류로 표기하기 위해서 사용합니다.) 사용법 --문법 BEGIN TRY { sql_statement | statement_block } END TRY BEGIN CATCH [ { sql_statement | statement_block } ] END CATCH sql_statement : Transact-SQL 문입니다. statement_block : 일괄 처리되거나 BE.. 2021. 4. 9.
GenericJDBCException 오류 원인 (org.hibernate.exception.) 웹페이지 로그인 화면은 열리는데 아이디와 패스워드를 입력하고 로그인 버튼을 눌러 진행하면 500 에러가 나타나는 경우가 있습니다. 웹페이지 오류내용 HTTP Status 500 - Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.GenericJDBCException: Could not open connection 오류 원인 해당 오류 메시지의 원인은 DB와 연결이 되지 않는 경우 발생합니다. 그러니까 WAS 서버와 DB서버의 연결 부분을 확인해야 합니다. WAS 서버에서 데이터베이스 서버로 커넥션이 되는지 확인해보세요. MSSQL DB 기본 포트 : 1433 ORACLE DB 기본 포트.. 2021. 4. 9.
[MSSQL] 데이터베이스 튜닝 방법 (엔진 튜닝 관리자 사용) 데이터베이스를 튜닝하기 위해서는 여러 가지 방면에서 분석이 필요합니다. 오늘은 SQL을 분석하는 시간과 노력을 어느정도 덜어줄 '데이터베이스 엔진 튜닝 관리자'를 이용한 SQL 튜닝 방법에 대해서 알아보겠습니다. 사전 준비 사항 데이터베이스 튜닝 관리자를 사용하기 위해서는 3가지의 사전 준비사항이 필요합니다. 각각의 방법에 대해서는 다음의 포스팅들을 참조해 주시기 바랍니다. 1. SQL Server Management Studio(SSMS) 설치 SSMS 버전은 2016 이상만 받으면 문제없습니다. [MSSQL] SSMS 다운로드 & 설치 방법 (SQL Server Management Studio) SQL Server 데이터베이스에 접속하기 위해서는 SSMS(SQL Server Management Stu.. 2021. 4. 7.
[MSSQL] AdventureWorks2016 샘플(예제) 데이터베이스 다운로드 테스트를 위한 데이터베이스를 만들고 데이터를 넣는 작업은 귀찮고 힘든 작업입니다. 오늘은 이런 문제를 해결해 주는 데이터베이스 샘플(예제)을 다운로드하는 방법에 대해서 알아보겠습니다. 예제 데이터베이스 다운로드 다음의 링크로 접속해서 OLTP 목록에 AdventureWorks2016를 클릭해서 데이터베이스를 다운로드하시면 됩니다. (자신의 SQL 버전과 동일한 버전을 설치해야 복원이 가능하니 맞는 버전을 다운로드 받으세요 SQL 버전 확인은 select @@version으로 확인이 가능합니다.) https://docs.microsoft.com/ko-kr/sql/samples/adventureworks-install-configure?view=sql-server-ver15&tabs=ssms Adventur.. 2021. 4. 6.
[MSSQL] SQL Server 2019 Developer Edition 다운로드 및 설치 방법 SQL Server 2019 Developer는 비 프로덕션 환경에서 개발 및 테스트 데이터베이스로 사용하도록 라이선스가 제공됩니다. 모든 기능을 사용할 수 있는 무료 버전입니다. 그리고 데이터 베이스 튜닝 관리자를 사용하기 위해서는 선행작업으로 SQL Server 2019 Developer를 설치해야 합니다. 오늘은 SQL Server 2019 Developer 다운로드 및 설치 방법에 대해서 알아보겠습니다. 프로그램 다운로드 다음의 링크를 확인해서 SQL Server 2019 Developer를 다운로드합니다. https://www.microsoft.com/ko-kr/sql-server/sql-server-downloads 다운로드가 완료되면 "SQL2019-SSEI-Dev" 파일을 확인할 수 있습니.. 2021. 4. 6.
[MSSQL] SELECT(테이블 조회,읽기) 권한만 부여하여 계정 생성 MSSQL 데이터베이스 읽기 권한인 SELECT 권한만 유저에게 부여하고 나머지 권한인 추가, 수정, 삭제(insert, update, delete) 권한은 주지 않는 방법에 대해서 알아보겠습니다. 신규 계정 생성 1. 디비 관리 툴인 SSMS를 실행합니다. 2. 좌측 개체 탐색기에서 [보안]에 마우스 우클릭 후 [새로 만들기] - [로그인]를 선택합니다. 3. 계정 만들기 창에서는 다음과 같은 설정을 해주도록 합시다. [일반] 로그인을 입력하고, 하단에 SQL SERVER 인증(S)을 체크합니다. 이후 계정의 암호를 입력합니다. [서버 역할] 이 부분은 public 만 체크되어있습니다. 그대로 놔두도록 합시다. [사용자 매핑] SELECT 권한을 부여할 데이터베이스를 선택합니다. 매핑에 원하는 데이터베.. 2021. 4. 6.
[MSSQL] 복합 인덱스 성능 테스트 오늘은 인덱스가 있는 테이블과 없는 테이블의 실행계획 확인해서 성능을 비교해보고 복합 인덱스를 사용해서 추가적인 성능 테스트도 해보도록 하겠습니다. 인덱스 테스트 사전 준비 테이블 생성 데이터를 넣을 EMP 테이블을 생성하도록 하겠습니다. CREATE TABLE EMP ( empno varchar(10), empday varchar(8) ) 데이터 삽입 테스트를 위한 데이터 31,966개를 넣어보겠습니다. insert into emp values ('30001','43831'); insert into emp values ('29999','43831'); insert into emp values ('30002','43832'); insert into emp values ('29998','43830'); i.. 2021. 3. 26.
[MSSQL] 트리거(Trigger) 생성 3가지 유형(UPDATE) MSSQL에는 테이블에 이벤트가 생겼을 경우 자동으로 데이터를 입력 또는 삭제해주는 트리거(Trigger)라는 기능이 있습니다. 오늘은 이 편리한 기능인 트리거 UPDATE 기능에 대해서 알아보겠습니다. 테이블 생성 트리거 사용을 위해 테이블이 2개 생성합니다. TRG : UPDATE 사용으로 테이터 갱신 TRG_DEL : TRG 테이블에 UPDATE 되면 자동으로 데이터 업데이트됨 create table TRG ( name varchar(100) ) create table TRG_UDT ( name varchar(100) ) 트리거 생성 TRG 라는 테이블의 name 칼럼에 이름 업데이트되면 TRG_UDT 테이블의 name 컬럼에 이름이 업데이트한 문자로 변경되는 트리거를 생성합니다. (UPDATE의 .. 2021. 3. 25.
반응형