Database (11) 썸네일형 리스트형 Illegal mix of collations Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_unicode_ci,COERCIBLE) for operation 'like'다른 문자의 집합과 조회하려할때 발생하는 오류이다COLLATE utf8mb4_unicode_ci을 추가하면 조회할때 COLLATE으로 문자를 일치시킬 수 있다. SELECT t1.*, t2.username, CONVERT(t1.image USING UTF8) AS imgsrc, DENSE_RANK() OVER (ORDER BY t1.score DESC) AS rank FROM game_title t1 LEFT JOIN .. 페이징과 랭킹, Total Count 조회하기 1. 페이징LIMIT 3 OFFSET ? 을 통해 데이터 3개씩 조회하도록 페이징할 수 있다. 2. 랭킹DENSE_RANK() OVER (ORDER BY t1.score DESC) AS rank 으로 점수로 랭킹을 조회할 수 있도록 하였다.만약 동점인 점수가 있다면 같은 랭크로 조회된다 3. Total Count(SELECT @totalCount := (SELECT COUNT(id) FROM game_title WHERE publicity = 1)) AS T으로 서브쿼리를 추가하여 전체 카운트를 조회하도록 하였다. 참고로 CONVERT(t1.image USING UTF8) AS imgsrc의 경우 imgsrc가 LONGBLOB 타입으로 되어있어CONVERT( ~ USING UTF8)으로 감싸줘야한다. 만.. MyBatis 프로시저 생성하기 insert나 update를 진행할때 쿼리를 2개 이상씩 실행할때가 있어 이는 프로시저로 처리하려한다.편의를 위해 DBeaver를 연결하여 프로시저를 생성하여보겠다 프로시저 파일을 우클릭하여 create를 클릭해 생성한다. 전달받을 파라미터는 In Id int이고 아래는 실행될 쿼리이다.CREATE PROCEDURE MediaPlayDB.Delete( IN Id int)BEGIN DELETE from Table1 where id = Id; DELETE from Table2 where id = Id; DELETE from Table3 where id = Id;END 해당 쿼리를 실행하려면 CALL MediaPlayDB.Delete('1');CALL명령어로 실행할 수 있다. [centos7] MariaDB 설치 및 DBeaver연결 환경 : 네이버 클라우드에서 centos7 사용 중 1. MariaDB을 서버에 설치하고 MariaDB 접근 권한이 있는 계정을 생성한다 참고 : https://marsland.tistory.com/510 [CentOS] MariaDB 설치부터 데이터베이스 생성까지안녕하세요. CentOS 에 MariaDB 설치부터 데이터베이스 생성까지 알아보도록 하겠습니다. 1. Repo 설정 sudo vi /etc/yum.repos.d/MariaDB.repo [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.5/centos7-amd64 gpgkey=httpsmarsland.tistory.com 2. DB 연결을 할 수 있는 3306포트 방화벽을 열어준다. 참고.. MSSQL 서버 열고 연결하기 [MSSQL] SQL Server 연결 및 외부(원격) 연결 설정 (tistory.com) [MSSQL] SQL Server 연결 및 외부(원격) 연결 설정 앞 포스트에서 MSSQL SQL Server 2017 & SSMS (MSSQL Server Management Studio) 설치를 완료 했습니다. 아직 설치를 하지 않았다면 진행먼저 !! 설치 및 다운로드 : https://timeboxstory.tistory.com/9 [MSSQL].. timeboxstory.tistory.com sql server에서 TCP/IP속성에 들어가 원하는 IP주소를 활성화시키고, 1433포트을 열면된다 연결까지 끝! DELETE와 TRUNCATE 차이점 TRUNCATE은 조건절을 넣을 수 없고, 자동증가 값이 초기화된다, DELETE에 비해 트랜젝션 로그 공간을 덜 사용한다 DELETE는 조건절을 넣을 수 있고, 자동증가 값이 초기화 되지 않는다, 삭제한 행에 대해 트랜젝션 로그 항목을 기제한다 트랜잭션 트랜잭션: 하나의 처리를 여러 단계로 다루는 기능 BEGIN TRAN 시작 ROLLBACK TRAN 이전 상태로 복구 COMMIT TRAN 완료 데이터 UPDATE, DELETE 하기 전에 select해 데이터가 제대로 수정되거나 삭제된걸 미리 확인 할 수 있다 참고: [MSSQL] Delete문 사용법 & 예제(트랜잭션) (tistory.com) TRUNCATE, DROP 차이 TRUNCATE: 테이블에 존재하는 모든 레코드를 삭제하는 쿼리문이다 Truncate Table [테이블명] DROP: 테이블 자체를 삭제한다 DROP Table [테이블명] Truncate후 데이터 삽입 -> 제약조건 지워지지 않음 DROP후 select * into [COPY TABLE] FROM A -> 제약조건 지워짐 즉 Truncate은 복사할 테이블에 제약조건이 있을 때 쓰고, DROP은 제약조건 없는 테이블 복사 할 때사용한다 이전 1 2 다음