love2j0218
2014-05-28 15:04
采纳率: 0%
浏览 1.9k

sql语句删除一条记录有问题,毕业设计帮帮忙,能帮帮我吗?

enter code here

DB db = new DB();
string UserName = this.txtUserName.Text;
string PassWord = db.GetMD5(this.txtPwd.Text.ToString());//MD5加密
string Code = this.txtCode.Text;
string cmdstr = "insert into tb_User(UserName,PassWord,Code) values('" + UserName + "','" + PassWord + "','"+ Code + "')";
string instr = "delete from tb_Code where Code='" + Code + "'";
try
{
reValue = db.sqlEx(cmdstr+"union "+instr);

                if (reValue == 1)
                {
                    Response.Write("<script>alert('注册成功!');</script>");

                    Clear();//清空文本框

                }
                else if (reValue == 0)
                {
                    Response.Write("<script>alert('注册失败!');</script>");
                }
            }
            catch (Exception ee)
            {
                Response.Write("<script>alert('注册失败!');</script>");
            }
        } 

加粗的地方有问题。我把加粗那段语句还有相关语句去了,运行效果正常,但是,tb_Code 那张表该条信息还在。。我想弄一个注册页面:用户输入 用户名,密码,邀请码。注册内容保存到tb_User里。然后,将tb_Code里的相应邀请码删除。但是,加粗那段语句有问题,我不知怎么解决。求大神帮忙

tb_Code表 内包括 CodeID (int),Code(nvchar(50)),UnUsed(bit);
tb_User表 内包括 UserID(int),UserName(nvchar(20)),PassWord(nvchar(30)),
Code(nvchar(50))

tb_Code 调用没有问题,我有另外一个代码运行
string str1 = "select Code from tb_Code where Code ='" + this.txtCode.Text + "'";
运行正常。。求大神为我指点啊。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 古月大师 2014-05-29 10:41

    db.sqlEx(cmdstr+"union "+instr)
    这样拼出的语句数据库是执行不成功的,Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;
    insert into tb_User(UserName,PassWord,Code) values('aa','bb','cc')
    union
    delete from tb_Code where Code='cc';

    将 db.sqlEx(cmdstr+"union "+instr)
    改为
    db.sqlEx(cmdstr+";"+instr)

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题