Oracle 11

[MyBatis] foreach

http://huskdoll.tistory.com/507 방법은 Map을 선언시 로 선언하고 Object에 list를 넣어주고 query 부분에서 리스트를 foreach 돌려 사용하면 됩니다. DAO 부분에서 책 정보를 가져오도록 작성1234567891011121314151617public List getBooksInfo() { Map param = new HashMap(); param.put("id", "1"); //#{id}에 셋팅 param.put("name", "victor"); //#{name}에 셋팅 List codeList = new ArrayList(); codeList.add("01"); //in 조건에 넣을 정보 codeList.add("05"); param.put("code_list"..

Database 2018.05.25

[MyBatis] #, $ 차이

2021.03.17 업데이트) # => Prepared Statement (동적) 쿼리문을 실행하기에 앞서 구문 분석, 의미 분석, 파싱 작업을 진행하여 SQL Injection 코드를 만나게 되면 오류 발생함 (SQL Injection 대비 가능) $ => Statement (정적) 쿼리 실행시마다 옵티마이저의 수행 계획 달라짐 여기서 유념해야 할 부분은 # 을 사용했을 때에는 ? 으로 치환이 되는 반면에 $ 를 사용한 케이스에서는 $ 영역에 100이라는 상수로 치환되어 쿼리를 수행하게 된다. 중요한 포인트는 101, 102, 103 과 같이 숫자가 바뀔 때마다 파싱 작업을 항상 진행해야 한다라는 것이다. 성능상에 단점이 존재한다라는 것을 알 수 있다. 변수로 인식하지 않게하기 위해서 #{param} ..

Database 2017.06.15

SQL JOIN

[DBGuide.net JOIN]http://www.dbguide.net/db.db?cmd=view&boardUid=148197&boardConfigUid=9&categoryUid=216&boardIdx=134&boardStep=1 두 개 이상의 테이블 들을 연결 또는 결합하여 데이터를 출력하는 것을 JOIN이라고 하며, JOIN은 관계형 데이터베이스의 가장 큰 장점이면서 대표적인 핵심 기능이라고 할 수 있다. 일반적인 경우 행들은 PRIMARY KEY(PK)나 FOREIGN KEY(FK) 값의 연관에 의해 JOIN이 성립된다. 하지만 어떤 경우에는 이러한 PK, FK의 관계가 없어도 논리적인 값들의 연관만으로 JOIN이 성립 가능하다. FROM 절에 여러 테이블이 나열되더라도 SQL에서 데이터를 처리할..

Database 2017.01.06

[Mybatis] resultType & resultMap

http://noritersand.tistory.com/229 http://noritersand.tistory.com/228 resultType으로 자바 클래스를 명시했을 때, 만약 두 모델, 즉 자바 클래스와 데이터 모델간 프로퍼티명이 다르면 마이바티스의 자동 매핑이 무력화될 것이다. 따라서 이 경우엔 다음처럼 둘의 이름이 일치하도록 alias를 사용하거나: 혹은 resultType을 resultMap으로 대체하는 방법을 택해야 한다: http://www.mybatis.org/mybatis-3/ko/sqlmap-xml.html MyBatis Mapper Document resultType : 이 구문에 의해 리턴되는 기대 타입의 패키지 경로를 포함한 전체 클래스명이나 별칭. collection인 경우 ..

Database 2016.11.30

SQL 문법 (수정중)

출처를 기록하지 못했습니다. mongodb & other dbhttp://haru.kafra.kr/16 SQL문은 대소문자를 구분하지 않지만 데이타는 대문자와 소문자를 구분한다. 주석을 다는 방법은 /* 주석 */ 이거나 한줄만 주석 처리를 할 경우는 문장 맨앞에 --를 붙인다.각각의 데이타베이스의 SYSOBJECTS 테이블에 해당 데이타베이스의 모든 정보가 보관되어 있다. SYSOBJECTS의 TYPE 칼럼으로 'U'=사용자 테이블, 'P'=저장 프로시저, 'K'=프라이머리 키, 'F'=포린 키, 'V'=뷰, 'C'=체크 제약등 오브젝트 이름과 정보를 알 수 있다 1. 기본 검색 1. USE 문을 사용한 데이타베이스 선택 데이타 검색 USE 데이타베이스명 2. 모든 칼럼 불러오기 SELECT * FRO..

Database 2016.10.17

[NodeJS] NodeJS 적용하기

NodeJS로 닉네임 실시간 중복확인 하기 한번 타이핑할때마다 event가 발생하는 것인지?로그인이라는 event안에서 middleware를 통하여 중복을 확인하는 것인지? oracle DB와 NodeJS 연동하기HTML에서 ajax로 Node 서버에 접근Node 서버에서 DB 서버에 접근 NodeJS 중지 Oracle 과 NodeJS Server와 연동 어려움.MySQL이나 MongoDB는 괜찮음.DB를 바꿀 것인가 생각하였으나 일정상 NodeJS를 제외하고일반 로그인을 하는게 나을 것이라 판단.

Project/MusicBlock 2016.05.03
반응형