2009-06-12 10 views
0

クライアントが更新する必要があるデータベースがあります。彼らはアクセスを使いたい。いくつかのテーブルはランダムに読み込み専用になります。なぜどんなアイデア?Accessを使用してSQLテーブルを変更する。テーブルはランダムに読み取り専用になります

彼らは、SQL表アクセス2007とMS SQL 2005

を使用している:

CREATE TABLE [dbo].[Users](
    [SyncGroup] [varchar](20) NULL, 
    [UserID] [varchar](20) NOT NULL, 
    [Password] [varchar](20) NOT NULL, 
    [Restriction] [text] NULL DEFAULT (' '), 
    [SiteCode] [varchar](20) NULL, 
    [Group] [varchar](20) NULL, 
    [EmpId] [varchar](20) NULL, 
    [TimeZoneOffset] [int] NULL, 
    [UseDaylightSavings] [bit] NULL, 
    PRIMARY KEY ([UserID])) 
+0

症状の説明(ユーザーの観点から)と、表示されているエラーメッセージの正確な表現を提供できると便利です。 –

+0

エラーメッセージはありません。すべてのレコードが読み取り専用になります。それは奇妙な問題です。ちょうど今日はテーブルが正常に動作していたのですが、読み取り専用です。私はさらに、クライアントにテーブルの削除と再マップを依頼しました。運がない。 – NitroxDM

答えて

3

アクセスは本当にすべてのテーブルにTimeStamp別名RowVersionフィールドがあるのが好きです。私はこれがあなたの問題を解決するかどうかは分かりません。

"タイムスタンプフィールドは、Microsoft SQL ServerなどのMicrosoft SQL Serverをサポートするサーバーでは、レコードの更新効率を向上させます。タイムスタンプフィールドはサーバーによって維持され、レコードが更新されるたびに更新されます。 Microsoft Accessは、一意のインデックスとタイムスタンプフィールドのみをチェックして、サーバーから最後に取得されてからレコードが変更されているかどうかを確認する必要があります。新しいフィールドのMicrosoft Accessに通知するために、テーブルを再接続します。

http://technet.microsoft.com/en-us/library/cc917601.aspx

+0

タイムスタンプを追加すると、タイムスタンプが機能しているように見えます。私はもう少しテストする必要があります...しかし、これまでのところよく見えます。 – NitroxDM

+0

それはトリックでした!ありがとう! – NitroxDM

+0

私はそれがタイムスタンプではなく再接続していたことがあります。それを修正するために再接続してみましたか? – dkretz

0

は、SQL iwthものをやろうとしている間にデータベースにアクセスするユーザーですか?その場合は、データベースが使用中であり、読み取り専用であることを示すエラーメッセージが表示されます。 sqlを使って作業しているときに、データベースに誰も参加できません。

+0

私は、「SQLでやること」を定量化する必要があると思います。 「SQLを使って作業する」とは、スキーマを変更することですか?またはデータを操作しますか?私の外には、テーブルから常に読んでいる(3分ごとに)自動システムがあります。私はデータを操作する上で再現性のある問題に気づいていません。アクセスは変更を許可しないことだけを決定します。 – NitroxDM

0

権限の問題のようですね。誰がスキーマを変更しているかを注意深く追跡していますか?特定の他のユーザーによる変更を許可されていないユーザーがいる可能性があります。

+0

私はそれが問題だとは思わない。私は唯一のものであり、将来的には(とにかく)スキーマの変更を行う予定です。それを超えて、私は自分の資格情報を使うときも同じ問題があります。 – NitroxDM

+0

スキーマを変更するたびにSQL Serverへのアクセスを忠実に再接続しましたか? – dkretz

関連する問題