想要查询:
SELECT student.姓名, class.班级名称, homework.作业编号, homework.作业名称, submit.是否已交, homework.需提交时间
FROM ((class INNER JOIN homework ON class.班级编号 = homework.班级编号) INNER JOIN student ON class.班级编号 = student.班级编号) INNER JOIN submit ON (student.学号 = submit.学号) AND (homework.作业编号 = submit.作业编号);显示在dataGridView。然后可以自己修改提交情况。请问要改如何处理?这是与access数据库连接的。谢谢了!
SELECT student.姓名, class.班级名称, homework.作业编号, homework.作业名称, submit.是否已交, homework.需提交时间
FROM ((class INNER JOIN homework ON class.班级编号 = homework.班级编号) INNER JOIN student ON class.班级编号 = student.班级编号) INNER JOIN submit ON (student.学号 = submit.学号) AND (homework.作业编号 = submit.作业编号);显示在dataGridView。然后可以自己修改提交情况。请问要改如何处理?这是与access数据库连接的。谢谢了!
但是不支持多表更新
使用OleDbDataAdapter
DataSet ds = new DataSet();
OleDbDataAdapter da;
OleDbCommandBuilder cb = new OleDbCommandBuilder(da);
da.Update(ds);
this.dataGridView1.DataSource = ds.Tables[0];
OleDbConnection conn = new OleDbConnection(connectionString);
string sql = "select * from submit";
DataSet ds = new DataSet();
OleDbDataAdapter adapter1;
adapter1 = new OleDbDataAdapter(sql, conn);
OleDbCommandBuilder builder = new OleDbCommandBuilder(adapter1);
adapter1.Update(ds);
dataGridView2.DataSource = ds.Tables[0];
请问这里有错吗?编译都出错了
ACCESS用OLE不是就可以吗?
string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Environment.CurrentDirectory + "\\综合实验.mdb";
OleDbDataAdapter adapter1;
DataSet ds= new DataSet() ; private void button3_Click(object sender, EventArgs e)
{
try
{
OleDbConnection conn = new OleDbConnection(connectionString);
//string sql = "SELECT student.姓名, class.班级名称, homework.作业编号, homework.作业名称, submit.是否已交, homework.需提交时间 FROM ((class INNER JOIN homework ON class.班级编号 = homework.班级编号) INNER JOIN student ON class.班级编号 = student.班级编号) INNER JOIN submit ON (student.学号 = submit.学号) AND (homework.作业编号 = submit.作业编号);";
string sql = "select * from student";
DataSet ds = new DataSet();
adapter1 = new OleDbDataAdapter(sql, conn); OleDbCommandBuilder builder = new OleDbCommandBuilder(adapter1);
adapter1.Update(ds);
dataGridView2.DataSource = ds.Tables[0];
tablenull = true;
}
catch (OleDbException err)
{
MessageBox.Show(err.Message, "打开失败!");
} }是想能实现多个表的数据都连到dataGridView。但是运行时错误:adapter1.Update(ds); Update 无法找到 TableMapping['Table'] 或 DataTable“Table”。
ds现在没有表的,你更新肯定出错
work.作业编号="xxxxxxx" //假定这是主键字段对应的属性
...为其它属性设置值EntityQuery<Homework>.Update(work);//保存到数据库
啥时候Open数据库连接,完全由数据框架决定,它比你手工开关更有效率,比如把你的这个方法加入某个组件的事务中。默认的数据连接对象采用何种数据库类型,通过应用程序的配置文件生成,比如:<Connections>
<add Name="SqlConn" ConnectionString="...." Provider="SqlServer" />
<!--<add Name="AccessConn" ConnectionString="...." Provider="OleDb" />-->
</Connections>