PDA

View Full Version : سوال: اشکال در ذخیره اطلاعات



Hossenbor
شنبه 29 فروردین 1388, 19:04 عصر
اینم کد
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;

namespace 1l
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'database1DataSet.detail' table. You can move, or remove it, as needed.
this.detailTableAdapter.Fill(this.database1DataSet .detail);

}

private void button1_Click(object sender, EventArgs e)
{
detailTableAdapter.Update(database1DataSet);
}
}
}
اگه مقدار ذخیره شده رو تغییر بدی خطا می گیره چرا(می خواستم کل برنامه رو بفرستم اما آپلود نکرد به بزرگواری خودتون ببخشید)
:متفکر:

Hossenbor
شنبه 29 فروردین 1388, 19:08 عصر
ببخشید فراموش کردم بگم خطا از این کد
detailTableAdapter.Update(database1DataSet);

Hossenbor
شنبه 29 فروردین 1388, 19:11 عصر
اینم خطا
detailTableAdapter.Update(database1DataSet);

rnm123
شنبه 29 فروردین 1388, 21:41 عصر
چه خطایی میگیره ؟

hasan_esfahan
شنبه 29 فروردین 1388, 22:30 عصر
دوست عزیز شما دارید از دیتا ست استفاده می کنید و در زمان update نام جدول را ذکر نکردید

Hossenbor
یک شنبه 30 فروردین 1388, 10:32 صبح
عنوان خطا
InvalidOperationException was unhandled
متن خطا
Update requires a valid UpdateCommand when passed DataRow collection with
modified rows

اینم خطا
یک خواهشی از آقا حسن گل داشتم لطفا یک مثال بزن

rnm123
یک شنبه 30 فروردین 1388, 22:55 عصر
سعی کنید در دستور آپدیت نام جدول را ذکر کنید همانطوری که حسن آقا گفتند بصورت زیر


detailTableAdapter.Update(database1DataSet,tablena me);

Hossenbor
دوشنبه 31 فروردین 1388, 00:56 صبح
عارضم خدمت دوستان عزیز اسم دیتا بیسمDatabase1.sdf با فیلدهای نام وفامیل وتلفن اگه میشم کد زیر با دیتا بیس هماهنگ کنید ممنون میشم
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.OleDb;

namespace WindowsFormsApplication4
{
public partial class Form1 : Form
{
private DataTable dataTable1 = new DataTable();
private OleDbConnection oleDbConnection1 = new OleDbConnection();
private OleDbDataAdapter oleDbDataAdapter1 = new OleDbDataAdapter();

public Form1()
{
InitializeComponent();
this.oleDbConnection1.ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = |DataDirectory|\\Data.dll; Persist Security Info = True";
this.oleDbDataAdapter1.SelectCommand = new OleDbCommand("SELECT ID, Field1, Field2 FROM Table1", this.oleDbConnection1);
this.oleDbDataAdapter1.Fill(this.dataTable1);
this.dataGridView1.DataSource = dataTable1;

//Initialize UPDATE Command.
this.oleDbDataAdapter1.UpdateCommand = new OleDbCommand("UPDATE Table1 SET Field1 = @field1, Field2 = @field2 WHERE ID = @id", this.oleDbConnection1);
this.oleDbDataAdapter1.UpdateCommand.Parameters.Ad dWithValue("@field1", typeof(string)).SourceColumn = "Field1";
this.oleDbDataAdapter1.UpdateCommand.Parameters.Ad dWithValue("@field2", typeof(string)).SourceColumn = "Field2";
this.oleDbDataAdapter1.UpdateCommand.Parameters.Ad dWithValue("@id", typeof(int)).SourceColumn = "ID";

//Initialize INSERT Command.
this.oleDbDataAdapter1.InsertCommand = new OleDbCommand("INSERT INTO Table1 (Field1, Field2) VALUES (@field1, @field2)", this.oleDbConnection1);
this.oleDbDataAdapter1.InsertCommand.Parameters.Ad dWithValue("@field1", typeof(string)).SourceColumn = "Field1";
this.oleDbDataAdapter1.InsertCommand.Parameters.Ad dWithValue("@field2", typeof(string)).SourceColumn = "Field2";

//Initialize DELETE Command.
this.oleDbDataAdapter1.DeleteCommand = new OleDbCommand("DELETE FROM Table1 WHERE ID = @id", this.oleDbConnection1);
this.oleDbDataAdapter1.DeleteCommand.Parameters.Ad dWithValue("@id", typeof(int)).SourceColumn = "ID";

this.dataGridView1.Columns["ID"].Visible = false;
this.dataGridView1.Columns["Field1"].HeaderText = "اسم";
this.dataGridView1.Columns["Field2"].HeaderText = "فامیلی";
}

private void button1_Click(object sender, EventArgs e)
{
this.oleDbDataAdapter1.Update(dataTable1);
}

private void خروجToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
}
private void دربارهToolStripMenuItem_Click(object sender, EventArgs e)
{
(new About()).Show();
}

}
}