c# - 使用 mySQL odbc 连接器从 ASP.NET 触发插入查询时,空值存储在 mySQL 表中

标签 c# mysql asp.net

花了几个小时后,我无法弄清楚为什么使用 ASP.NET 网页将空值插入到 mySQL 表中。我为此使用 odbc 连接器。下面是相同的代码。

 public int Insert(string FirstName, string LastName, int age)
{
    OdbcConnection conn = new OdbcConnection(connStr);
    conn.Open();
    OdbcCommand odcmd_Insert = new OdbcCommand("INSERT INTO webuse(firstName,lastName,age) VALUES(@param1,@param2,@param3)",conn);

    odcmd_Insert.Connection = conn;
    odcmd_Insert.CommandType = System.Data.CommandType.Text;

    try
    {

        odcmd_Insert.Parameters.Add(new OdbcParameter( "@param1", FirstName));
        odcmd_Insert.Parameters.Add(new OdbcParameter( "@param2", LastName));
        odcmd_Insert.Parameters.Add( new OdbcParameter("@param3", age));

        return odcmd_Insert.ExecuteNonQuery();


    }
    catch (OdbcException e)
    {
        throw;
    }
    finally {

        odcmd_Insert.Dispose();
        conn.Close();
        conn.Dispose();
    }

}

我已经调试了代码,一切看起来都很好,但所有列都用空值更新。请帮助我,我是 ASP.NET 的菜鸟。

最佳答案

请尝试如下所示的论证。我用过MySqlConnection。您也可以使用 ODBC 连接。

try
{
    // Connection string for a typical local MySQL installation
    string cnnString = "Server=localhost;Port=3306;Database=ci_series;Uid=root;Pwd=";

    // Create a connection object 
    MySqlConnection connection = new MySqlConnection(cnnString);

    // Create a SQL command object
    string cmdText = "INSERT INTO webuse(firstName,lastName,age) VALUES(?param1,?param2,?param3)";


    MySqlCommand cmd = new MySqlCommand(cmdText, connection);

    cmd.CommandType = CommandType.Text;
    cmd.Parameters.Add("?param1", MySqlDbType.VarChar).Value = firstName;
    cmd.Parameters.Add("?param2", MySqlDbType.VarChar).Value = lastName;
    cmd.Parameters.Add("?param3", MySqlDbType.VarChar).Value = age;

    connection.Open();

    int result = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{

}

命令应为

string cmdText = "INSERT INTO webuse(firstName,lastName,age) VALUES(?param1,?param2,?param3)";

关于c# - 使用 mySQL odbc 连接器从 ASP.NET 触发插入查询时,空值存储在 mySQL 表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24994410/

相关文章:

c# - 使用选定的 Xpath 和 for 循环删除 XML

c# - 如何通过用户名监控文件服务器上的文件访问和更改?

php - 相似搜索和语义搜索

asp.net - 从数据库中删除而不回发 - 想要为删除的消失项目设置动画

asp.net - 为 ASP.NET 输入按钮使用 CSS 按钮样式?

ASP.NET 用户登录最佳实践

c# - 使用数据源的 NUnit 数据驱动单元测试

c# - 检测Canvas上的两个控件是否发生碰撞

mysql - 从 MySQL 读取位数据类型并使用 AWS Glue 转换为 Redshift 时出现问题

mysql - 在 MySQL 中插入 & 符号