PDA

View Full Version : ذخیره نشدن دیتاها در database



mesteramir
دوشنبه 23 شهریور 1394, 18:24 عصر
سلام دوستان
تو برنامه ای که دارم روش کار میکنم این مشکلو دارم که وقتی توی فرم یه سری دیتاها رو وارد میکنم توی data grid view نشون میده ولی وقتی از فرم خارج میشم دیگه نشون نمیده و توی دیتابیس ذخیره نمیشه
چطوری درست میشه؟؟؟
سورسشم این هستش

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;


namespace WindowsFormsApplication4
{
public partial class formadd : Form
{
public formadd()
{
InitializeComponent();
}


private void formadd_Load(object sender, EventArgs e)
{


}


private void btnsave_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString =
@"Data Source=.\SQLEXPRESS;
AttachDbFilename= |DataDirectory|\svtbl.mdf;
Integrated Security=True;User Instance=True";
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
string sql = "insert into student (sid,sname,sfamily,smark)";
sql += "values ({0},'{1}','{2}',{3})";
sql = string.Format(sql,
txtid.Text,
txtname.Text,
txtfamily.Text,
txtmark.Text);
cmd.CommandText = sql;
cmd.ExecuteNonQuery();


this.Close();


}
}
}

abdullah20
سه شنبه 24 شهریور 1394, 00:28 صبح
اگر برنامه را میبندید و دوباره اجرا میکنید این مشکل پیش میاد باید بگم دیتابیس با اجرای دوباره برنامه به پوشه Debug کپی میشه

pbm_soy
سه شنبه 24 شهریور 1394, 01:15 صبح
وقتی از فرم خارج میشوید ودوباره وارد میشوید دادهای جدید را نشان نمیدهد یا وقتی برنامه را کاملا قطع میکنید و خارج میشوید ودوباره اجرا میکنید اینکار را انجام میدهد؟
اگر حالت دوم است احتمالا یک فایل دیتابیس در فولدر سورس دارید و وقتی برنامه را اجرا میکنید یک فایل اجرایی درست میکند و آنرا کپی میکند به فولدر bin/debug و بهمراه آن دیتابیس را هم کپی میکند این عملیات در هربار اجرا تکرار میشود و هربار آن دیتابیس خالی کپی میشود و دادهای ذخیره شده قبلی رونویسی میشود برای حل این مورد در properties پروژه فولدر output را برابر نقطه قرار دهید با اینکار میگوید که فایل اجرای و کامپایل شده در کنار فایلهای سورس ایجاد شود و عملیات کپی صورت نگیرد

mesteramir
سه شنبه 24 شهریور 1394, 09:22 صبح
اگر برنامه را میبندید و دوباره اجرا میکنید این مشکل پیش میاد باید بگم دیتابیس با اجرای دوباره برنامه به پوشه Debug کپی میشه

بله همینطوره که گفتید
توی output لینک debug رو حذف کردم و به جاش '.' گذاشتم درست شد(البته با راهنمایی pbm_soy عزیز)
ممنون ازتون

mesteramir
سه شنبه 24 شهریور 1394, 09:25 صبح
وقتی از فرم خارج میشوید ودوباره وارد میشوید دادهای جدید را نشان نمیدهد یا وقتی برنامه را کاملا قطع میکنید و خارج میشوید ودوباره اجرا میکنید اینکار را انجام میدهد؟
اگر حالت دوم است احتمالا یک فایل دیتابیس در فولدر سورس دارید و وقتی برنامه را اجرا میکنید یک فایل اجرایی درست میکند و آنرا کپی میکند به فولدر bin/debug و بهمراه آن دیتابیس را هم کپی میکند این عملیات در هربار اجرا تکرار میشود و هربار آن دیتابیس خالی کپی میشود و دادهای ذخیره شده قبلی رونویسی میشود برای حل این مورد در properties پروژه فولدر output را برابر نقطه قرار دهید با اینکار میگوید که فایل اجرای و کامپایل شده در کنار فایلهای سورس ایجاد شود و عملیات کپی صورت نگیرد

مرسی بابت راهنماییتون:لبخندساده:
از توی output لینکارو که عوض کردم درست شد ممنون