50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

دستور insert با textbox در C#.NET

سلام

میخوام اطلاعات از textbox در بانک درج بشه

از vs 2010 و sql express استفاده میکنم

پرسیده شده در 1395/03/19 توسط

4 پاسخ

0

حالا هیچ اروری نمیگیری

ولی چیزی هم تو جدول ثبت نمیشه

پاسخ در 1395/03/19 توسط
1

برای اینکار شما باید یک connection و یک command ایجاد کنید و دستور درج رو بوسیله command اجرا کنید. فرض کنید که TextBox ای دارید با نام NameTextBox، همچنین بانکی دارید با نام TestDb که داخل اون جدولی دارید با نام People، برای درج نام در جدول به صورت زیر عمل کنید:

SqlConnection connection = new SqlConnection("data source=.\\sqlexpress; initial catalog=testdb; integrated security=sspi;");
var command = new SqlCommand("insert into [People] ([Name]) values (@name)");
command.Parameters.Add(new SqlParameter("name", NameTextBox.Text));
command.ExecuteNonQuery();

البته میشه با ORM ها مثل Entity Framework کار رو خیلی راحت تر کرد.

پاسخ در 1395/03/19 توسط
0

کد من به شکل زیر هست ایراد این کد چیه که ارور زیر رو میده

  private void btnregister_Click(object sender, EventArgs e)
        {
            SqlConnection objConnection = new
            SqlConnection("Data Source=.\\SQLEXPRESS; AttachDbFilename=" + Application.StartupPath + "\\ord-95.mdf; Integrated Security=True; Connect Timeout=30; User Instance=True");
            SqlCommand objCommand = new SqlCommand();
            objCommand.Connection = objConnection;
        

            objCommand.CommandText = @"insert into [seller] " +
            "(id, namebuild, fnseller, lnseller, amount, objname, shop) " +
            "VALUES(@id, @name-build, @name-Seller, @family-Seller, @amount, @object-name, @shop)";


            objCommand.Parameters.AddWithValue("@id",
            textBox1.Text);
            objCommand.Parameters.AddWithValue("@name-build",
            txtbuild.Text);
            objCommand.Parameters.AddWithValue("@name-Seller",
            txtname.Text);
            objCommand.Parameters.AddWithValue("@family-Seller",
            txtfamily.Text);

            objCommand.Parameters.AddWithValue("@amount",
            txtamount.Text);

            objCommand.Parameters.AddWithValue("@object-name",
            txtobject.Text);

            objCommand.Parameters.AddWithValue("@shop",
            txtshop.Text);



            objConnection.Open();
            objCommand.ExecuteNonQuery();
            objConnection.Close();
            
            


            txtamount.Text = "";
            txtbuild.Text = "";
            txtfamily.Text = "";
            txtname.Text = "";
            txtobject.Text = "";
            txtshop.Text = "";
            MessageBox.Show("ثبت با موفقیت انجام شد", "پیغام",
                MessageBoxButtons.OK, MessageBoxIcon.Information);
        }

خطا:

Incorrect syntax near '-'.
Must declare the scalar variable "@name".
پاسخ در 1395/03/19 توسط
1

برای تعریف نام متغیرها نباید از - استفاده کنید. برای مثال، name-Seller رو به صورت nameSeller بنویسید.

پاسخ در 1395/03/19 توسط

پاسخ شما