데이빗의 도스 게임 자료실

한국어

Game Dev

SQLRETURN SQLBindParameter( 
      SQLHSTMT        StatementHandle, 
      SQLUSMALLINT    ParameterNumber, 
      SQLSMALLINT     InputOutputType, 
      SQLSMALLINT     ValueType, 
      SQLSMALLINT     ParameterType, 
      SQLULEN         ColumnSize, 
      SQLSMALLINT     DecimalDigits, 
      SQLPOINTER      ParameterValuePtr, 
      SQLLEN          BufferLength, 
      SQLLEN *        StrLen_or_IndPtr); 

 

여기에서 StrLen_or_IndPtr 가 NULL이면 ParameterValuePtr은 null로 끝나는 문자열로 간주된다.

그래서 바이너리 데이터를 DB에 복사하려고 하면 null을 만나는 지점에서 데이터가 잘려서 DB에 복사된다.

SQLLEN 형의 변수를 생성해서 데이터 길이를 넣어주고 그 포인터를 StrLen_or_IndPtr인자에 대입해줘야 원하는 결과를 얻을 수 있다.

여기서 중요한건 SQLExecute() 함수가 끝날때까지 StrLen_or_IndPtr에 넣어준 포인터가 유지되어야 한다.

그렇지 않을경우 에러를 내거나 오동작 하게된다.

 

참고로 바이너리 데이터를 위해서 ValueType은 SQL_C_BINARY ParameterType은 SQL_LONGVARBINARY 그리고 테이블의 컬럼은 varbinary로 선언해주었다.

조회 수 :
2534
등록일 :
2018.05.16
16:53:47 (*.82.136.236)
엮인글 :
게시글 주소 :
http://dosgame.yyartsworld.pe.kr/developer/44267
사진 및 파일 첨부

여기에 파일을 끌어 놓거나 왼쪽의 버튼을 클릭하세요.

파일 용량 제한 : 0MB (허용 확장자 : *.*)

0개 첨부 됨 ( / )
옵션 :
:
:
:
:
List of Articles
번호 제목 글쓴이 날짜 조회 수
48 Warning: unable to build chain to self-signed root for signer file 관리자 2024-03-26 643
47 UE4 Gradle 버전 설정 관리자 2023-05-11 1065
46 UE4 - Accept SDK License 관리자 2023-04-30 3303
45 MYSQL ODBC 일정시간 후 커넥션이 lost 된다면 관리자 2021-12-18 7933
44 MYSQL ODBC Set Max Connection 관리자 2021-10-05 42385
43 Could not determine java version from '12.0.1' 관리자 2021-07-16 29998
42 MySQL DB 백업및 복원 관리자 2020-12-02 17492
41 UE4 MacOS Generate Xcode Project 안될때 관리자 2020-08-27 22927
40 Visual C++ Release 빌드에서 디버그 하기. 관리자 2020-04-10 7927
39 바이너리를 스트링으로 변환 관리자 2019-06-04 8829
38 Reflection vector file 관리자 2019-02-28 114125
37 Provisioning Profile location 관리자 2018-07-10 22939
36 UE4 How to deploy my app on IOS device without paying the $99 Apple developer program. 관리자 2018-06-23 67754
35 C++ printf() 64bit int, hex 관리자 2018-06-12 52730
34 JNI GetMethodID, GetStaticMethodID signature example 관리자 2018-06-12 36376
33 Visual C++ - Object file created with an older compiler than other objects 관리자 2018-05-31 50666
32 소켓옵션 SO_LINGER 에 대해 관리자 2018-05-26 17178
» MSSQL ODBC Binary Data 이미지 같은 바이너리 데이터 올리기 관리자 2018-05-16 2534
30 map을 deque에 일괄 삽입 std::copy std::transform std::back_inserter 관리자 2018-05-03 23848
29 Windows C++ Mac Address 구하기 관리자 2018-04-20 32062