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

新人求教 ASP.NET的
string strsql = "INSERT INTO USER_INFO " +
  "VALUES ( " +
  "'" + loginName + "', " +
  "'" + userName + "', " +
  "'" + password + "', " +
  "'" + email + "', " +
  "'" + address + "', " +
  "'" + telephone + "', " +
  "'" + DateTime.Now.ToString() + "', " +
  "'" + DateTime.Now.ToString() + "'" + ")";
  return db.insert(strsql);
看得眼睛都花了 这些个“” ‘ ’+ 密密麻麻的 我都分不清楚到底是圈哪个变量了 
麻烦哪位高人帮忙解释一下这些标点符号是怎么用的好吗 不胜感激 谢谢。

------解决方案--------------------
字符串类型的变量在拼接的时候一般都 '"+字符串变量+"' 这样传到数据库中 就是 :insert into 表 value('字符串变量')

如果是数值类型则是 "+字符串变量+" 传到数据库中 就是: insert into 表 value(数值)
------解决方案--------------------
如下可能会好点
C# code

string sql = string.Format("insert into Table(loginName,username,pwd,email) values('{0}','{1}','{2}','{3}')","1","2","3","4");

------解决方案--------------------
'" + loginName + "'
""是拼接变量,外面‘’是把变量变成字符串
------解决方案--------------------
就是先使用'' 然后如果在‘’中有变量,就需要这样了‘“+ 变量名称 +”’。希望对你有帮助。
------解决方案--------------------
其实+是起到连接头尾字符串而已,'是用于sql语句中字段的数据类型是字符串
------解决方案--------------------
你只要记住在SQL语句中,只要出现字符或者字符串时都要用""(英文半角)括起来,比如说INSERT INTO USER_INFO 和VALUES (,又因为‘(上单引号)是字符而loginName等都是变量,所以把‘loginName’写成了以下的形式:"'" + + "', "。后面用+号连接的眼花缭乱的字符串都同理了。
------解决方案--------------------
探讨

如下可能会好点
C# code

string sql = string.Format("insert into Table(loginName,username,pwd,email) values('{0}','{1}','{2}','{3}')","1","2","3","4");

------解决方案--------------------
我给你个方法.绝对可以解决这个问题.我自己的写的.


掉不同的方法 处理不同的字符

 #region
/// <summary>
/// 执行数据SQL语句库字符串拼写
/// </summary>
/// <param name="cshu"></param>
/// <returns></returns>
public string GSHString(string cshu)//格式化数据库中所有string类型添加 "'" + cshu + "'"号
{
return "'" + cshu + "'";
}
public string GSHvalue(string cshu)//格式化数据库中所有string类型添加 "'" + cshu + "'"号
{
return cshu == "" ? "" + "为定义区域" + "" : cshu;
}
public string GSHdecimal(decimal dec)//格式化数据库中所有decimal类型添加 "" + dec + ""号
{
return " " + dec + " ";
}
public string GSHDateTime(DateTime time)//格式化数据库中所有DateTime类型添加 ‘ ’号
{
return " to_date('" + time.ToString("yyyy-MM-dd").ToString() + "','yyyy-mm-dd') ";
}
#endregion