2016-04-27 34 views
2

所以我想將一個'Team Member'數據表的成員添加到代表一個團隊的'SoccerBlue'DT中。我建立了一個文本框,用戶基本上可以查看玩家的網格視圖,選擇玩家,然後寫下玩家的電子郵件,從「團隊成員」中刪除哪個玩家添加到「SoccerBlue」。我正在提出的問題是值不會被添加到按鈕點擊'SoccerBlue'DT。如何將數據從一個Access DataTable添加到同一DataBase中的另一個Datatable插入的數據依賴於文本框控件?

我得到的錯誤是發生錯誤:沒有給出一個或多個所需參數的值。

分貝

enter image description here

enter image description here

protected void Button1_Click1(object sender, EventArgs e) 
{ 
    OleDbConnection conn = null; 
    DataTable gridTable = new DataTable(); 
    try 
    { 
     string connString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; 
     conn = new OleDbConnection(connString); 

     string query = "INSERT INTO [SoccerBlue] " + "(FirstName, LastName, Email, Age) " + "SELECT FirstName, LastName, Email, Age " + "FROM [Team Member] " + "WHERE Email = txtAdd.Text"; 
     // string query = "INSERT INTO [Team Member] (Soccer, Basketball, Football, Softball) VALUES(" + c1.Checked.ToString() + ", " + c2.Checked.ToString() + ", " + c3.Checked.ToString() + ", " + c4.Checked.ToString() + ")"; 


     OleDbCommand cmd = new OleDbCommand(query, conn); 
     conn.Open(); 


     cmd.CommandType = CommandType.Text; 
     cmd.ExecuteNonQuery(); 
     cmd.Dispose(); 
     lblError.Text = ("Teamate Added!"); 

    } 
    catch (Exception ex) 
    { 
     lblError.Text = ("Error occurred: " + ex.Message); 
    } 
    finally 
    { 
     conn.Close(); 
    } 
} 
+0

你沒有把它添加到數據表... – Gusman

+0

我知道這是我的問題,我在搞什麼? –

+0

您最有可能在[SoccerBlue]表中沒有插入的所需列。也就是說,數據庫中的其中一列被定義爲NOT NULL,而沒有爲其分配自動生成的默認值。問題不是沒有定義這個值就不能插入一行。這將是您沒有列入要插入的列名稱列表中的一個。 – JSON

回答

1

假設txtAdd.Text是一個文本框那麼這行:

string query = "INSERT INTO [SoccerBlue] " + "(FirstName, LastName, Email, Age) " + "SELECT FirstName, LastName, Email, Age " + "FROM [Team Member] " + "WHERE Email = txtAdd.Text"; 

應該是這樣的:

string query = "INSERT INTO [SoccerBlue] " + "(FirstName, LastName, Email, Age) " + "SELECT FirstName, LastName, Email, Age " + "FROM [Team Member] " + "WHERE Email = '" + txtAdd.Text + "'"; 
+0

txtAdd.Text是我正在檢查數據庫的對象。現在我添加一張照片,看看它是什麼樣子。我很遺憾地得到相同的錯誤。 –

+0

這是我的新錯誤發生錯誤:查詢表達式'Email = [email protected]'中的語法錯誤(缺少運算符)。 [email protected]是文本框中與dt相比較的文本[團隊成員] –

+0

是的,第一個例子中的語法肯定是錯誤的。現在它正在看到電子郵件地址。我會爲新錯誤更新我的答案。 – dcreight

相關問題