1

不知道是什么意思,求大神帮忙

“初始化字符串的格式不符合从索引 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;
4

4 回答 4

9

我注意到一个C:\\Users\andrew\\.

看起来您要\\在中间使用 a ,但结果却\a是,这是一个字符的转义序列,它破坏了连接字符串的格式。

于 2013-05-02T15:51:59.523 回答
6

我怀疑这是问题所在:

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";
于 2013-05-02T15:52:25.637 回答
3

a您在“andrew”前面缺少一个反斜杠。它应该如下所示:

connString = "Data   Source=.\\SQLEXPRESS;AttachDbFilename=C:\\Users\\andrew\\Documents\\Vinyl0.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
于 2013-05-02T15:51:48.253 回答
2

C:\\Users\ 是您的问题,您需要将其更改为C:\\Users\\

于 2013-05-02T15:53:03.590 回答