안녕하세요.
이것 저것 검색 해보았는데 잘 모르겠습니다.
이제껏 그럭 저럭 잘 써왔는데요..
SMS 시스템 디비가 Mysql 입니다. 여기에 sms 내용을 입력 해야 합니다.
해당 테이블을 Tool(SQLyog) 을 사용해서 검색해보면 테이블의 입력 정보들이 잘 보입니다. 물론 한글도 입력한 한글 그대로 잘 보입니다
그런데 제가 java 소스를 작성했습니다.
잘 입력되고 메세지도 잘 도착 했습니다. 그러나 메세지가 "'SMS 테스트입니다'" 가 ==> "'SMS???????" 로 나옵니다
디비를 확인해봐도 역시 "SMS??????" 입니다.
왜그런 가요? 수정 할수 있나요? 도와주세요..
--- . 디비의 캐릭터 설정 값, 버전은 확인 안되고 있습니다.
---. java 는 제 노트북에서 실행하였습니다.
----. 기존에 쓰시던 분들은 시스템내에서 (unix) 바로 mysql 명령어 호출해서(shell 을 만들어서리) 값을 입력한다고 합니다.
(
예)
>mysql -h smssvr -u sms -psms sms
insert into sms
(sm_indate,sm_sdmbno,sm_rvmbno,sm_msg,sm_firstck,sm_status,sm_errcnt)
values(now(),'$v_admtel','0260002709','$hostname:$sms_msg','0','0','0');\n")
)
----------------------------------------------------------------------
import java.sql.*;
public class Test
{
public static void main( String args[] )
{
Connection connection = null;
Statement stmt = null;
try
{
Class.forName( "org.gjt.mm.mysql.Driver").newInstance();
connection = DriverManager.getConnection( "jdbc:mysql://xxx.xxx.xxx.xxx/sms_test", "test", "test" );
try{
stmt = connection.createStatement();
String SQL = "insert into sms (sm_indate,sm_sdmbno,sm_rvmbno,sm_msg,sm_firstck,sm_status,sm_errcnt) ";
SQL = SQL + " values(now(),'017xxxxxx','0212345678','SMS 테스트입니다','0','0','0') ";
stmt.executeUpdate(SQL);
System.out.println( "Success Message Insert " );
}
catch(Exception e){
e.printStackTrace();
}
connection.close();
}
catch( Exception e )
{
System.out.println( "error------->>>>>" + e );
}
}
}
----------------------------------------------------------------------- |