2012-06-26 28 views
2

刪除時間戳我填充日期的文本框從一個datepicker與Calendar1.SelectedDate.ToShortDateString();, 之後,我存儲與查詢下面如何從GridView的

string query3 = "insert into leave_module1 values(:srno,:name,:desig,:tol,:compdates,:fd,:td,:nod,:da,:ds,st.nextval)"; 
OracleCommand cmd = new OracleCommand(query3, con); 
try 
{ 
    cmd.Parameters.Add(":srno", OracleType.Number, 8).Value = DropDownList2.Text; 
    cmd.Parameters.Add(":name", OracleType.VarChar, 50).Value = TextBox8.Text; 
    cmd.Parameters.Add(":desig", OracleType.VarChar, 30).Value = TextBox10.Text; 
    cmd.Parameters.Add(":tol", OracleType.VarChar, 10).Value = DropDownList1.Text; 
    cmd.Parameters.Add(":compdates", OracleType.VarChar, 30).Value = TextBox9.Text; 
    cmd.Parameters.Add(":fd", OracleType.DateTime).Value = TextBox3.Text; 
    cmd.Parameters.Add(":td", OracleType.DateTime).Value = TextBox4.Text; 
    cmd.Parameters.Add(":nod", OracleType.Number, 3).Value = TextBox5.Text; 
    cmd.Parameters.Add(":da", OracleType.DateTime).Value = TextBox11.Text; 
    cmd.Parameters.Add(":ds", OracleType.DateTime).Value = TextBox7.Text; 
    cmd.ExecuteNonQuery(); 
    ClientScript.RegisterStartupScript(Page.GetType(), "validation", "<script language='javascript'>alert('The Data has been added');window.location='Default2.aspx';</script>;"); 
} 
catch 
{ 
    Label13.Visible = true; 
} 

所示的Oracle數據庫但當我填充在另一個GridView控件頁面與存儲的日期,我得到一個時間戳,即使我沒有輸入一個。請告訴我如何從顯示中刪除時間戳!

在此先感謝

這是我如何填充在GridView

protected void Button3_Click(object sender, EventArgs e) 
{ 
    string v = System.Configuration.ConfigurationManager.ConnectionStrings["harish"].ConnectionString; 
    con = new OracleConnection(v); 
    con.Open(); 
    cmd = new OracleCommand("select * from leave_module1 where srno='"+DropDownList1.Text+"'", con); 
    dr = cmd.ExecuteReader(); 

    GridView1.DataSource = dr; 
    GridView1.DataBind(); 
    con.Close(); 
    dr.Close(); 
} 
+1

你能提供gridview的代碼嗎? – Sean

+3

select語句和gridview很重要。不是插入語句。 –

+0

也許在這裏:http://stackoverflow.com/questions/5567421/remove-timestamp-from-date-in-c – LolCat

回答

2

因此您正在查詢數據庫中的所有列,然後自動生成列。這就是顯示所有列的原因。要解決此

  1. 調整查詢只返回被實際需要
  2. 禁用自動生成列列和自己定義的列。

很少你想使用自動生成的任何東西,因爲你鬆散的呼叫控制來定製行爲和輸出。

+0

這並沒有解決如何從GridView中刪除時間戳,請參閱我的答案。 –

0

格式您在您的查詢或背後的代碼數據(我會在查詢做),以刪除時間戳並且只顯示數據。

+0

如何做到這一點。這就是我不知道:( – Huga

+0

To_Char在你的Oracle選擇語句,這裏是一個鏈接,應該有所幫助。 infolab.stanford.edu/~ullman/fcdb/oracle/or-time.html – Limey

0

您在您的代碼中指定的類型是DateTime,因此無論您是否指定一個時間組件都有一個時間組件。如果Oracle有日期類型(我不是Oracle人員,但是我在當前項目中與Oracle進行交互),並且您有權進行更改,那麼這是獲得您要求的最簡單的方法。 否則,每次使用數據剝離時間組件時,都必須指定.ToShortDateString()(或其他類似的東西)。

0

轉到編輯GridView的列,字段對話框將顯示。選擇要刪除時間部分的日期字段,並在DataFormatString屬性中輸入{0:d};單擊確定。當你運行你的應用時,你的gridview列將只顯示日期部分。這對我來說很有用。在過程上轉換爲Date不起作用,並且RowDataBound()處理程序的格式化很麻煩。

enter image description here