私はAccessを初めて使用するので、ここで少し助けが必要です。私はデータベースとしてSQL2008Serverを使用してMSAccess2007(VB)で作業していました。
AccessのフロントエンドにSQLテーブルを表示したかったのですが、Access 2007のSQLクエリでSQLユーザー定義関数を使用しているときに問題が発生しました。この関数とクエリをAccessのSQLクエリデザインで記述し、実行しようとしました。しかし、その表示エラー(ユーザー定義の「timepart」関数は認識されません)!!
CREATE function dbo.timepart (@date as SMALLDATETIME)
RETURNS SMALLDATETIME
AS
BEGIN
RETURN @date - DATEADD(d, DATEDIFF(d,0,@date), 0)
END
SELECT * FROM TABLENAME WHERE dbo.timepart(FIELDNAME) Between '9:30' AND '17:30';
MSAccessではUDFSQL関数を記述できないと思います。ローカルのSQLServer2008データベース(SQL Management Studio)でこれと同じクエリを試しましたが、完全に正常に機能しています。