繁体   English   中英

C#中的DataSet帮助

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM