C# SqlCeDataAdapter仅返回一行

C# SqlCeDataAdapter仅返回一行,c#,datatable,sql-server-ce,C#,Datatable,Sql Server Ce,我正在使用SQL server Ce并试图从表作者那里获取AuthorID,其中fName+''+lName=textBox3.text 查询必须返回存储在DataTable中的2个作者Id(2行),但我只得到一行第一个作者Id public static DataTable Select(string sql) { SqlCeDataAdapter DataAdapter = new SqlCeDataAdapter(sql, conn); DataTa

我正在使用SQL server Ce并试图从表作者那里获取AuthorID
,其中fName+''+lName=textBox3.text

查询必须返回存储在DataTable中的2个作者Id(2行),但我只得到一行第一个作者Id

public static DataTable Select(string sql)
    {
        SqlCeDataAdapter DataAdapter = new SqlCeDataAdapter(sql, conn);
        DataTable dt = new DataTable();           
        DataAdapter.Fill(dt);
        return dt;
    }

private void pictureBox1_Click(object sender, EventArgs e)
{
        string[] authors = textBox6.Text.Split(',');
        DataTable dt;
        string sql = @"select AuthorID from Author where ((fName + ' ' + lName = '" + authors[0] + @"')";
        for (int i = 0; i < authors.Length; i++)
        {
            if (i != authors.Length - 1)
            {
                sql += @"OR (fName + ' ' + lName = '" + authors[++i] + @"'))";                    
            }
        }
        dt = Form1.Select(sql);            
        dataGridView1.DataSource = dt;
        for (int i = 0; i < authors.Length; i++)
        {
            Form1.Query(@"insert into Book_Author ([ISBN], AuthorID) values (" + ISBN + ", " + dt.Rows[i]["AuthorID"] + ")");
        }
公共静态数据表选择(字符串sql)
{
SqlCeDataAdapter DataAdapter=新的SqlCeDataAdapter(sql,conn);
DataTable dt=新的DataTable();
DataAdapter.Fill(dt);
返回dt;
}
私有无效图片单击(对象发送方,事件参数e)
{
string[]authors=textBox6.Text.Split(',');
数据表dt;
字符串sql=@“从作者中选择AuthorID,其中((fName++'+lName=''+authors[0]+@')”;
for(int i=0;i

有什么帮助吗?

请显示您的完整代码?很难像这样阅读。@user3212556编辑您的问题。在那里添加代码。请编辑您的问题并插入代码。@rockstartprogrammer完成