728x90

CS/sql 29

[MSSQL] 커서(Cursor) 간단한 예제로 알아보기 - 실습

[MSSQL] 커서(Cursor) 간단한 예제로 알아보기 - 실습 커서는 간단하게 말하면 데이터 집합에 대해서 한 행씩 작업을 하는 것이라고 볼 수 있습니다. 커서는 보통 update 작업에 사용합니다. 커서 관련 명령어 DECLARE : 선언 OPEN : 커서의 포인터가 질의 결과의 첫 번째 튜플을 가리키도록 설정 FETCH : 커서의 포인터가 현재의 다음 튜플을 가리키도록 설정 CLOSE : 커서 닫기 예제 다음과 같이 테스트할 테이블을 준비합니다. 해당 테이블의 age 값을 커서를 사용해 +3 씩 증가시키는 예제입니다. SQL select * from 가_test --insert into 가_test values ('홍길동', 22) --insert into 가_test values ('고길동', ..

CS/sql 2021.12.30

도커 컨테이너 MariaDB의 외부 접근 허용하기

도커 컨테이너 MariaDB의 외부 접근 허용하기 먼저 MariaDB가 설치된 도커 컨테이너로 접속합니다. $ docker exec -it [mariadb컨테이너이름] bash MariaDB 외부 접근 허용을 위한 설정 파일을 수정합니다. 기본 경로라 합니다. # vim /etc/mysql/mariadb.conf.d/50-server.cnf bind-address 의 값을 0.0.0.0 으로 수정 vi, vim 설치되어 있지 않으면 설치 # apt update # apt upgrade # apt install vim 다음은 외부 접속을 시도합니다. 필자는 오라클 클라우드에 도커 컨테이너를 실행시키고 있기 때문에 클라우드 포트 규칙을 확인하여 오픈해주었습니다.

CS/sql 2021.10.16

[MariaDB] 댓글 처리 테이블 : 외래 키에 대해 테이블 다뤄보기

[MariaDB] 댓글 처리 테이블 : 외래 키에 대해 테이블 다뤄보기 테이블 생성하기 seq_bno 값을 외래 키로 정합니다. tb_board 테이블의 seq_bno 값을 참조합니다. 다음은 SQL 쿼리문 외래 키 및 제약조건에 대한 내용을 테스트 하려고 합니다. 먼저 게시글 tb_board에 없는 seq_bno로 등록하려고 합니다. 외래 키에서는 참조할 값이 없으면 에러가 나타나겠죠. INSERT INTO tb_reply (seq_bno, reply, replyer) VALUES ('999','TEST','TEST') 역시나 외래 키 조건에 걸려서 없는 값을 참조하지 못하기 때문에 등록되지 않는 것을 볼 수 있죠. tb_board 게시판에 있는 값을 insert 하기 데이터가 들어오는 것을 확인할 수..

CS/sql 2021.07.31

[mariadb] 테이블의 select 출력 결과로 insert 하기

[mariadb] 테이블의 select 출력 결과로 insert 하기 광고 한 번의 클릭은 개발자에게 매우 큰 도움이 됩니다. Insert 하려는 대상 테이블 : A select 하는 대상 테이블 : B 위처럼 가정합니다. A와 B 테이블 구조가 같거나 칼럼의 데이터 타입이 일치하면 조건에 충족되면 B 테이블의 SELECT 한 결과를 A 테이블에 바로 INSERT 시킬 수 있습니다. SELECT 출력 결과로 INSERT 하기 INSERT INTO A (A1, A2, A3) SELECT A1, A2, A3 FROM A INSERT INTO A (A1, A2, A3) SELECT B1, B2, B3 FROM B 첫 번째 쿼리처럼, 자기 자신을 넣을 수도 있고, 두 번째 쿼리처럼 데이터 타입이 일치하면 다른 ..

CS/sql 2021.07.14

[MariaDB] MariaDB 덤프하기 (데이터베이스 옮기기)

[MariaDB] MariaDB 덤프하기 (데이터베이스 옮기기) 도움이 되셨다면 광고 한 번 클릭 부탁드립니다. 한 번의 클릭이 제게 큰 힘이 된답니다!^^ MariaDB 덤프 - 백업 데이터베이스의 위치를 아예 다른 서버로 옮기기 위해서 덤프하는 작업을 하려고 합니다. 먼저 덤프하기 위한 데이터베이스 이름을 확인합니다. 위 데이터베이스 중 MYDB를 옮겨볼 예정입니다. 덤프 명령어 $ mysqldump -u root -p [데이터베이스] > [파일].sql $ mysqldump -u root -p MYDB > MYDB.sql MYDB.sql 파일이 생성되었습니다. 새로운 위치의 데이터베이스에 넣기 위해 해당 파일을 옮기고자 하는 서버로 이동시킵니다. MariaDB 덤프 - 복구 덤프한 것을 옮기고자 하..

CS/sql 2021.07.05

[MariaDB] MariaDB 환경 변수 설정하기

[MariaDB] MariaDB 환경 변수 설정하기 MariaDB 설치 후, 설치 폴더 위치에서 실행하는 것뿐만 아니라, 다른 위치에서도 MariaDB를 실행시킬 수 있도록 설정하는 것을 환경 변수를 설정한다고 하는데요. 오늘은 MariaDB 환경 변수 설정하는 방법에 대해 알아보겠습니다. 1. 내 PC > 시스템 속성 > 고급 시스템 설정 > 환경 변수(N)... 2. 시스템 변수 > Path 선택 > 편집 선택 3. [새로 만들기] 클릭, 클릭하게 되면 아래 변수 편집창을 편집할 수 있습니다. 여기에 mariadb를 설치했던 파일의 경로를 적습니다. C:\mariadb-10.5.10-winx64\bin >>> 그리고 [확인] 버튼 클릭 명령 프롬프트를 실행시킵니다. cmd 창 실행 (윈도우 키 + R..

CS/sql 2021.07.04

[MariaDB] MariaDB zip 버전 서비스 등록하기, service registration

[MariaDB] MariaDB zip 버전 서비스 등록하기, service registration 지난번 마리아디비를 압축 버전 zip 파일을 다운로드해서 설치했습니다. zip 버전은 자동으로 service 등록이 되지는 않는 것 같더라고요. [ 작업 관리자 > 서비스 ]에서 확인해보아도 MariaDB 서비스는 찾아볼 수 없습니다. 그다음 등록된 서비스를 자주 보는 곳은 [ 내 PC > 컴퓨터 관리 > 서비스 및 응용 프로그램 > 서비스 ]에서 보는 건데, 여기에도 MariaDB 서비스는 없었습니다. 그럼 지난번에 설치했던 MariaDB 압축 버전의 bin 폴더로 다시 가서 서비스를 등록하는 작업을 해야겠죠. 아직 설치하지 않으셨다면 지난 글 ▼▼▼ 을 참고해서 설치를 진행해주세요! https://li..

CS/sql 2021.07.04

[MSSQL] SQL의 where 절에서 if문, if-else문처럼 사용하기

[MSSQL] SQL의 where 절에서 if문, if-else문처럼 사용하기 이 글은 2022.06.25에 수정되었습니다. MSSQL에서 select 쿼리를 구현할 때 where 절에서 if-else 구문의 형태로 표현하고 싶은 경우가 있습니다. PL/SQL 방식의 if 문을 사용하는 방식이 아닌 where 절에서 if-else처럼 처리하는 방법을 알아보겠습니다. SELECT WHERE절에서 if-else 처리하기 MSSQL의 select 구문에 where절에서 if-else 문을 처리할 때 어떻게 할까요? 아래 SQL 구문에서 WHERE을 확인해보겠습니다. DECLARE @NAME VARCHAR(20) = '손흥민' SELECT * FROM TABLE WHERE 1=1 AND ( ( ( @NAME =..

CS/sql 2021.06.21

[MariaDB] Windows 10에 MariaDB Zip 버전 설치하기, 압축파일로 설치하기

[MariaDB] Windows 10에 MariaDB Zip 버전 설치하기, 압축파일로 설치하기 먼저 MariaDB 공식 홈페이지에서 Windows용 MariaDB Zip 패키지 파일을 다운로드 합니다. 압축을 해제하고, 명령 프롬프트(cmd)를 관리자 권한으로 실행하여 압축이 해제된 폴더 경로 내부의 bin 폴더로 이동합니다. (아래 윈도우 기준 명령어) mariadb가 설치된 경로로 이동 > cd %mariadb가 설치된 경로%\bin mariadb 서버 실행 및 console 로그 사용 옵션 명령 > mysqld --console 현재 mariadb server가 동작하는 중이니, 다른 cmd창을 열어서 해당 경로에서 mysql 접속 명령을 입력합니다. 아래 명령어를 사용하여 접속합니다. > mar..

CS/sql 2021.06.18
728x90