a245861672
2016-01-05 12:08
采纳率: 50%
浏览 2.3k

数据库表的类型为varchar但是只能存入数字类型的字符串

我的客户表customer字段类型为varchar型的 ,但是我在插入数据时不能插入字母,符号,只能插入数字类型的字符串
比如插入 “lly.sfa”就不行,但是插入“54215642”就可以 。下面是我的代码
try
{
string username = TextBox1.Text;
string password = TextBox2.Text;
string againpassword = TextBox3.Text.;
string phonenumber = TextBox4.Text.();
Random ran = new Random();

int id = Convert.ToInt32(string.Format("{0:ddHHmmss}", DateTime.Now) + ran.Next(0, 10));
string sqlselete = "select count(*) from customer where customer_name=" + username;
dataOperate sqlopereat = new dataOperate();
int num = sqlopereat.IsData(sqlselete);
if (num == 0)
{
try
{
string sqlupdata = "insert into customer(customer_id,customer_name,customer_password,customer_phone,customer_level) values(" + id+"," + phonenumber+","+username+","+password+","+ "5) ";
//bool a=sqlopereat.Insert(sqlupdata);
//if (a==true)
//{
// Response.Write("恭喜 注册成功");
//}
bool result = sqlopereat.AdlData(sqlupdata);
if (result == true)
{
Response.Write("恭喜 注册成功");
}

            }
            catch (Exception)
            {
                throw;

            }

        }

    }
    catch (Exception)
    {
        throw;

    }

}
    数据库连接没有问题    我用的是VS2015内置的数据库    是这个的问题吗?
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • threenewbee 2016-01-05 12:17
    已采纳

    你的sql语句中拼接,字符串类型的变量外面要加上单引号。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 秋之丶叶 2016-01-05 12:58

    给字符串外面加一个单引号就好

    评论
    解决 无用
    打赏 举报
  • 广州-宁罗司 2016-01-05 14:12

    是不是,把他强制转换了INT32

    评论
    解决 无用
    打赏 举报
  • 一念之间! 2016-01-05 14:23

    username外添加单引号

    评论
    解决 无用
    打赏 举报
  • 字符串的列名称的值要用引号扩起。。要不会报错了。。

     string sqlselete = "select count(*) from customer where customer_name='" + username+"'";////////////
    dataOperate sqlopereat = new dataOperate();
    int num = sqlopereat.IsData(sqlselete);
    if (num == 0)
    {
    try
    {
    string sqlupdata = "insert into customer(customer_id,customer_name,customer_password,customer_phone,customer_level) values(" + id + ",'" + phonenumber + "','" + username + "','" + password + "'," + "5) ";/////////
    
    评论
    解决 无用
    打赏 举报
  • 忧郁王子锋少 2016-01-07 08:41

    这种问题,首先肯定,sql 语句的拼接有问题,针对问题下药,这是重中之重。
    那什么方法最直接呢,不是问,也不是看,而是 你要调试,

    首先,你会调试吗,不会,去网上查一下,一会就会了
    OK ,接下来你就 在你 执行语句之前设置个断点,,(断点你总会吧)

    F5 调试,运行到断点 把你的SQL 语句 复制出来,,然后往 SQL 那边粘贴下

    最后,你在sql 运行下,就能看到智能提示了,这是最直观的办法,问题解决了

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题