我有一种情况,我有一个名为 Gas Flow Rates 的Access表,我想添加记录。当我尝试为类似的表 Common Station 运行插入查询时,出现以下错误:
“错误hy000:语法错误,在查询不完整查询子句中”
代码是:
using System;
using System.Data.Odbc;
class MainClass
{
static void Main(string[] args)
{
string connectionString = "Dsn=Gas_meter";
string sqlins = "";
OdbcConnection conn = new OdbcConnection(connectionString);
OdbcCommand cmdnon = new OdbcCommand(sqlins, conn);
conn.Open();
try
{
cmdnon.CommandText = "INSERT INTO 'Common station' ( S1Flow, S2Flow, S3Flow, S4Flow) VALUES (9999,999, 999, 999)";
//Once the above line works replace it with cmdnon.CommandText= "INSERT INTO Gas Flow Rates ( S1Flow, S2Flow, S3Flow, S4Flow) VALUES (9999,999, 999, 999)"
int rowsAffected = cmdnon.ExecuteNonQuery();
Console.WriteLine(rowsAffected);
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
conn.Close();
}
}
}
我如何克服这个错误?
答案 0 :(得分:41)
用方括号围绕间隔开的项目:
[Common station]
然后拍打设计数据库的人。
答案 1 :(得分:5)
SELECT * FROM [My Crazy Table With Spaces and Other Chars!]
使用括号“引用”表格和字段名称。
答案 2 :(得分:4)
cmdnon.CommandText = "INSERT INTO '[Common station]' ( S1Flow, S2Flow, S3Flow, S4Flow) VALUES (9999,999, 999, 999)";
//Once the above line works replace it with cmdnon.CommandText= "INSERT INTO Gas Flow Rates ( S1Flow, S2Flow, S3Flow, S4Flow) VALUES (9999,999, 999, 999)"
答案 3 :(得分:2)
我认识的派对迟到了,但刚刚在这里解决了我自己的问题...... 使用ODBC连接到SQL Db。在Access 2007中播放。
表名是Employee_Appointment Extra Detail Custom 要选择的语法如下 SQlRecordSet.Open“从[员工]中选择*。[约会额外细节自定义]”,Conn,adOpenStatic,adLockOptimistic
希望这可以节省其他人几个小时的游戏时间!