string.Format 问题

Neusoft06 2013-05-21 06:15:59
怎样解决 不能嵌套 的问题
string sql = string.Format(" select {0},{1}",
"aaa",
CreateGeItemNullNameSql()
);

private string CreateGeItemNullNameSql()
{
string sql = string.Empty;
for (int i = 1; i <= 20; i++)
{
sql += string.Format(" NULL AS {0}, NULL AS {1}, NULL AS {2} ",

"ITEMNO"+i,
"ITEMNAME" + i,
"VALUE" + i
);
}

return sql;
}

这样会报错
...全文
210 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Neusoft06 2013-05-24
  • 打赏
  • 举报
回复
是UNION的 一段拼接SQL文
Neusoft06 2013-05-24
  • 打赏
  • 举报
回复
问题解决了,谢谢楼上各位 string.Format编号和参数个数没对上
51Crack 2013-05-22
  • 打赏
  • 举报
回复
佩服这NB代码
oreoconansisu 2013-05-22
  • 打赏
  • 举报
回复

 string sql = string.Format(" select  {0},{1}",
"aaa",
CreateGeItemNullNameSql()
);

        private string CreateGeItemNullNameSql()
        {
            string sql = string.Empty;
            for (int i = 1; i <= 20; i++)
            {

                if(!string.IsNullOrEmpty(sql))
                {
                    sql+=",";
                }
                sql += string.Format(" NULL AS {0}, NULL AS {1}, NULL AS {2} ",

                    "ITEMNO"+i,
                    "ITEMNAME" + i,
                    "VALUE" + i
                    );
            }

            return sql; 
        }
接楼上所说,报错是因为少个',' 多个字符串拼接,可以使用stringbuilder提高效率
iceMung 2013-05-22
  • 打赏
  • 举报
回复
private string CreateGeItemNullNameSql() { string sql = string.Empty; for (int i = 1; i <= 20; i++) { sql += string.Format(" NULL AS {0}, NULL AS {1}, NULL AS {2} ", "ITEMNO"+i, "ITEMNAME" + i, "VALUE" + i ); } return sql; } 不从你的业务角度出发,光看你的SQL语句,每次循环得到的内容(NULL AS ITEMNOi, NULL AS ITEMNAMEi, NULL AS VALUEi,)之间缺少一个逗号,不然SQL都是不正确的。
本拉灯 2013-05-22
  • 打赏
  • 举报
回复
string sql = string.Format(" select {0},{1}", "aaa",
coobai 2013-05-22
  • 打赏
  • 举报
回复
哦,看错。。。。。。。
coobai 2013-05-22
  • 打赏
  • 举报
回复
声明 sql 的时候用到了CreateGeItemNullNameSql()方法, 然后CreateGeItemNullNameSql() 方法中又用到了 sql变量。
threenewbee 2013-05-21
  • 打赏
  • 举报
回复
没看出有什么错误。
removeLove 2013-05-21
  • 打赏
  • 举报
回复
报什么错啊 我这里测试是没有问题的~
yyantifa 2013-05-21
  • 打赏
  • 举报
回复
先不说报错,先说这个SQL语句是干嘛的。
rayyu1989 2013-05-21
  • 打赏
  • 举报
回复
真实蛋疼的代码 又叠加 又format 不如申明个stringbuilder 传进去来得快

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧