FreeTDS接続Sqlserverデータベース一括コミットデータ
FreeTDSは、SqlserverとSybaseデータベースのc/c++接続ライブラリとして機能します.
テストの過程で、一度に最大460件のデータしか提出できないことが分かったが、まだ原因が見つかっていない.
int main()
{
char szUsername[32] = "sa";
char szPassword[32] = "123456";
char szServer[32] = "172.16.3.127:1433";
char szDBName[32] = "blue";
char sql[256];
// db-library
dbinit();
//
LOGINREC *loginrec = dblogin();
DBSETLUSER(loginrec, szUsername);
DBSETLPWD(loginrec, szPassword);
DBSETLCHARSET(loginrec, "UTF-8");
DBPROCESS *dbprocess = dbopen(loginrec, szServer);//
if(dbprocess == FAIL)
{
printf("Conect to MS SQL SERVER fail, exit!
");
return -1;
}
printf("Connect to MS SQL SERVER success!
");
//
if(dbuse(dbprocess,szDBName) == FAIL)
printf("Open database failed!
");
else
printf("Open database success!
");
memset( sql, 0x00, sizeof(sql) );
sprintf( sql, "insert into dbmanage_log values('1','Jason','172.16.4.101','1','test insert','1')");
dbcmd(dbprocess, sql); //
memset( sql, 0x00, sizeof(sql) );
sprintf( sql, "insert into dbmanage_log values('2','Jason','172.16.4.101','1','test insert','1')");
dbcmd(dbprocess, sql);
memset( sql, 0x00, sizeof(sql) );
sprintf( sql, "insert into dbmanage_log values('3','Jason','172.16.4.101','1','test insert','1')");
dbcmd(dbprocess, sql);
dbsqlexec(dbprocess); //
//
dbclose(dbprocess);
dbloginfree(loginrec);
dbexit();
return 0;
}
テストの過程で、一度に最大460件のデータしか提出できないことが分かったが、まだ原因が見つかっていない.