[英]DataSet help in C#
我在c#中连接了一个sql数据库,现在尝试将内容放入数据集中。 我将如何做到这一点?
我的代码是:
string constr = "Data Source=ECEE;Initial Catalog=Internet_Bankaciligi;User ID=sa";
SqlConnection conn = new SqlConnection(constr);
SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter("Select * from Internet_Bankaciligi", conn);
DataSet myDataSet = new DataSet();
DataRow myDataRow;
SqlCommandBuilder mySqlCommandBuilder = new SqlCommandBuilder(mySqlDataAdapter);
mySqlDataAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
mySqlDataAdapter.Fill(myDataSet,"Internet_Bankaciligi");
myDataRow = myDataSet.Tables["IB_Account"].NewRow();
myDataRow["Account_ID"] = "NewID";
myDataRow["Branch_ID"] = "New Branch";
myDataRow["Amount"] = "New Amount";
myDataSet.Tables["Customers"].Rows.Add(myDataRow);
该行:“ mySqlDataAdapter.Fill(myDataSet,” Internet_Bankaciligi“);” 给出错误消息,例如“无效的对象名称“ Internet_Bankaciligi”。 但是Internet_Bankaciligi是我的数据库名称。
另外,如果我使用:
SqlCommand selectCMD = new SqlCommand("select (*) from IB_Account", conn);
SqlDataAdapter myAdapter = new SqlDataAdapter();
myAdapter.SelectCommand = selectCMD;
myAdapter.Fill(myDataSet);
然后:“ SqlCommand selectCMD = new SqlCommand(“从IB_Account中选择(*)”,conn);“ 给出错误,指出语法无效。 我该如何正确?
如果“ Internet_Bankaciligi
”是您的实际数据库名称,那么您将无法直接对其执行SQL命令。 您必须更改SQL以从表或视图中进行选择。
您的第二个示例不起作用,因为“ SELECT (*)
”是无效的语法。 它应该是“ SELECT * FROM IB_Account
” ...没有括号。
我在Sql Server 2008中检查了以下语句:
Select (*) from <table>
没用 我从未见过这种语法,在sqlserver 2005,Oracle或sqlite中都没有。
试试这个:
Select * from <table>
编辑:如果我是我,我将尝试使用强类型的数据集 ,甚至使用实体框架 ,两者都更先进,更易于使用。 谷歌他们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.