0
你好我在與更新數據類型無法更新ASPX日期爲MS-Access表
我插在C#部分的日期這樣
string strSQL = "INSERT into Frettir (CreatedBy,CreatedOn,Title,Description,Starts,Ends,CatId,SectionId,ArticleExt,Myndatexti,MyndUrAlbumi,NrMyndar) values(?,?,?,?,?,?,?,?,?,?,?,?)";
cmd.Parameters.Add("@Starts",OleDbType.Date).Value = dstartdate;
但我更新的問題在ASPX部分這樣
UpdateCommand="UPDATE [Frettir] SET [Title][email protected],[Description][email protected],[CreatedBy][email protected],[ArticleExt][email protected], [Myndatexti][email protected],[Starts][email protected] WHERE [ArticleID][email protected] "
<UpdateParameters>
<asp:Parameter Name="Title" Type="String" />
<asp:Parameter Name="Description" Type="String" />
<asp:Parameter Name="notandaID" Type="int16" />
<asp:Parameter Name="ArticleExt" Type="String" />
<asp:Parameter Name="Myndatexti" Type="String" />
<asp:Parameter Name="Starts" Type="DateTime" />
<asp:QueryStringParameter Name="id2" QueryStringField="ArticleID" Type="Int32" />
</UpdateParameters>
我得到條件表達式中 似乎有被輸入在c#部和第類型之間的一些類型的差別的誤差數據類型不匹配e aspx-部分
任何人都可以幫助我嗎?
這不是我曾經做過的事情(我是一個Access程序員),但我已經閱讀過這樣常見的問題的答案,我想知道問題是否你沒有按順序傳遞參數? Jet/ACE提供程序不識別命名參數,因此您必須確保它們按聲明的順序傳遞。但我可能會誤解這種情況。 – 2010-04-16 18:43:31
不,插入工作得很好,更新參數的順序是正確的,它看起來似乎插入語句似乎使用日期的其他格式,即使它看起來很正確,這導致更新句子失敗。 – Bjork 2010-04-16 21:36:59
在Access和Jet/ACE SQL中(即,如果您直接將它傳遞給Jet/ACE),#分隔符用於日期,而不是「'」。嘗試[CreatedBy] =#@ notandaID#,看看是否有所作爲(我懷疑它會如何,但這是你在Access/Jet/ACE中做的事情,可能是問題)。 – 2010-04-17 21:46:15