2 love2j0218 love2j0218 于 2014.05.28 23:04 提问

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个回答

lifuquan11111
lifuquan11111   2014.05.29 18: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)

love2j0218
love2j0218 我现在遇到的另一个问题,就是。我只运行删除那条sql,也是无法执行。就是说sql执行成功,那个reValue值为1.但是,执行那个删除语句。reValue值为0. 而上面那个插入的reValue为1.两张表都在同一个数据库下。
接近 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!