求解以下題目
在空格內輸入資料(例如)
按下新增及修改按鈕可以跑出對應的數值出來
以下我的 update,insert C#語法程式碼
String insert = string.Format("INSERT INTO sales (Item,Price,Date) VALUES('{0}')", TextBox3.Text + TextBox4.Text + TextBox5.Text);
String Update = string.Format(" UPDATE sales SET Item = '{0}' WHERE Item = '電腦' ", TextBox2.Text);
請問 我還要需要修改什麼呢?或是後端再多寫一點程式 去連接
Textbox的值
因為我有好幾個都是寫這樣
TextBox1.Text="";
TextBox2.Text="";
TextBox3.Text="";
TextBox4.Text="";
TextBox5.Text="";
//新增-範例
INSERT INTO "表格名" ("欄位1", "欄位2", ...)
VALUES ("值1", "值2", ...);
//你的
"INSERT INTO sales (Item,Price,Date) VALUES(''+TextBox3.Text + TextBox4.Text + TextBox5.Text)"
//你只有新增到第一筆
//你的
String Update = string.Format(" UPDATE sales SET Item = '{0}' WHERE Item = '電腦' ", TextBox2.Text);
//你要隨身碟改建盤,是只有這一筆要改還是所有的隨身碟改建盤?
//1.只改這一筆,之前說了,找PK
//例如:多的欄位較PK,照你目前資料順序,1,2,3,4,5,
String Update = string.Format(" UPDATE sales SET Item = '{0}' WHERE PK = '2' ", TextBox2.Text);
//2.改全部
//你的電腦改隨身碟就好
先想想,盡量不要伸手黨
GridView.SelectedDataKey
請GOOGLE
請GOOGLE
請GOOGLE
這很重要,所以說三次,你會了這個就更進步了
是阿.... 我也想自己想 但我想的 寫出來一堆錯誤...
亂goole 也找不太到範例
辦法就是拿一些範例去改
但... 這些東西,雖然小東西,去結合,去應用很多技巧下去
對新手其實滿不容易
書上..範例也沒寫那麼清楚...
還是 謝謝大大您的回覆....
你在做之前,有先試過你的T-SQL語法是正確的嗎?
以Insert的例子來說,應該要這樣下才對
string.Format("INSERT INTO sales (Item,Price,Date) VALUES('{0}','{1}','{2}')",
TextBox3.Text, TextBox4.Text, TextBox5.Text);
另外新增時,新增的日期不應該是自行輸入吧,實例上不會有人這樣做!
正常應該要這樣做
string.Format("INSERT INTO sales (Item,Price,Date) VALUES('{0}','{1}','{2}')",
TextBox3.Text, TextBox4.Text, DateTime.Now.ToString("yyyyMMdd"));
恩...我是 MySQL的....
好... 謝謝大大回復... 我再試試看
其實只是 不直到 TextBox 用法 去連結
我想讓它當 input這樣
感謝您回復
String insert = string.Format("INSERT INTO sales (Item,Price,Date) VALUES('{0}','{1}','{2}'})", TextBox3.Text + TextBox4.Text + TextBox5.Text,DateTime.Now.ToString("yyyyMMdd"));
我新增改這樣
這一行 會跳錯誤
String insert = string.Format("INSERT INTO sales (Item,Price,Date) VALUES('{0}','{1}','{2}'})", TextBox3.Text + TextBox4.Text + TextBox5.Text,DateTime.Now.ToString("yyyyMMdd"));
我新增改這樣
這一行 會跳錯誤
FORMAT的觀念要去看一下
你寫的insert 跟coreychen的不一樣
ted8224
好 我去google看看...謝謝
String Item = TextBox3.Text;
String Price = TextBox4.Text;
String Date = TextBox5.Text;
String insert = string.Format("INSERT INTO [sales] (Item,Price,Date) VALUES('{0}','{1}','{2}')",Item,Price,Date, TextBox3.Text , TextBox4.Text ,TextBox5.Text);
MySqlCommand cmd = new MySqlCommand(insert, conn);
DataTable dt = new DataTable();
GridView2.DataSource = dt;
GridView2.DataBind();
dt.Dispose();
conn.Close();
我爬文後改這樣,理論上沒寫錯.....
在TextBox3,TextBox4,TextBox5打上中文或數字
就能Insert到指定資料庫
我這樣寫沒錯誤也能Run
只是沒反應....
前端我都直接拉GrideView....
string.Format("{0},{1},{2}",Item,Price,Date);
FORMAT 你前面有幾個{} 後面就放幾個對應數值
還有你沒有執行語法
例如:
conn.Open();
MySqlCommand cmd = new MySqlCommand(insert, conn);
cmd.ExecuteNonQuery();
conn.Close();
你下面這段給他一個空的DATATABLE
沒意義
DataTable dt = new DataTable();
GridView2.DataSource = dt;
直接寫insert我會,只是我跑會變成後端寫好按下去跑結果
可是使用者不可能會跑去後端看你程式碼去自己改,所以新增TextBox去應用,然後使用者在TextBox其空格內輸入他要的去新增可以Run解果
不好意思 放對應數值?
你有去看過string.Format了嗎= =?
https://msdn.microsoft.com/zh-tw/library/system.string.format(v=vs.110).aspx
你的這段就不對啦!
另外,你說你的GridView沒反應,你有繫結對應的資料表嗎?
若沒繫結,就要在寫完後,重取一次資料再丟給GridView。
謝謝大大回復... 我用出來了...
謝謝大大回復... 我用出來了...
你寫了你的做法,
但是我不知道你的問題是什麼?
你有執行過嗎?
執行有遇到困難嗎?
這我都沒有看到。