Cra*_*own 2 c# sql oledb ms-access
任何人都知道为什么代码不起作用?程序说"无效使用null".在访问这个代码是工作,但不雇用.UPDATE cas SET cas.skupaj = CDbl([Odhod]-[Prihod])*24;
try
{
OleDbConnection conn = GetConnection();
conn.Open();
String MyString = @"UPDATE cas SET skupaj = CDbl(Odhod-Prihod)*24 " ;
OleDbCommand command = new OleDbCommand(MyString, conn);
command.ExecuteNonQuery();
conn.Close();
MessageBox.Show("Uspešno dodano v PB!");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Run Code Online (Sandbox Code Playgroud)
在Access立即窗口会话中,这些语句抛出错误94,"无效使用Null".
? CDbl(Null)
? CDbl(10 - Null)
? CDbl(Null - 10)
? CDbl(Null - Null)
Run Code Online (Sandbox Code Playgroud)
修改查询以确保不提供CDbl()Null值.
UPDATE cas
SET skupaj = CDbl(Odhod-Prihod)*24
WHERE
Odhod Is Not Null
AND Prihod Is Not Null
Run Code Online (Sandbox Code Playgroud)
OTOH,目前尚不清楚为什么需要存储该计算值skupaj.您可以使用SELECT查询在需要时返回它,这样您就不必在UPDATE每次Odhod或Prihod值更改时再次运行.
SELECT CDbl(Odhod-Prihod)*24 AS skupaj
FROM cas
WHERE
Odhod Is Not Null
AND Prihod Is Not Null
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
502 次 |
| 最近记录: |