我有一个ACCCESS数据库
它的表有好多关系如图其中 ONLINE 和 USAGE 和 CARD 中有数据我想对 USAGE表和CARD表 插入和操作。
strPath = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:DataBase Password='';User Id=admin;Data source=c:\db.mdb";
System.Data.OleDb.OleDbConnection oleCon1 = new System.Data.OleDb.OleDbConnection(strPath); System.Data.OleDb.OleDbDataAdapter oleDap3 = new System.Data.OleDb.OleDbDataAdapter("delete from card", oleCon1);
DataSet CARD = new DataSet();
oleDap3.Fill(ds3, "card");
它提示他老语法错误是什么原因那?(ONLINE表可以操作)关系表 应该怎么操作那?我想对 CARD表和USAGE表,进行删除`插入等操作?
能不能给代码。
它的表有好多关系如图其中 ONLINE 和 USAGE 和 CARD 中有数据我想对 USAGE表和CARD表 插入和操作。
strPath = "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:DataBase Password='';User Id=admin;Data source=c:\db.mdb";
System.Data.OleDb.OleDbConnection oleCon1 = new System.Data.OleDb.OleDbConnection(strPath); System.Data.OleDb.OleDbDataAdapter oleDap3 = new System.Data.OleDb.OleDbDataAdapter("delete from card", oleCon1);
DataSet CARD = new DataSet();
oleDap3.Fill(ds3, "card");
它提示他老语法错误是什么原因那?(ONLINE表可以操作)关系表 应该怎么操作那?我想对 CARD表和USAGE表,进行删除`插入等操作?
能不能给代码。
DataSet CARD = new DataSet(); 应为DataSet CARD = ds3 DataSet();我是个数据库初学者望大家多讲些,谢谢。
DataSet CARD = new DataSet(); 应为DataSet ds3 = new DataSet();
电脑垃圾了。该换了。刚卡住了发错了 。
其实 。执行删除或者插入的命令。即是:OleDb.OleDbCommand cmd=new OleDbCommand(“你要删除或者插入的语句”,oleCOn1 );
cmd.executeQueny();
oleCon1.Close();
这其中你要抛出异常哦 。
this.m_connstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+System.Environment.CurrentDirectory+"\\live.mdb"; m_ds = new DataSet ();
string strSql = "select * from t_op_goodluck";
System.Data.OleDb.OleDbDataAdapter oda = new OleDbDataAdapter(strSql,this.m_connstring);
oda.Fill(m_ds,"t_op_goodluck"); this.dataGrid1.DataSource = this.m_ds.Tables[0].DefaultView;
this.m_connstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+System.Environment.CurrentDirectory+"\\live.mdb"; m_ds = new DataSet ();
string strSql = "select * from t_op_goodluck";
System.Data.OleDb.OleDbDataAdapter oda = new OleDbDataAdapter(strSql,this.m_connstring);
oda.Fill(m_ds,"t_op_goodluck"); this.dataGrid1.DataSource = this.m_ds.Tables[0].DefaultView;顶!!!
你的代码和我的没有区别呀
{
private DataSet ds;
private OleDbDataAdapter dt;
private clsData c_clsData;
public clsUser()
{
c_clsData = new clsData();
ds = new DataSet();
dt = new OleDbDataAdapter("select * from [user]", c_clsData.conn);
dt.Fill(ds,"User");
} public virtual bool logUser(string[] strUser)
{
DataRow[] dr = ds.Tables["User"].Select("username='" + strUser[0] + "' and userpass='" + strUser[1] + "'");
if (dr.Length == 0)
{
JScript.Alert("用户名或密码错误!");
return false;
}
return true;
} public virtual bool addUser(string[] strUser)
{
DataRow dr = ds.Tables["User"].NewRow();
dr.BeginEdit(); dr.EndEdit();
OleDbCommandBuilder odb = new OleDbCommandBuilder(dt);
ds.Tables["User"].Rows.Add(dr);
try
{
dt.Update(ds, "User");
}
catch(OleDbException e)
{
if (e.ErrorCode == -2147467259)
{
JScript.Alert("用户名已经存在!");
return false;
}
else
{
JScript.Alert("未知错误!");
return false;
}
}
catch (Exception e)
{
JScript.Alert(e.ToString ());
return false;
}
return true;
} public virtual bool updaUserPass(string[] strUser)
{ return true;
} public virtual bool updaUser(string[] strUser)
{
DataRow[] dr = ds.Tables["User"].Select("username='" + strUser[0] + "'");
dr[0]["userpass"] = "";
dr[0]["usertype"] = "";
OleDbCommandBuilder odb = new OleDbCommandBuilder(dt);
try
{
dt.Update(ds, "User");
}
catch (OleDbException e)
{
if (e.ErrorCode == -2147467259)
{
JScript.Alert("");
return false;
}
else
{
JScript.Alert(e.ToString());
return false;
}
}
catch (Exception e)
{
JScript.Alert(e.ToString());
return false;
}
return true;
} public virtual bool delUser(string strUser)
{
DataRow[] dr = ds.Tables["User"].Select("username='"+ strUser +"'");
dr[0].Delete();
OleDbCommandBuilder odb = new OleDbCommandBuilder(dt);
try
{
dt.Update(ds, "User");
}
catch(Exception e)
{
JScript.Alert(e.ToString());
return false;
}
return true;
}
}
关系图
报错图
向USAGE表 CARD表修改数据提示错误;
想ONLINE表 操作没有问题