簡體   English   中英

插入錯誤:關鍵字“ SELECT”附近的語法不正確

[英]Insert Error:Incorrect syntax near the keyword 'SELECT'

我正在嘗試從asp.net表單上的代碼后面插入,

我有兩個表:表Trainings training_id training_Date。

表人員培訓ID training_id名稱,部門

難道我做錯了什么?

我需要從表單中插入值,再從查找表中選擇值,其中訓練ID等於下拉選擇的值。

private void InsertInfo()
    {

        SqlConnection conn = new SqlConnection(GetConnectionString());
        string sql = "INSERT INTO personTraining (name,training_id,training,trainingDate.trainingHour,trainingSession)  VALUES (@Val1,SELECT (training_id,training,trainingDate.trainingHour,trainingSession FROM tbl_training WHERE training_id = dpDate.selectedValue))";
        try
        {
            conn.Open();
            SqlCommand cmd = new SqlCommand(sql, conn);
            cmd.Parameters.AddWithValue("@Val1", txtName.Text);
//will add rest of form fields

            cmd.CommandType = CommandType.Text;
            cmd.ExecuteNonQuery();
        }

您將需要使用類似

INSERT INTO personTraining
            (name,
             training_id,
             training,
             trainingDate.trainingHour,
             trainingSession)
SELECT @Val1,
       training_id,
       training,
       trainingDate.trainingHour,
       trainingSession
FROM   tbl_training
WHERE  training_id = dpDate.selectedValue  

您不能有這樣的混合VALUES子句/ SELECT語句。

嘗試這個:

INSERT INTO personTraining (
    name,
    training_id,
    training,
    trainingDate.trainingHour,
    trainingSession)  
SELECT 
    @Val1,
    training_id,
    training,
    trainingDate.trainingHour,
    trainingSession 
FROM tbl_training tt 
WHERE training_id = dpDate.selectedValue

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM