#include <winsock.h>
#include <mysql.h>
#include <stdio.h>
#include <stdlib.h>int main (int agrc,char * argc[])
{
MYSQL mysql,*sock;
char const *pszDomain = "wissip.com";
char const *pszUsername = "Kerry1";
char const *pszPassword = "123456";
unsigned int uUserId = 2;
char const *pszRealName = "flaght";
char szSql[256] =""; mysql_init(&mysql); if (!(sock = mysql_real_connect(&mysql,"localhost","root","123456","Mail",0,NULL,0)))
{
fprintf(stderr,"the database initialize failed :%s",mysql_error(&mysql));
}
sprintf(szSql,"%d,\'%s\',\'%s\',\'%s\',\'%s\',\'U\'",uUserId,pszDomain,pszUsername,pszPassword,pszRealName);//id,域名,用户名,密码,真名,属性
printf("%s",szSql); if (mysql_query(sock,"insert into mailusers(Userid,Domain,Username,Password,Realname,Att) VALUES(szsql)"))
{
fprintf(stderr,"\nCreate User is Failed:%s",mysql_error(sock));
}
return (0);
}这是我的演示程序 但是运行时候就出出现:Create User is Failed:Column count doesn't match value count at row 1;
这是怎么回事?
#include <mysql.h>
#include <stdio.h>
#include <stdlib.h>int main (int agrc,char * argc[])
{
MYSQL mysql,*sock;
char const *pszDomain = "wissip.com";
char const *pszUsername = "Kerry1";
char const *pszPassword = "123456";
unsigned int uUserId = 2;
char const *pszRealName = "flaght";
char szSql[256] =""; mysql_init(&mysql); if (!(sock = mysql_real_connect(&mysql,"localhost","root","123456","Mail",0,NULL,0)))
{
fprintf(stderr,"the database initialize failed :%s",mysql_error(&mysql));
}
sprintf(szSql,"%d,\'%s\',\'%s\',\'%s\',\'%s\',\'U\'",uUserId,pszDomain,pszUsername,pszPassword,pszRealName);//id,域名,用户名,密码,真名,属性
printf("%s",szSql); if (mysql_query(sock,"insert into mailusers(Userid,Domain,Username,Password,Realname,Att) VALUES(szsql)"))
{
fprintf(stderr,"\nCreate User is Failed:%s",mysql_error(sock));
}
return (0);
}这是我的演示程序 但是运行时候就出出现:Create User is Failed:Column count doesn't match value count at row 1;
这是怎么回事?
"insert into mailusers (userid,domain,username,password,realname,att) "
"VALUES(%d,\'%s\',\'%s\',\'%s\',\'%s\',\'U\');",
uUserId,pszDomain,pszUsername,pszPassword,pszRealName);
fprintf(stderr, "\n%s\n",szSql); if ( mysql_query(sock, szSql) ) {
fprintf(stderr,"\nCreate User is Failed:%s",mysql_error(sock));
} 1, mysql_query() 函数中szSql要带";"
2. sql语句最好写成一条.