这里我动态地在数据库中创建表。
用户根据自己的意愿输入名称并选择语言单选按钮。
所以问题是在执行 cmd.ExecuteNonQuery 之后,i 整数的值将从 0 变为 -1。并显示该表无法创建,但当我进入数据库时,它已经成功创建。请让我知道我哪里做错了。提前感谢!
protected void btnpaper_Click(object sender, EventArgs e)
{
try
{
string conn = ConfigurationManager.ConnectionStrings["sqlconn"].ConnectionString;
SqlConnection con = new SqlConnection(conn);
con.Open();
char[] arr = new char[] {'n','g','l','i','s','h'};
string str = "CREATE TABLE " + Label1.Text.Trim() +
txtpaperset.Text.Trim()+ rbtnEng.Text.TrimEnd(arr) +
"(" + "quesNo int NOT NULL PRIMARY KEY, " +
"question varchar(1000) NOT NULL," +
"ansA varchar(500) NOT NULL, " +
"ansB varchar(500) NOT NULL, " +
"ansC varchar(500) NOT NULL, " +
"ansD varchar(500) NOT NULL, " +
"rightAns varchar(50) NOT NULL " + ")";
SqlCommand cmd = new SqlCommand(str, con);
int i = cmd.ExecuteNonQuery();
if (i > 0)
{
lblerrormsg.Visible = true;
con.Close();
}
else
{
lblerrormsg.Text = "Table Not Created Please Try with Different Name!";
con.Close();
}
}
catch (System.Exception excep)
{
MessageBox.Show(excep.Message);
}
}
摘自 MSDN 的评论SqlCommand.ExecuteNonQuery
对于 UPDATE、INSERT 和 DELETE 语句,返回值为
受命令影响的行数。当触发器存在于
正在插入或更新的表,返回值包括数字
受插入或更新操作影响的行数和数量
受触发器影响的行数。对于所有其他类型
语句,返回值为-1。如果发生回滚,则返回
值也是-1。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)