【问题标题】:Format of the initialization string does not conform to specification starting at index 50初始化字符串的格式不符合从索引 50 开始的规范
【发布时间】:2013-05-02 15:49:52
【问题描述】:

我不知道这是什么意思,请我帮忙

"初始化字符串的格式不符合规范 从索引 50 开始。”

代码:

InitializeComponent();
connString = "Data   Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Users\andrew\\Documents\\Vinyl0.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
query = "SELECT * FROM Record";
dAdapter = new SqlDataAdapter(query, connString); //This is where the error appears.
dTable = new DataTable();
cBuilder = new SqlCommandBuilder(dAdapter);
cBuilder.QuotePrefix = "[";
cBuilder.QuoteSuffix = "]";
myDataView = dTable.DefaultView;
dAdapter.Fill(dTable);
BindingSource bndSource = new BindingSource();
bndSource.DataSource = dTable;

【问题讨论】:

    标签: c#


    【解决方案1】:

    我注意到C:\\Users\andrew\\

    看起来您打算在中间使用\\,但最终却是\a,这是一个字符的转义序列,会破坏连接字符串的格式。

    【讨论】:

      【解决方案2】:

      我怀疑这是问题所在:

      C:\\Users\andrew
      

      \a 是“警报”字符 (U+0007) 的转义序列...我怀疑您想要一个反斜杠后跟“a”。你很不幸,你没有得到一个编译时错误,如果你有 \j 或其他一些无效的转义序列,你就会这样做。

      我建议改用逐字字符串文字,这样您就不需要将所有反斜杠加倍:

      connString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\andrew\Documents\Vinyl0.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
      

      【讨论】:

        【解决方案3】:

        您在“andrew”的a 前面缺少一个反斜杠。它应该是这样的:

        connString = "Data   Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Users\\andrew\\Documents\\Vinyl0.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
        

        【讨论】:

          【解决方案4】:

          C:\\Users\是你的问题,你需要改成C:\\Users\\

          【讨论】:

            猜你喜欢
            • 2012-01-04
            • 2015-01-21
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多