L'insertion dans la table à partir d'un formulaire en asp.net

J'ai une page que vous remplissez quelques informations et en fonction de cette information, je insérer une nouvelle ligne dans la base de données. Voici la capture d'écran du formulaire qui est rempli:

L'insertion dans la table à partir d'un formulaire en asp.net

Voici mon code à insérer dans la base de données lorsqu'il est cliqué bouton envoyer:

 protected void CreateCourseButton_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection();
    con.ConnectionString = "Data Source=.\\SQLEXPRESS;Initial Catalog=University;Integrated Security=True;Pooling=False";

    string query1 = "insert into Courses(CRN,CourseName,StudyLevel,Capacity,Instructor,Credits,Prerequisite) values ("
        + courseID.Text + "," + courseName.Text + "," + studyLevel.SelectedValue + "," + capacity.Text + "," + "Admin," + credits.Text + "," + prereq.Text + ")";



    SqlCommand cmd1 = new SqlCommand(query1, con);
    con.Open();
    cmd1.ExecuteNonQuery();
    con.Close();
}

Le problème est, je reçois le message d'erreur suivant lorsque je clique sur envoyer:

Server Error in '/Bannerweb' Application.
Incorrect syntax near the keyword 'to'.
Description: An unhandled exception occurred during the execution of the current web     
request. Please review the stack trace for more information about the error and where   
it originated in the code. 
Exception Details: System.Data.SqlClient.SqlException: Incorrect syntax near the   
keyword 'to'.
Source Error: 
Line 32:         SqlCommand cmd1 = new SqlCommand(query1, con);
Line 33:         con.Open();
Line 34:         cmd1.ExecuteNonQuery();
Line 35:         con.Close();
Line 36:     }
Source File: c:\Banner\Bannerweb\Pages\CreateCourse.aspx.cs    Line: 34 
Stack Trace: 
[SqlException (0x80131904): Incorrect syntax near the keyword 'to'.]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean     
breakConnection) +2084930
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean    
breakConnection) +5084668
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() +234
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler,   
SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject  
stateObj) +2275
System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean 
async) +228
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result,     
String methodName, Boolean sendToPipe) +326
System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +137
CreateCourse.CreateCourseButton_Click(Object sender, EventArgs e) in  
c:\Banner\Bannerweb\Pages\CreateCourse.aspx.cs:34
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +118
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +112

La ligne 34 est:

cmd1.ExecuteNonQuery();

Quelqu'un peut m'aider avec cette erreur?

Grâce

Essayez et imprimer que query1, vous pouvez voir par vous-même. Astuce: l'esprit de la cite.
C'est une partie du problème avec amputation des requêtes SQL comme vous êtes, vous vous retrouvez dans des situations où la requête SQL n'est pas "très" match up. Vous devez utiliser des requêtes paramétrées et de laisser le fournisseur de faire la plupart du travail pour vous. Je prendrais la requête de la production et de l'exécuter sur la base de données vous - même: vous verrez ce que le problème est là.
montrez-moi le Line: 34 de CreateCourse.aspx.cs page
la ligne 34 est cmd1.ExecuteNonQuery(); vous pouvez voir aussi dans le édité question
il suffit de changer votre requête d'insertion comme je l'ai mentionné, et vérifiez que vous avez trouvé cette erreur à nouveau, ou, ni,si votre champ de données d'id de type nvarchar ou varchar ensuite utiliser '"++"' comme ça dans votre requête pour ce champ.

OriginalL'auteur yrazlik | 2013-05-14