Insert record into sql database express when button pressed

Last post 05-05-2008 6:06 AM by ShivaKarthik. 3 replies.

Sort Posts:

  • Insert record into sql database express when button pressed

    04-30-2008, 12:36 PM
    • Loading...
    • Medros
    • Joined on 04-30-2008, 4:27 PM
    • Posts 5

    I'm new to asp.net and I have gotten quite far with books and such but I'm stuck at this point. I have a web form that is mostly populated with data pulled from AD and all the user does is make a selection in two drop lists and enter their initials to sign. I can't figure out how to insert a record into a table when buttin pressed. I verified that all the data types are correct so it shoud pass the info but its just not going anywhere. I've atached the code below.

    Thanks,

    protected void accept_btn_Click(object sender, EventArgs e)

    {

    string adPath = LDAP://DC=********,DC=***; //Path to your LDAP directory server

    members adAuth = new members(adPath);

     

    string username = Context.User.Identity.Name;

    string computer_name = System.Environment.MachineName;

    string comp_type = comptype.SelectedValue.ToString();

    string install_type = installtype.SelectedValue.ToString();

    string date = DateTime.Now.ToString();

    string email = adAuth.getemail(Context.User.Identity.Name);

    string agree = initials_txtbox.Text;string title = "Office";

     

    test_lbl.Text = (username +
    " " + computer_name + " " + comp_type + " " + install_type + " " + date + " " + email + " " + agree + " " + title);

     

    System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();

    System.Data.OleDb.OleDbCommand command = new System.Data.OleDb.OleDbCommand();

    System.Data.OleDb.OleDbParameter parameter1 = new System.Data.OleDb.OleDbParameter();

    System.Data.OleDb.OleDbParameter parameter2 = new System.Data.OleDb.OleDbParameter();

    System.Data.OleDb.OleDbParameter parameter3 = new System.Data.OleDb.OleDbParameter();

    System.Data.OleDb.OleDbParameter parameter4 = new System.Data.OleDb.OleDbParameter();

    System.Data.OleDb.OleDbParameter parameter5 = new System.Data.OleDb.OleDbParameter();

    System.Data.OleDb.OleDbParameter parameter6 = new System.Data.OleDb.OleDbParameter();

    System.Data.OleDb.OleDbParameter parameter7 = new System.Data.OleDb.OleDbParameter();

    System.Data.OleDb.OleDbParameter parameter8 = new System.Data.OleDb.OleDbParameter();conn.ConnectionString = "provider=System.Data.SqlClient; Data Source=./SQLEXPRESS;AttachDbFilename=|DataDirectory|/software.mdf;Integrated Security=True;User Instance=True";

    command.Connection = conn;

    command.CommandText = "INSERT INTO [download_table] (username, computer_name, computer type, install type, date, email, agree, title) VALUES (?,?,?,?,?,?,?,?)";

    command.CommandType = CommandType.Text;

    parameter1.ParameterName = "username";

    parameter1.DbType = DbType.String;

    parameter1.Value = username;

    command.Parameters.Add(parameter1);

    parameter2.ParameterName =
    "computer_name";parameter2.DbType = DbType.String;

    parameter2.Value = computer_name;

    command.Parameters.Add(parameter2);

    parameter3.ParameterName =
    "comptype";parameter3.DbType = DbType.String;

    parameter3.Value = comp_type;

    command.Parameters.Add(parameter3);

    parameter4.ParameterName =
    "installtype";parameter4.DbType = DbType.String;

    parameter4.Value = install_type;

    command.Parameters.Add(parameter4);

    parameter5.ParameterName =
    "date";parameter5.DbType = DbType.DateTime;

    parameter5.Value = date;

    command.Parameters.Add(parameter5);

    parameter6.ParameterName =
    "email";parameter6.DbType = DbType.String;

    parameter6.Value = email;

    command.Parameters.Add(parameter6);

    parameter7.ParameterName =
    "agree";parameter7.DbType = DbType.String;

    parameter7.Value = agree;

    command.Parameters.Add(parameter7);

    parameter8.ParameterName =
    "title";parameter8.DbType = DbType.String;

    parameter8.Value = title;

    command.Parameters.Add(parameter8);

    try

    {

    conn.Open();

    command.ExecuteNonQuery();

    }

    catch (Exception ex)

    {

    }

    finally

    {

    conn.Close();

    }

    }

  • Re: Insert record into sql database express when button pressed

    05-05-2008, 5:09 AM
    Answer

    I think if you are using ? marks for parameters, you have to use a numeric naming convention for the parameter names.

    Try replacing the ? with alpha names, like @email in the statement.  Ditto where you name the parameter later.

    A word of advice, don't name your parameter objects parameter1, etc.  Name them after what they represent, like paramEmail.

    That way, you're less likely to accidentally put the wrong parameter value into the wrong column.

     

    If this answered your question, be sure to mark it as the answer. That way, everybody after you will know it's the answer also!
  • Re: Insert record into sql database express when button pressed

    05-05-2008, 5:24 AM
    Answer

    In your catch block do "Response.Write ex.toString();" to see what the error message is. Now you just catch the error and do nothing with it, and then it's pretty hard to troubleshoot :)

    One thing I'm pretty sure if is that your column names with spaces in them needs to be put inside brackets: [computer type] and [install type]

    If this answered your question, be sure to mark it as the answer. Then you give credit to people who help you, and others will know that the question is already answered.
    My SQL Server blog (swedish): http://www.underlandet.com/SqlServer
  • Re: Insert record into sql database express when button pressed

    05-05-2008, 6:06 AM
    Answer
    • Loading...
    • ShivaKarthik
    • Joined on 04-15-2008, 1:11 PM
    • Hyderabad
    • Posts 218

    Ya After refering to the entire code i got the point that you didnot Place a sign of "@" in between declaring your parameters.Ok let me explain you the code here.I am declaring in Sqlserver please convert this into your oledbServer

    The code goes like this

    Sqlconnection con;

    Sqlcommand cmd;

    con=new sqlconnection;

    con.ConnectionString=""+ConfigurationManger.ConnectionStrings["connectionstring"];

    con.open();

    cmd=new SqlCommand("Insert into ("Ur Tablename") ("Columname1,Columnname2,Columnname") Values("@parameter1,@parameter2,@Parameter3")",con);

    cmd.Parameters.Add("@Parameter1",sqldbtype.("Ur Datatype"));

    cmd.parameters["@parameter1"].Value=("The value from where you desire to insert for example("textbox1.Text"));

    cmd.Parameters.Add("@Parameter2",sqldbtype.("Ur Datatype"));

    cmd.parameters["@parameter2"].Value=("The value from where you desire to insert for example("textbox1.Text"));

    cmd.Parameters.Add("@Parameter3",sqldbtype.("Ur Datatype"));

    cmd.parameters["@parameter3"].Value=("The value from where you desire to insert for example("textbox1.Text"));

    cmd.ExecuteNonQuery();

    Mark As Answer if this helps you

    Further Queries Recommended

    Happy CodingWink

     

     

    Regards,
    B.ShivaKarthik
    Software Engineer
    Hyderabad,India
Page 1 of 1 (4 items)
Microsoft Communities
Page view counter