[前][次][番号順一覧][スレッド一覧]

mysql:15374

From: Etsuo SUMIYA <Etsuo SUMIYA <sumiya-e@xxxxxxxxxx>>
Date: Thu, 19 Aug 2010 20:46:26 +0900 (LMT)
Subject: [mysql 15374] int column への2147483648

sumiyaといいます。

mysql-5.1.47-winを使用していて、mysql_stmt_prepare()を使い、データ
ベースへ書き込むアプリケーションを開発していますが、添付のプログラ
ムを実行すると、

mysql> select * from t;
+------------+
| c1         |
+------------+
| 2147483647 |
|          0 |
+------------+
2 rows in set (0.03 sec)

となり、2147483648が書き込まれずに、0になってしまいます。
mysqlコマンドでは書き込めるのですが、プログラムインタフェースから
は上の結果となります。

環境はWindows XP SP3
Visual studio 2003
を使用しております。

どなたか、情報をお持ちの方はアドバイスをお願いします。

--- テーブル ---
CREATE TABLE `t` (
  `c1` int(10) unsigned DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=sjis
--- ここまで ---

--- プログラム ---
#include "stdafx.h"
#include <config-win.h>
#include <mysql.h>

MYSQL *mysql;

int mytest();

int _tmain(int argc, _TCHAR* argv[])
{
	mytest();
	return 0;
}

int mytest()
{
	static MYSQL_BIND bind[1];
	int result;
	unsigned int stat;
	my_bool statnull = 0;
	char *insert = "INSERT INTO t (c1) values (?)";
	MYSQL_STMT *tstmt;

	MYSQL *mymysql;
	mysql = mysql_init(NULL);
	if(mysql) {
		mymysql = mysql_real_connect(mysql, "192.168.48.15", "test", "", "test", 0, NULL, CLIENT_MULTI_STATEMENTS);
	} else exit(-1);

	tstmt = mysql_stmt_init(mysql);
	result = mysql_stmt_prepare(tstmt, insert, (unsigned long)strlen(insert));
	memset(bind, 0, sizeof(bind));
	bind[0].buffer_type = MYSQL_TYPE_LONG;
	bind[0].buffer = (char *)&stat;
	bind[0].length = 0;
	bind[0].is_null = &statnull;
	result = mysql_stmt_bind_param(tstmt, bind);
	stat = 0x80000000-1;
	result = mysql_stmt_execute(tstmt);
	stat = 0x80000000;
	result = mysql_stmt_execute(tstmt);
	return(0);
}
--- ここまで ---

[前][次][番号順一覧][スレッド一覧]

->   15374 2010-08-19 20:46 [Etsuo SUMIYA <sumiya] int column への2147483648               
     15375 2010-08-19 21:50 ┗[Mikiya Okuno <mikiya]                                       
     15376 2010-08-20 08:23  ┗[Etsuo SUMIYA <sumiya]                                     
     15377 2010-08-20 22:10   ┗[SAKAI Kei <sak2@xxxx]                                   
     15378 2010-08-21 10:39    ┗[Etsuo SUMIYA <sumiya]                                 
     15379 2010-08-21 18:31     ┗[SAKAI Kei <sak2@xxxx]                               
     15381 2010-08-24 08:56      ┗["Watanabe Tomoyuki" ]