using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OracleClient;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace DataGridViewSamples
{
public partial class ManipulateDataAdapter : Form
{
string connectionString = ConfigReader.GetConfig("DefaultConnString");
OracleConnection conn = null;
OracleCommand cmd = null;
OracleDataAdapter masterAdapter = null;
DataSet ds = new DataSet(); public ManipulateDataAdapter()
{
InitializeComponent();
} private void ManipulateDataAdapter_Load(object sender, EventArgs e)
{
SetupDataSource();
dataGridView1.DataSource = bindingSource1;
} private void SetupDataSource()
{
conn = new OracleConnection(connectionString);
string query = "SELECT * FROM OS_MASTER_DATA";
cmd = new OracleCommand(query, conn);
masterAdapter = new OracleDataAdapter(cmd);
masterAdapter.Fill(ds, "OS_MASTER_DATA");
new OracleCommandBuilder(masterAdapter);
bindingSource1.DataSource = ds;
bindingSource1.DataMember = "OS_MASTER_DATA";
}
private void btnUpdate_Click(object sender, EventArgs e)
{
this.Validate();
this.bindingSource1.EndEdit();
this.masterAdapter.Update(ds, "OS_MASTER_DATA");
}
}
}
更新数据的时候出现下列错误,我看了下,已经有OracleCommandBuilder了,不知道为什么还会报下面的错,TX们帮我看看
Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OracleClient;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace DataGridViewSamples
{
public partial class ManipulateDataAdapter : Form
{
string connectionString = ConfigReader.GetConfig("DefaultConnString");
OracleConnection conn = null;
OracleCommand cmd = null;
OracleDataAdapter masterAdapter = null;
DataSet ds = new DataSet(); public ManipulateDataAdapter()
{
InitializeComponent();
} private void ManipulateDataAdapter_Load(object sender, EventArgs e)
{
SetupDataSource();
dataGridView1.DataSource = bindingSource1;
} private void SetupDataSource()
{
conn = new OracleConnection(connectionString);
string query = "SELECT * FROM OS_MASTER_DATA";
cmd = new OracleCommand(query, conn);
masterAdapter = new OracleDataAdapter(cmd);
masterAdapter.Fill(ds, "OS_MASTER_DATA");
new OracleCommandBuilder(masterAdapter);
bindingSource1.DataSource = ds;
bindingSource1.DataMember = "OS_MASTER_DATA";
}
private void btnUpdate_Click(object sender, EventArgs e)
{
this.Validate();
this.bindingSource1.EndEdit();
this.masterAdapter.Update(ds, "OS_MASTER_DATA");
}
}
}
更新数据的时候出现下列错误,我看了下,已经有OracleCommandBuilder了,不知道为什么还会报下面的错,TX们帮我看看
Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information
主建设了没
OracleCommandBuilder或者SqlCommandBuilder操作的表必须要有主键