본문 바로가기

Lecture/Mysql9

MySQL, MariaDB에서 글자가 깨질 때 (한자, 특수문자, 기호) 인코딩 문제 UTF-8에는 1Byte와 2Byte 3Byte 4Byte 등의 다양한 종류가 있는데 characterset이 utf8_로 시작하는 것으로 지정되어 있다면 (예: utf8_general_ci 등) 4Byte 문자를 표기하지 못해서 깨져 보이거나 글자 입력이 안 됩니다. 테이블과 컬럼의 collation을 utf8mb4_로 시작하는 것으로 바꾸고, DB 접속시에 set names utf8mb4 쿼리를 보내고 나서 작업을 하면 4바이트 utf-8 문자도 쓸 수 있습니다. 2015. 2. 17.
[스크랩] 데이터베이스 별 드라이버 및 커넥터 정보 1. Oracle Ddriver [oracle.jdbc.driver.OracleDriver] URL [jdbc:oracle:thin:@localhost:1521:DBNAME] 2. Sybase Ddriver [com.sybase.jdbc2.jdbc.SybDriver] URL [jdbc:sybase:Tds:localhost:5001/DBNAME] * JDBC드라이버 : jTDS2.jar 3. MS-SQL Driver [com.microsoft.sqlserver.jdbc.SQLServerDriver] URL [jdbc:sqlserver://localhost:1433;DatabaseName=DBNAME] * JDBC드라이버 : sqljdbc.jar 혹은 sqljdbc4.jar (MS-SQL 2008까지 지원).. 2015. 2. 11.
[Mysql] insert시 한글깨짐 해결 Mysql 5.6 버전기준 현상 1. 한글이나 한자를 입력하면 테이블상에서 데이터가 깨져보인다.2. WAS LOG에서는 정상적으로 문자가 출력되지만, DB에 들어간 데이터를 확인하면 ??와 같이 깨져서 들어간다. 이유1. Mysql 기본 설치시 캐릭터셋은 Default로 UTF8로 지정되어 있지 않다. 2. 캐릭터셋을 Workbench에서 강제로 바꿔도 바뀌지 않는다. 해결 1. Mysql의 기본 CharacterSet을 utf8로 변경>/etc/my.cnf 를 아래 내용을 추가하여 charset 을 변경함 > 이후 생성되는 테이블에 적용됨?123456789101112131415[mysql]default-character-set = utf8 [client]default-character-set = utf.. 2014. 8. 5.
[스크랩] mysql stored procedure delimiter $$ DROP FUNCTION IF EXISTS dbname.string_print$$ CREATE FUNCTION dbname.string_print( str VARCHAR(20) ) RETURNS VARCHAR(20) BEGIN DECLARE copy_str VARCHAR(20); SET copy_str = str; RETURN copy_str; END $$ delimiter ; SELECT dbname.string_print('Hello world'); delimiter $$ DROP PROCEDURE IF EXISTS dbname.string_print$$ CREATE PROCEDURE dbname.string_print( str VARCHAR(20) ) BEGIN DECLARE.. 2014. 2. 4.