我想通過Select Count(*)函數並且以3個NVARCHAR類型以及1個datetime類型的變數為條件查詢SQL裡面符合條件的列有幾個 ,如果單是查詢那3個NVARCHAR數據倒是沒問題,但是加上datetime類型為條件就出錯了,數據庫連接代碼就不打了,是正確的,麻煩各位大咖幫幫我
string query = "Select Count(*) from Table_booking Where type = '" + type + "' AND time = '" + time + "' AND (datediff(day,@DATEValue,date)>=0" + "and datediff(day,date,@DATETWOValue)>=0)" + "VALUES (@TYPEValue, @DATEValue, @DATETWOValue, @TIMEValue)";
command.Parameters.AddWithValue("@IDValue", id);
command.Parameters.AddWithValue("@TYPEValue", type);
command.Parameters.AddWithValue("@DATEValue", date);
command.Parameters.AddWithValue("@DATETWOValue", date2);
command.Parameters.AddWithValue("@TIMEValue", time);
command.CommandText = query;
接近關鍵字 'VALUES' 之處的語法不正確。
描述: 在執行目前 Web 要求的過程中發生未處理的例外狀況。請檢閱堆疊追蹤以取得錯誤的詳細資訊,以及在程式碼中產生的位置。
例外狀況詳細資訊: System.Data.SqlClient.SqlException: 接近關鍵字 'VALUES' 之處的語法不正確。
原始程式錯誤:
行 60: command.Parameters.AddWithValue("@TIMEValue", time);
行 61: command.CommandText = query;
行 62: check = (int)command.ExecuteScalar();
行 63: cnn.Close();
行 64:
成功查詢資料庫數據並返回符合條件的列的數量
查询的话加这个吗?插入数据才用values,如果是插入查询结果到表中,也应该是insert into ... select这种结构。
time的值是合法的日期格式吗?日期格式一般用between语句的。