private void button2_Click(object sender, System.EventArgs e)
{
string source="server=ks052;uid=hdh;pwd=huang;database=hdh";
string strsql="select * from tabx"; SqlDataAdapter da=new SqlDataAdapter(strsql,source);
DataSet ds=new DataSet();
da.Fill(ds,"tab");
dataGrid1.SetDataBinding(ds,"tab");
}
{
string source="server=ks052;uid=hdh;pwd=huang;database=hdh";
string strsql="select * from tabx"; SqlDataAdapter da=new SqlDataAdapter(strsql,source);
DataSet ds=new DataSet();
da.Fill(ds,"tab");
dataGrid1.SetDataBinding(ds,"tab");
}
解决方案 »
- C#参数化问题
- 关于c#用SqlParameter插入数据库的问题
- 求msChart,Winform 的应用实例
- 十万火急,求教asp.net 2005中的menu控件
- 关于,.net访问两个数据库,出现安全上下文访问的问题
- 如何动态得形成类似INFOPATH的表格,写xml
- 基于arcgis engine9.2 的c#插件开发,如何建立主框架啊?????
- JavaScript getElementById问题
- 关于WINFORM调用线程池的问题!
- 一个关于索引器和属性的难题,在线等待
- 请问哪位大虾有C#实现的Rijndael算法的源程序?
- Application center test这个工具在.net的哪个安装盘里面??求救
{
string source="server=ks052;uid=hdh;pwd=huang;database=hdh";
string strsql="insert into tabx values('H3',right(cast(year(getdate()) as varchar),1)+cast(month(getdate()) as varchar)+cast(day(getdate()) as varchar),'M',6000)"; SqlConnection scnTest=new SqlConnection(source);
SqlCommand scmTest=new SqlCommand(strsql,scnTest);
scnTest.Open();
scmTest.ExecuteNonQuery();
scnTest.Close();
}
可以
1、手动写,参考楼上
2、明确写出table名字,代价是不能改了
3、用sqlcommandbuilder
但是我在oracle中重新建了一个用户,在新用户中建了一个相同的表,就不行了,就插入不进去,还提示上面的错误。
完整的代码
public class Dataset
{
public Dataset()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
private OleDbDataAdapter adapter;
private OleDbConnection thisConnection;
private System.Data.DataSet dbview=new DataSet();
private string connDB;
private string tabledataset="dataset";
private string tabledatafile="datafile";
private string metatable;
private XmlNodeList nodelist;
private string sql;
private OleDbCommandBuilder dbCommBld ;
private DataRow newRow;
public string InsertDatasetByXml(string SDirectory,string Depodir)
{
//解析xml文件取得数据库的连接串和表
XmlDocument myDoc=new XmlDocument();
myDoc.Load(SDirectory);
XmlElement root=myDoc.DocumentElement;
connDB=root.SelectSingleNode("//Metadata//server//database").Attributes.Item(1).InnerText;
thisConnection=new OleDbConnection(connDB);
thisConnection.Open();
//更新dataset表内容
sql=@"select * from "+tabledataset;
adapter=new OleDbDataAdapter(sql,thisConnection);
dbCommBld = new OleDbCommandBuilder(adapter);
adapter.Fill(dbview,"Dataset"); nodelist=root.SelectNodes("//Metadata//server//database//table//field");
newRow=dbview.Tables["Dataset"].NewRow();
for(int i=0;i<nodelist.Count;i++)
{
if((nodelist[i].Attributes.Item(0).InnerText)=="datasetid")//SelectSingleNode("fieldname");
{
newRow["datasetid"]=nodelist[i].InnerText;
string test=nodelist[i].InnerText;
break;
}
}
XmlNode temp1=root.SelectSingleNode("//Metadata//Format");
XmlNode temp2=root.SelectSingleNode("//Metadata//MainFile");
newRow["mainfile"]=temp2.InnerText;
newRow["format"]="'"+temp1.InnerText;
newRow["depotdir"]=Depodir;
dbview.Tables["Dataset"].Rows.Add(newRow);
adapter.UpdateCommand=dbCommBld.GetUpdateCommand();
adapter.Update(dbview,"Dataset");
}
}
}
(仅是一种参考)