public int Insert(string id, string msid, string deptid, string postid,int age, string name, string sex, string phone, Byte[] photo, string vcomment)
        {
            string sconn = dbService.GetScon();
            OdbcConnection conn = new OdbcConnection(sconn);
             
            string sql = "insert into STAFFINFO(STAFF_FNBR,STAFFNAME,MSFNBR,SEX,DEPARTMENTS,POSTFNBR,AGE,PHONE,PHOTO,vComment) values"
               + "(?id,?name,?msid,?sex,?deptid,?postid,?age,?phone,?photo,?comment)";
             OdbcCommand cmd = new OdbcCommand(sql, conn);
            cmd.Parameters.Add("?id",OdbcType.VarChar).Value=id;
            cmd.Parameters.Add("@msid", OdbcType.VarChar).Value = msid;
            cmd.Parameters.Add("@deptid", OdbcType.VarChar).Value = deptid;
            cmd.Parameters.Add("@postid", OdbcType.VarChar).Value = postid;
            cmd.Parameters.Add("@age", OdbcType.Int).Value = age;
            cmd.Parameters.Add("@name", OdbcType.VarChar).Value = name;
            cmd.Parameters.Add("@sex", OdbcType.VarChar).Value = sex;
            cmd.Parameters.Add("@phone", OdbcType.VarChar).Value = phone;
            if (photo == null)
            {
                cmd.Parameters.Add("@photo", OdbcType.VarBinary).Value = DBNull.Value;
            }
            else
            {
                cmd.Parameters.Add("@photo", OdbcType.VarBinary).Value = photo;
            }
            cmd.Parameters.Add("@comment", OdbcType.VarChar).Value = vcomment;
            try
            {
                conn.Open();
                int num = cmd.ExecuteNonQuery();
                return num;
            }
            catch (Exception ex)
            {
                return 0;
            }
            finally
            {
                conn.Close();
                conn.Dispose();
            }
        }麻烦指出哪里有问题啊,我这刚刚接触mysql

解决方案 »

  1.   

    贴错了,日  public int Insert(string id, string msid, string deptid, string postid,int age, string name, string sex, string phone, Byte[] photo, string vcomment)
            {
                string sconn = dbService.GetScon();
                OdbcConnection conn = new OdbcConnection(sconn);
                 
                string sql = "insert into STAFFINFO(STAFF_FNBR,STAFFNAME,MSFNBR,SEX,DEPARTMENTS,POSTFNBR,AGE,PHONE,PHOTO,vComment) values"
                   + "(?id,?name,?msid,?sex,?deptid,?postid,?age,?phone,?photo,?comment)";
                 OdbcCommand cmd = new OdbcCommand(sql, conn);
                cmd.Parameters.Add("?id",OdbcType.VarChar).Value=id;
                cmd.Parameters.Add("?msid", OdbcType.VarChar).Value = msid;
                cmd.Parameters.Add("?deptid", OdbcType.VarChar).Value = deptid;
                cmd.Parameters.Add("?postid", OdbcType.VarChar).Value = postid;
                cmd.Parameters.Add("?age", OdbcType.Int).Value = age;
                cmd.Parameters.Add("?name", OdbcType.VarChar).Value = name;
                cmd.Parameters.Add("?sex", OdbcType.VarChar).Value = sex;
                cmd.Parameters.Add("?phone", OdbcType.VarChar).Value = phone;
                if (photo == null)
                {
                    cmd.Parameters.Add("?photo", OdbcType.VarBinary).Value = DBNull.Value;
                }
                else
                {
                    cmd.Parameters.Add("?photo", OdbcType.VarBinary).Value = photo;
                }
                cmd.Parameters.Add("?comment", OdbcType.VarChar).Value = vcomment;
                try
                {
                    conn.Open();
                    int num = cmd.ExecuteNonQuery();
                    return num;
                }
                catch (Exception ex)
                {
                    return 0;
                }
                finally
                {
                    conn.Close();
                    conn.Dispose();
                }
            }
      

  2.   

    打印出来sql语句看看能不能执行
      

  3.   

    找到原因了,ODBC不支持‘?参数名’这样,果断改用MySqlConnection访问了