→ denby:INSERT的寫法沒錯 照著錯誤訊息往該方向找吧 05/19 23:01
GOOGLE過 好像是說資料庫沒連接到之類的意思
SELECT沒問題 INSERT就未初始化
明明就是複製貼上的的說+_+>..
試過
OleDbConnection cn = new OleDbConnection();
cn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=DbScore.mdb";
也一併重新貼在INSERT 但是結果還是一樣未初始化
→ tedcat:da.fill-> 從sql取result取一個在程式暫存的table名稱 05/19 23:27
→ tedcat:所以妳要先有一個result table才可以... 05/19 23:28
→ tedcat:你不可能期望你insert資料進去後,程式就這麼聰明的知道 05/19 23:35
→ tedcat:知道你要從那個表取什麼樣的資料集出來吧... 05/19 23:35
@_@
意思是insert不能照抄select da.fill的方式嗎?@@"
※ 編輯: relievezaoc 來自: 118.160.85.185 (05/19 23:45)
→ tedcat:意思是你insert完之後要在把本來的select那段也補上去... 05/19 23:46
→ tedcat:這樣ds才會有score的結果集啊... 05/19 23:46
OleDbDataAdapter da = new OleDbDataAdapter();
DataSet ds = new DataSet();
string Sql = "INSERT INTO Score (學號,姓名) VALUES('123','test')";
da.InsertCommand = new OleDbCommand(Sql, cn);
>>>> string newSql = "select * from [Score]";
>>>> da.SelectCommand = new OleDbCommand(newSql , cn);
da.Fill(ds, "Score");
dataGridView1.DataSource = ds.Tables["Score"];
cn.Close();
沒有錯誤提示了 但是也沒有新增資料+__+|||
就只是個按扭 按了沒有任何反應
該檢查哪邊呢@_@?
※ 編輯: relievezaoc 來自: 118.160.85.185 (05/20 00:01)
→ tedcat:剛查了一下語法,insercommand完之後還需要執行他 05/20 00:48
→ tedcat:da.InsertCommand.ExecuteNonQuery(); 05/20 00:48
→ tedcat:google到這篇語法 跟你的用途應該是一樣的 05/20 00:50
!!感謝!!!成功了
但需要再加一條
cn.open();
可能是語法就是這樣的關係吧?
如果沒有open的話
錯誤是:ExecuteNonQuery 必須有開啟與可用的 Connection。連接目前的狀態已關閉。
大概要ExecutNonQuery就是要綁個Open吧- 3 -||||
另外想問一下T大是餵了估狗什麼關鍵字呢@_@?
我GOOGLE InsertCommand SQL
或是 InsertCommand 語法 都沒看到這個網站呢QQ
這網站棒~~繼續研究怎麼新增使用者自己輸入資料~~還有刪除..XD~!!!
心得:sql的語法好難抄啊!!!!!!!!!!!Q冊Q!!!!!!!!~~~
再次感謝t大的幫忙!!^_^
※ 編輯: relievezaoc 來自: 118.160.85.185 (05/20 20:52)
→ tedcat:我就只是把你的da.insert...當成關鍵字 05/21 19:52
→ tedcat:另外,你那個是屬於vb.net/c#.net的層面,所以你打insert sql 05/21 19:53
→ tedcat:insertcommand sql是不會有結果的...你應該打的是.net inse 05/21 19:53
→ tedcat:.net insertcommand就會找到一堆了 05/21 19:53
哦哦..瞭解@__@!!
再次感謝你~~!!
※ 編輯: relievezaoc 來自: 118.160.87.109 (05/22 21:40)