首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IndexOutOfRangeException SqlCommand .NET

IndexOutOfRangeException SqlCommand .NET
EN

Stack Overflow用户
提问于 2018-06-27 14:30:25
回答 1查看 90关注 0票数 0

我想要创建一个应用程序,它将使用我的数据库中的数据创建一个.CSV文件,但是我得到了以下错误:

System.IndexOutOfRangeException :'CT_Num‘

当我移除:

代码语言:javascript
复制
command.CommandText = "SELECT [Actionnaire Pal] FROM f_comptet";

代码语言:javascript
复制
dataReader["[Actionnaire Pal]"].ToString() 

我再也不犯任何错误了。

代码语言:javascript
复制
class Program
{
    static void Main(string[] args)
    { 
        SqlConnection conn = DBUtils.GetDBConnection();

        conn.Open();

        SqlCommand command = conn.CreateCommand();
        command.CommandText = "SELECT CT_Num, [Actionnaire Pal] FROM F_COMPTET WHERE CG_NumPrinc = '4110000'";

        SqlDataReader dataReader = command.ExecuteReader();

        StreamWriter sw = new StreamWriter("C:\\facture.csv");

        while (dataReader.Read())
        {
            sw.WriteLine("FAAV" + ";" + "." + ";" + "02" + ";" + "JJ/MM/AAAA" + ";" + "A" + ";" + "11" + ";" + dataReader["CT_Num"].ToString() + dataReader["[Actionnaire Pal]"].ToString() + ";");
        }
            sw.Close();
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-27 14:45:01

变化

代码语言:javascript
复制
dataReader["[Actionnaire Pal]"]

代码语言:javascript
复制
dataReader["Actionnaire Pal"]

[]只是告诉SQL从它们内部的所有内容中创建一个列名,而忽略了空格(通常它会考虑使用空格来表示语句下一部分的开头)。它们实际上并不构成最终列名的一部分。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51065422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档