• POCO 라이브러리로 MYSQL Query시에 “unknown field type” 오류

    원인은..  POCO에서 MYSQL의 TIMESTAMP 타입을 지원 하지 않아서 생긴 문제.

    이를 해결 하기 위해서 POCO라이브러리 소스를 아래와 같이 수정 한 후에 재 컴파일 해준다.

        POCO 소스 폴더에서    Data/MySQL/src/ResultMetadata.cpp 의 내용을 아래와 같이 수정 
    
    std::size_t fieldSize(const MYSQL_FIELD& field)
        /// Convert field MySQL-type and field MySQL-length to actual field length
    {
        ...
    
        case MYSQL_TYPE_DATE:
        case MYSQL_TYPE_TIME:
        case MYSQL_TYPE_DATETIME:
        case MYSQL_TYPE_TIMESTAMP: // <-- add this line
            return sizeof(MYSQL_TIME);
    
        ...
    
    }   
    
    
    Poco::Data::MetaColumn::ColumnDataType fieldType(const MYSQL_FIELD& field)
        /// Convert field MySQL-type to Poco-type   
    {
        ...
    
        case MYSQL_TYPE_DATETIME:
        case MYSQL_TYPE_TIMESTAMP: // <-- add this line
            return Poco::Data::MetaColumn::FDT_TIMESTAMP;
    
        ...
    
    }   

  • c++ how to handling to arguments

    #include <stdio.h>
    #include <stdlib.h>  // exit()

    int main(int argc, char* argv[]) {

    if (argc == 1) {
    fputs(“Error no inputs..\n”, stderr);
    exit(1);
    }

    // print options count
    printf(“input count is  %d \n\n”, argc – 1);

    // print input arguments
    for (int i = 1; i < argc; i++)
    printf(“argv[%d] = %s\n”, i, argv[i]);

    return 0;
    }


  • c++ key input

    #include <iostream>
    using std::cout;
    using std::cin;
    
    int main()
    {
      char thing;
    
      cin >> thing;
      if (thing == 'a')
        cout << "You pressed 'a'!\n";
      else
        cout << "You pressed not-'a': " << thing << "\n";
      return 0;
    }

  • JQuery로 Checkbox check여부 확인 및 Label 활용 방법.

    • Label로 묶어 주면 check button이 아니라 글자를 눌러도 check button 누르는 것 처럼 된다.

           <label><input type='checkbox' id='check_all' class='input_check' /> <b>Check me</b></label>

    • Checked 확인
      if ( true ==  $(“#check_all”).is(“:checked”) )
      {
      alert ( “checked” );
      } else
      {
      alert( ” un checked”);
      }
    • Check/ uncheck 처리
      $(“#check_all”).prop(“checked”, true );
      $(“#check_all”).prop(“checked”, false );
    • Exsample
      <label><input type='checkbox' id='check_all' class='input_check' /> <b>전체선택</b></label>
      <ul class='select_subject'>
      <label><input type='checkbox' class='input_check' name='class[1]' value='1' /> <b>1</b></label>
      <label><input type='checkbox' class='input_check' name='class[2]' value='2' /> <b>2</b></label>

      </ul>

       

      <p>$(function(){
          $("#check_all").click(function(){
              var chk = $(this).is(":checked");//.attr('checked');
              if(chk) $(".select_subject input").prop('checked', true);
              else  $(".select_subject input").prop('checked', false);
          });
      });
      </p>

     


  • JQuery with Bootstrap

    http://maczniak.github.io/bootstrap/javascript.html

     

    and

     

    Collapse navigator

     

    http://zetawiki.com/wiki/부트스트랩_내비게이션바_자동접기_navbar-collapse

     

    개요[편집]

    Collapsing The Navigation Bar, navbar-collapse
    부트스트랩 네비게이션바 자동접기

    예시[편집]

    • 화면너비가 넓으면 navbar-collapse이 표시되고, navbar-toggle은 숨겨짐
    • 화면너비가 작으면 navbar-collapse은 숨겨지고, navbar-toggle은 표시됨
    대신 버튼을 누르면 세로 드롭다운 형식으로 나타남
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/latest/css/bootstrap.min.css">
    <script src="//code.jquery.com/jquery.min.js"></script>
    <script src="//maxcdn.bootstrapcdn.com/bootstrap/latest/js/bootstrap.min.js"></script>
     
    <nav class="navbar navbar-default">
      <div class="container-fluid">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span> 
          </button>
          <a class="navbar-brand" href="#">제타위키</a>
        </div>
        <div class="collapse navbar-collapse" id="myNavbar">
          <ul class="nav navbar-nav">
            <li class="active"><a href="#"></a></li>
            <li><a href="#">메뉴1</a></li>
            <li><a href="#">메뉴2</a></li> 
            <li><a href="#">메뉴3</a></li> 
          </ul>
          <ul class="nav navbar-nav navbar-right">
            <li><a href="#">회원가입</a></li>
            <li><a href="#">로그인</a></li>
          </ul>
        </div>
      </div>
    </nav>
    

    같이 보기[편집]

    참고 자료[편집]


  • [Javascipt] ReplaceAll 구현하기..

    function replaceAll(str, searchStr, replaceStr) {

        return str.split(searchStr).join(replaceStr);
    }

     

    str : 문자열 대체를 처리할 원 문자열

    targetStr : 대체하기 원하는 문자(열) – 바꿀 문자

    replaceStr : 대체될 문자(열) – 바뀌어질 문자

     

     

    * 동작 원리

    split 함수를 통해 문자열 str을 searchStr(구분자)을 기준으로 분리한다.

    이 때, 구분자는 모두 제거되며, 구분자를 기준으로 분리된 문자열들이 배열로 저장된다.

    배열로 나온 결과를 다시 join 함수를 사용하여 searchStr(연결자)로 연결한다.

    즉, replaceAll함수는 str문자열을 구분자(targetStr)로 한번 분리[split]하였다가 연결자(replaceStr)를 통해 다시 연결(join)된 결과 문자열을 리턴한다.


  • Mysql dynamic query in stored procedure

    CREATE PROCEDURE `test1`(IN tab_name VARCHAR(40),IN w_team VARCHAR(40))
    BEGIN
    SET @t1 =CONCAT("SELECT * FROM ",tab_name," where team='",w_team,"'");
     PREPARE stmt3 FROM @t1;
     EXECUTE stmt3;
     DEALLOCATE PREPARE stmt3;
    END
    
    or 
    
    
    
    CREATE PROCEDURE `test1`( IN tab_name VARCHAR(40), IN w_team VARCHAR(40) )
    BEGIN
      SET @t1 = CONCAT( 'SELECT * FROM ', tab_name, ' where team = ?' ); -- <-- placeholder
      SET @w_team := w_team;
    
      PREPARE stmt3 FROM @t1;
      EXECUTE stmt3 USING @w_team; -- <-- input for placeholder
      DEALLOCATE PREPARE stmt3;
    END;
    

  • POCO 사용할때 “error C3861: ‘CreateEvent’ : identifier not found”. 오류 발생.

    POCO 라이브러리 사용하면서 CreateEvent 함수를 사용하면

    “error C3861: ‘CreateEvent’ : identifier not found”.   이런 오류가 발생 함.

     

    해결책은

     

    Either directly in your code:
    #define POCO_NO_UNWINDOWS

    or as a compiler flag:
    /D POCO_NO_UNWINDOWS

    or in CMake:
    add_definitions("/D POCO_NO_UNWINDOWS")

     

    이렇게 처리 하면.. 문제 없이 컴파일 됨.

     

     

    Referer Link : https://forum.openframeworks.cc/t/createevent-for-threading-in-windows/10516/3

    fin.