myn*_*neo 5 c# t-sql asp.net-mvc-3
为了防御性地提出我的问题,我在发布之前使用了Google,Bing和StackOv :-).此外,我是MVC3的新手,仍然在努力解决框架的语法错综复杂问题.
我在下面的代码块中的SQL语句中有一个错误,这让我很烦恼.语法显示正确.我使用Select*From ...简化了SQL语句,它返回数据就好了.
此外,如果有更好的方法(不使用EF对象),请务必接受建议.我非常喜欢看到SQL语句的灵活性和控制 - 要么就是习惯的形式,要么习惯于它:-).
提前致谢!!
@using System.Data.SqlClient;
@using System.Configuration;
@{
Layout = null;
}
@{
SqlConnection cn = null;
cn = new SqlConnection(ConfigurationManager.ConnectionStrings["sqlConn"].ToString());
cn.Open();
SqlCommand cmd = new SqlCommand((@"SELECT DISTINCT" +
"tblSBT.sname," +
"tblSBDetails.sid," +
"tblSBDetails.assignedtrack," +
"tblSBDetails.maxtrack," +
"tblSBDetails.currentvals," +
"tblSBDetails.maxvals," +
"tblSBDetails.lastupdated" +
"FROM" +
"tblSBT (NOLOCK)" +
"LEFT OUTER JOIN" +
"tblSBDetails (NOLOCK)" +
"ON" +
"tblSBT.sid = tblSBDetails.sid" +
"WHERE" +
"tblSBDetails.lastupdated > DateADD(n, -5, GETDATE())"+
"ORDER BY" +
"tblSBT.sname" +), cn);
var myreader = cmd.ExecuteReader();
}
Run Code Online (Sandbox Code Playgroud)
cly*_*lyc 18
如果您正在使用@符号,则无需像执行此操作那样连接字符串.当你加入这样的字符串时,它也不是编写那段代码的最有效方式.
SqlConnection cn = null;
cn = new SqlConnection(ConfigurationManager.ConnectionStrings["sqlConn"].ToString());
cn.Open();
SqlCommand cmd = new SqlCommand((@"SELECT DISTINCT
tblSBT.sname,
tblSBDetails.sid,
tblSBT.sname,
tblSBDetails.sid,
tblSBDetails.assignedtrack,
tblSBDetails.maxtrack,
tblSBDetails.currentvals,
tblSBDetails.maxvals,
tblSBDetails.lastupdated
FROM tblSBT (NOLOCK)
LEFT OUTER JOIN tblSBDetails (NOLOCK)
ON .sid = tblSBDetails.sid
WHERE tblSBDetails.lastupdated > DateADD(n, -5, GETDATE())
ORDER BY tblSBT.sname"), cn);
var myreader = cmd.ExecuteReader();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19658 次 |
| 最近记录: |