日期:2014-05-17  浏览次数:21018 次

C#插入时程序自动退出
本帖最后由 liuzhuoran1110 于 2012-12-03 21:41:37 编辑

foreach (char charJudge in insertStr)
            {
                if (charJudge == 'E')
                {
                    string Sqlcom = "INSERT INTO project(name) VALUES('" + insertStr + "');";
                    ExecuteSQL(Sqlcom);
                    MessageBox.Show(insertStr);
                    return;
                }
                if (charJudge == 'S')
                {
                    string Sqlcom = "INSERT INTO project(email) VALUES('" + insertStr + "');";
                    ExecuteSQL(Sqlcom);
                    MessageBox.Show(insertStr);
                    return;
                }
            }

执行时程序直接就退出了,如果把
string Sqlcom = "INSERT INTO project(email) VALUES('" + insertStr + "');";
                    ExecuteSQL(Sqlcom);
注释掉则没有错误,请教这是为什么,谢谢
------最佳解决方案--------------------
string Sqlcom = "INSERT INTO project(email) VALUES('" + insertStr + "');";
                    ExecuteSQL(Sqlcom);
好象你多了个;号吧,你把那个;号去掉再试试
------其他解决方案--------------------
估计是问题出在ExecuteSQL方法中。
------其他解决方案--------------------
引用:
引用:我觉得是出在email的邮箱格式中有特殊字符‘@’

数据都没有'@',那些列名都是随便起的名字,主要是测试一下,自学的C#,很不系统,很多都要边查边做,仅仅是兴趣,呵呵

string Sqlcom = "INSERT INTO project(email) VALUES('" + insertStr + "');";
……

如果是这样的话 那就是判断里面有问题  根本没有执行if里的内容导致没有任何报错就退出了程序
lz可以在if处加个断点跟踪一下
------其他解决方案--------------------
你的字符串里面有特殊字符。你是不是用的sqlserver.
------其他解决方案--------------------
lz的project表里面的字段都是可以为空的么? 如果是不为空的话 这样插入数据是会有问题的吧
------其他解决方案--------------------