0
我試圖通過我的.net代碼執行以下查詢,但它給了我錯誤,錯誤附近」。但是當我在Sql Server中執行此查詢它正常工作。錯誤附近「.net中
select
s.CurrentDate,
s.game_id,
s.Searchstring,
sm.type_of_game,
case
when(count(ISNULL(t.game_id, 0))>0) then 'Y' else 'N'
end as scorestatus,
case
when(count(isnull(i.game_id,0))>0) then 'Y' else 'N'
end as scorestatusindividual,
sm.image_path,
g.datetime,
'' as score_keeper
from
dbo.Search s with(nolock)
left outer join dbo.TeamGameResult t with(nolock)
on s.game_id=t.game_id
left outer join dbo.IndividualGameResult i with(nolock)
on i.game_id=s.game_id
join dbo.Game g with(nolock)
on g.game_id=s.game_id
join dbo.AdditionalDetails ad
on ad.AdditionalDetails_id=g.AdditionalDetails_id
join dbo.SportMaster sm with(nolock)
on sm.SportsMaster_id=ad.SportsMaster_id
where
(
(
Searchstring+' '+ convert(nvarchar(10),s.CurrentDate,101) Like '%01/15/2013%'
and Searchstring+' '+ convert(nvarchar(10),s.CurrentDate,101) Like '%Soccer%'
)
)
and convert(varchar(10),g.datetime,101) in ('01/15/2013','01/14/2013')
group by
s.game_id,
s.Searchstring,
sm.type_of_game,
s.CurrentDate,
sm.image_path,
g.datetime
order by
g.datetime desc
.NET代碼 這裏我已創建的字符串並把它傳遞到fetchsearchrecordsbydate()方法。 在這裏輸入代碼
for (int i = 0; i < strSearchstring.Length; i++) {
if (i == strSearchstring.Length - 1) {
Searchstring = strcondition + " Searchstring+'' ''+ convert(nvarchar(10),s.CurrentDate,101) Like ''%" + strSearchstring[i].ToString() + "%'')";
} else {
Searchstring = strcondition + " Searchstring+'' ''+ convert(nvarchar(10),s.CurrentDate,101) Like ''%" + strSearchstring[i].ToString() + "%'' and";
}
public static DataTable fetchsearchrecordsbydate(string strSearchString, string strUserid, string strdate) {
try {
Database db = DatabaseFactory.CreateDatabase();
DbCommand dbcmd = db.GetStoredProcCommand("spFetchRecordsFromdate");
db.AddInParameter(dbcmd, "Searchstring", DbType.String, strSearchString);
db.AddInParameter(dbcmd, "userid", DbType.Int32,Convert.ToInt32(strUserid));
db.AddInParameter(dbcmd,"date",DbType.DateTime,Convert.ToDateTime(strdate));
DataSet dsSearchResult = db.ExecuteDataSet(dbcmd);
return dsSearchResult.Tables[0];
} catch (Exception ex) {
throw ex;
}
}
Searchstring=((Searchstring+' '+ convert(nvarchar(10),s.CurrentDate,101) Like '%01/15/2013%' and Searchstring+' '+ convert(nvarchar(10),s.CurrentDate,101) Like '%Soccer%'))
這是我的生成字符串。 但它給了我錯誤,錯誤附近「。它在sql中正常工作,但在錯誤中.net
向我們展示c#中的代碼# – 2013-03-28 06:42:25
如何在.net代碼中使用它? – Dima 2013-03-28 06:43:44
Database db = DatabaseFactory.CreateDatabase(); DbCommand dbcmd = db.GetStoredProcCommand(「spFetchRecordsFromTable」); db.AddInParameter(dbcmd,「Searchstring」,DbType.String,strSearchString); db.AddInParameter(dbcmd,「userid」,DbType.Int32,Convert.ToInt32(strUserid)); db.AddInParameter(dbcmd,「date」,DbType.DateTime,Convert.ToDateTime(strdate)); DataSet dsSearchResult = db.ExecuteDataSet(dbcmd); – Trupti 2013-03-28 06:50:36