我的代码是
string PathConn = "Provider= Microsoft.Jet.OLEDB.4.0;Data Source=" + textBox10.Text + ";Extended Properties=\"Excel 8.0;HDR=Yes;\";";
OleDbConnection conn = new OleDbConnection(PathConn);
OleDbDataAdapter dbDataAdapter = new OleDbDataAdapter("Select * From [" + textBox1.Text + "$]", conn);
DataTable dt = new DataTable();
dbDataAdapter.Fill(dt);
dataGridView1.DataSource = dt;
我得到了错误:
System.Data.OleDb.OleDbException:“ $”不是有效名称。确保它不包含无效字符或标点符号,并且时间不要太长
我在做什么错了?
答案 0 :(得分:1)
可能是“ $” 在
("Select * From "+ textBox1.Text , conn);
尝试
("Select * From ["+ textBox1.Text +"]", conn);
或
@Injectable()
export class MyService{
hoHa:MyObj = null;
someFunction(): Observable<MyObj>{
return httpClient.get<MyObj[]>('url')
.pipe(
map(response => response[]),
catchError(this.handleError('someFunction', {} as MyObj)
)
}
}
对我来说,这似乎是一条更正确的sql语句。
如果我有建议,请尝试为您的文本框指定更有意义的名称,以便将来代码更易于维护。