asp.net 向MySql插入数据 显示为null

zsyok 2011-02-15 09:28:44
id 递增了。其它字段为null
...全文
116 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
高山 2011-02-16
  • 打赏
  • 举报
回复
楼主的参数没弄对吧..

cmd.Parameters.Add("@usclass", MySqlDbType.VarChar,10).Value = "sdf";

这么写竟然不报错?
t_j_c 2011-02-16
  • 打赏
  • 举报
回复
明显参数的值
没传入进去嘛
zsyok 2011-02-15
  • 打赏
  • 举报
回复

string sql = "INSERT INTO student (`usname`,`usage`,`usclass`)" +
"VALUES('kjkl', 88, 'lkl') ";

MySqlCommand cmd = new MySqlCommand();
cmd.Connection = con;
cmd.CommandText = sql;
Response.Write( cmd.ExecuteNonQuery());

//这样就能插入。我晕。。问题出在那儿?
zsyok 2011-02-15
  • 打赏
  • 举报
回复
MySqlConnection con = new MySqlConnection("server=localhost;uid=xx;password=xx;database=xx");
con.Open();


string sql = "INSERT INTO student (`usname`,`usage`,`usclass`)" +
"VALUES(@usname, @usage, @usclass) ";

MySqlCommand cmd = new MySqlCommand();
cmd.Connection = con;
cmd.CommandText = sql;
cmd.Parameters.Add("@usname",MySqlDbType.VarChar,10).Value = "sdf";
cmd.Parameters["@usname"].Direction = ParameterDirection.Input;

cmd.Parameters.Add("@usage", MySqlDbType.Int32,10).Value =34;
cmd.Parameters["@usage"].Direction = ParameterDirection.Input;

cmd.Parameters.Add("@usclass", MySqlDbType.VarChar,10).Value = "sdf";
cmd.Parameters["@usclass"].Direction = ParameterDirection.Input;
Response.Write( cmd.ExecuteNonQuery());

简化
zsyok 2011-02-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyq11 的回复:]
贴出语句看看
[/Quote]

public int ADD_ExecuteNonQuery(MODEL.Student st)
{
StringBuilder builder = new StringBuilder();
builder.Append("(");
builder.Append("`usname`,`usage`,`usclass`)");
builder.Append(" values (");
builder.Append("@usname,@usage,@usclass)");
DbParameter[] cmdParms = { mydb.CreateInDbParameter("@usname", DbType.String, st.Usname), mydb.CreateInDbParameter("@usage", DbType.Int32, st.Usage), mydb.CreateInDbParameter("@usclass", DbType.String, st.Usclass) };
return mydb.ADD_ExecuteNonQuery(tablename, builder.ToString(), cmdParms);
}
----------------
public DbParameter CreateDbParameter(string paraName, DbType dbType, int size, object value, ParameterDirection direction)
{
MySqlParameter parameter = new MySqlParameter();
parameter.ParameterName = paraName;
if (size != 0)
{
parameter.Size = size;
}
parameter.DbType = dbType;
if (value == null)
{
parameter.Value = DBNull.Value;
}
else
{
parameter.Value = value;
}
parameter.Direction = direction;
return parameter;
}
--------------
foreach (MySqlParameter p in cmdParms)
{
p.ParameterName = p.ParameterName.Replace("?", "@").Replace(":", "@");
cmd.Parameters.Add(p);
}

---------------------
public int ADD_ExecuteNonQuery(string tablename, string fieldsValues, DbParameter[] cmdParms)
{
StringBuilder builder = new StringBuilder();
builder.Append(string.Format("insert into {0} {1}", tablename, fieldsValues));
return this.ExecuteNonQuery(CommandType.Text, builder.ToString(), cmdParms);
}

好多,,,就贴重点
wuyq11 2011-02-15
  • 打赏
  • 举报
回复
贴出语句看看
正在加载昵称 2011-02-15
  • 打赏
  • 举报
回复
SQL 语句??

62,072

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧