我有一个列标题 start_time 存储,例如 12:30。如果它包含 0:00 作为时间,我想删除一行,但我还没有成功。这是我的代码供参考。
DELETE *
FROM course_times
WHERE start_time IS NULL
OR start_time = '0:00';
另外,在微软访问中,我是否可以在窗口中运行 sql 而不必将其列为查询并保存?谢谢。
我有一个列标题 start_time 存储,例如 12:30。如果它包含 0:00 作为时间,我想删除一行,但我还没有成功。这是我的代码供参考。
DELETE *
FROM course_times
WHERE start_time IS NULL
OR start_time = '0:00';
另外,在微软访问中,我是否可以在窗口中运行 sql 而不必将其列为查询并保存?谢谢。
您需要用#
符号分隔日期和/或时间,即:
DELETE *
FROM course_times
WHERE start_time IS NULL
OR start_time = #0:00#;
对于您的第一个问题,@Monty Wild 给出了明显正确的答案。
对于您的第二个问题,我不确定您在“窗口中”运行 SQL 的确切含义,因此我将列出几个选项:
您可以只创建一个新查询,而不保存它,切换到 SQL 视图,输入您的 SQL 代码并执行它。这使您可以一次运行一个语句。
您可以打开 VBA 窗口 ( Alt- F11),调出即时窗口 ( Ctrl- G),然后在 VBA 命令中键入 SQL 语句(仅限 DDL 语句):currentproject.connection.execute "delete * from tblTable where ID = 8751"
您可以编写一个小的 VBA proc 读取给定文件,使用;
分隔符分隔文件中的所有文本,然后使用上述Execute
方法一次执行一条 SQL 语句。然后,您可以在 Access 外部您最喜欢的编辑器中创建 SQL 脚本,用分号分隔每个语句,并让 Access 运行这些脚本。你可以想象这是非常强大的。