Re: [問題] C#與SQL SERVER中DATETIME欄位的怪問題
※ 引述《mygod1220 (晴天)》之銘言:
: ※ 引述《mygod1220 (晴天)》之銘言:
: : 謝謝大家的回應
: : 我是開發2003的smartdevice專案
: : 用sqlconnection和sqlcommand這兩個元件去存取資料庫
: : 所以datetime.now我是直接寫成command的一部份 @@"
: : 但是這樣的話會發生型別轉換的錯誤..
: : 有沒有其他元件可以用param屬性的方式插入日期的呢
: : 謝謝!
: 自問自答一下
: command = new SqlCommand(
: "INSERT INTO Customers (CustomerID, CompanyName) " +
: "VALUES (@CustomerID, @CompanyName)", connection);
: // Add the parameters for the InsertCommand.
: command.Parameters.Add("@CustomerID", SqlDbType.NChar, 5, "CustomerID");
: command.Parameters.Add("@CompanyName", SqlDbType.NVarChar, 40,
: "CompanyName");
又遇到一個怪問題
sqlComRadioMap.CommandText = "Insert into powerStrength (mac, power, regi
time) values (@mac, @power, @region, @time)";
// 分別指定參數
我用
sqlComRadioMap.Parameters.Add("@time", System.Data.SqlDbType.DateTime,
8, DateTime.Now.ToString());
去執行插入後
會出現錯誤訊息如下
System.Data.SqlClient.SqlException: 準備陳述式 '(@mac nvarchar(4000),@power
nvarchar(4000),@region nvarchar(4000' 預期之前並未提供的參數 @time
但如果我用
sqlComRadioMap.Parameters.Add("@time",SqlDbType.DateTime);
sqlComRadioMap.Parameters["@time"].Value = DateTime.Now;
就可以成功的插入
差別好像就差在欄位的長度,但是我是照的表單上面的欄位長度8去做設定
有人知道這是為什麼嗎@@?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.82
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 5 篇):