我有這樣的選擇查詢的日期的查詢:選擇使用工作不正常
SELECT field_1, field_2, field_3, field_4
FROM MyTable
Where DateTimeField > '16/04/2013 00:00:00' ;
它返回我,即使是那些16/04/2013
之前。
我也tryed這一點:
SELECT dt_cadastro,descricao, projeto, funcionalidade
FROM chamados
Where dt_cadastro BETWEEN '16/04/2013 00:00:00' AND '28/05/2013 23:59:59';
同樣的結果... = \
這我試圖在我的MySQL管理器。
當我嘗試在我的應用程序,如:
string sql = @"SELECT proj.descricao AS projeto, func.descricao AS funcionalidade, clb.clube AS cliente, ch.descricao
FROM chamados ch
INNER JOIN projetos proj ON ch.projeto = proj.id
INNER JOIN funcionalidades func ON ch.funcionalidade = func.id
INNER JOIN clubes clb ON ch.clube = clb.id
WHERE ch.dt_cadastro BETWEEN @dt_inicial AND @dt_final";
MySqlCommand cmd = new MySqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = sql;
cmd.Parameter.Add(new MySqlParameter("@dt_inicial", MySqlDbType.DateTime)).Value = dt1
cmd.Parameter.Add(new MySqlParameter("@dt_final", MySqlDbType.DateTime)).Value = dt2
然後我給你這個查詢到DataSet
的結果。 但DataSet.Tables[0].Rows.Count
總是< 0
。
這一切都是工作,但因爲我改變了我的Visual Studio 2010
到VS 2012
一切開始不順心= \
UPDATE
它的工作都MySql manager
和my application
。就像這樣:
SELECT proj.descricao AS projeto, func.descricao AS funcionalidade, clb.clube AS cliente, ch.descricao
FROM chamados ch
INNER JOIN projetos proj ON ch.projeto = proj.id
INNER JOIN funcionalidades func ON ch.funcionalidade = func.id
INNER JOIN clubes clb ON ch.clube = clb.id
WHERE ch.dt_cadastro BETWEEN '2013/04/28' AND '2013/05/28'
但是,當我試圖把時間用它喜歡它不工作(HH:MM:SS,e.g 23:59:59)。 但它確定。
而我總是習慣,
MySqlCommand.Parameter.Add(new MySqlParameter("@date1", MySqlDbType.DateTime)).value = xxx
,經常工作。我會以dd/mm/yyyy
格式獲取日期。一直工作,現在我可以做什麼?上面的變量xxx
是string
,因爲我需要添加hh:mm:ss
。我改變了DateTime
這個變量並且工作了...... o.O爲什麼它習慣了我所做的,但現在它不再有效。
UPDATE 2
我發現了這個問題。
我沒有想法爲什麼這個,所以如果任何人都可以向我解釋原因,我會很感激!
我正在使用string
變量類型在我的MySqlCommand.Parameter
中通過。
我改變了類型DateTime
和工作......沒有理想,爲什麼它停下來工作的方式是在第一個地方。但現在它正在工作。謝謝 !
我試過了,現在我根本沒有得到任何結果... 我不認爲這是一個轉換問題,因爲當我使用'MySqlCommand.Paramter.Add ...'它已經這樣做了。或不 ? – Ghaleon
'dt_cadastro'列的類型是什麼?時間戳? – Imreking
這是'DateTime' – Ghaleon