作者pipited07 (阿直直)
看板C_Sharp
標題[問題] ado.net 資料庫無法寫入
時間Sat Jun 11 03:54:24 2016
小弟最近學寫ado.net
碰到一些連線問題
程式碼如下:
try
{
string cn = @"Data Source=(LocalDB)\v11.0;" +
"AttachDbFilename=|DataDirectory|UserDatabase.mdf;" +
"Integrated Security=True";
SqlConnection db = new SqlConnection(cn);
db.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = db;
string gender = "";
if (ManRadioButton.Checked)
gender = ManRadioButton.Text;
else
gender = WomanRadioButton.Text;
cmd.CommandText = "INSERT INTO 基本資料(帳號,密碼,姓名,性別,身高,體重,血型
)VALUES('7855589','45600',N'王曉明',N'女',150,60,'O')";
MessageBox.Show(cmd.CommandText);
cmd.ExecuteNonQuery();
db.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
基本上都沒有收到錯誤訊息,但是資料就是寫不進資料庫中
另外還發現一些疑點,每當我編譯的時候,伺服器總管→資料連線,馬上變成叉叉
而類似的程式碼也打過,在其他程式也不會在編譯的時候斷線,資料也可以寫入
想請問版上大大對這樣的問題有沒有頭續呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.71.78
※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1465588466.A.785.html
→ yuhaw0715: AttachDbFilename有指定絕對路徑嗎? 06/11 05:39
應該不是絕對路徑的問題喔,因為我查詢資料的話都還找的到資料
→ MOONY135: ...你看起來 沒有指定TABLE耶... 06/11 08:55
→ MOONY135: 你有在SQL開基本資料這張TABLE嗎 然後TABLE_NAME 06/11 08:58
→ MOONY135: 基本上用英文會比較好 這邊改過之後再來看看 06/11 08:58
請問沒有指定TABLE意思是?我的"基本資料"就是TABLE名稱,但是我這個database是在方
案總管新增子項目出來的(然後再去伺服器總管那邊增加項目),請問這樣有關係嗎?
※ 編輯: pipited07 (175.182.224.107), 06/11/2016 12:49:18
→ MOONY135: 換成英文名稱的table看看 06/11 13:11
換成英文的也不行
※ 編輯: pipited07 (140.116.71.78), 06/11/2016 14:44:49
目前已成功
先將資料庫複製一份,然後將方案總管的資料庫子項目刪除
然後再在伺服器總管連結一份新的
程式碼完全沒更動
但是不知道為甚麼這樣就可以成功,編譯時也不會斷線了
有大大知道為甚麼會這樣嗎?
※ 編輯: pipited07 (140.116.71.78), 06/11/2016 15:31:50
→ MOONY135: 一開始設定的連線就有問題吧 06/11 16:14
→ MOONY135: 我是你的話就會用其他的連線測試 再比對 06/11 16:14