Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 5 of 5 total
Thread # 11013 Access denied When running Alter Table on Vista PC (DBISam V3.3)
Sun, May 27 2007 3:34 AMPermanent Link

Gregory Sebastian
# 11013 Access denied When running Alter Table on Vista PC (DBISam V3.3)

I notice that running Alter table on a table hosted on a Vista PC seems to amend the Windows security permissions of a table. Problem can be
simulated as follows using the "Database System Utility" :

1. Create a local table at the C:\Users\Public\Public Documents folder. This table can be opened and edited by all windows users. Check the
Windows security permissions for this table.

2. Run Alter table for Example : "ALTER TABLE mytable ADD mynewfield VarChar(20)".

This table can  now only be opened by the Windows user who ran the Alter Table. All other windows users cannot open the table and will get #
11013. For some reason the security permissions for this table seems to have change. Is there a way to run the Alter table command without
restricting access to other windows users. Create Table is not a problem. Just happens with Alter Table.

I had this problem on XP too when using persistant session and database components. Removing the session and database components resolves it
on XP but not on Vista. TIA

Regards
Gregory

Sun, May 27 2007 4:51 AMPermanent Link

Gregory Sebastian
Sorry everyone. Guess I should have read this first :

http://www.elevatesoft.com/bulletin_9.htm

But where then is the best and safest place to put the temp folder ? Currently I'm using something like :

PrivateDir := GetEnviromentVariable('Temp') + '\MyCompany\MyApp\';

I force this directory to be created on the local machine.

This has worked fine up untill now that I need to use the Alter Table.

Regards
Greg

Gregory Sebastian <gregorys@ezysoft-dev.com> wrote:

# 11013 Access denied When running Alter Table on Vista PC (DBISam V3.3)

Tue, May 29 2007 6:13 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Gregory,

<< But where then is the best and safest place to put the temp folder ? >>

Don't worry about that - just set the
TDBISAMEngine.CreateTempTablesInDatabase property to True and it will take
care of everything.

--
Tim Young
Elevate Software
www.elevatesoft.com

Wed, May 30 2007 1:22 AMPermanent Link

Gregory Sebastian
Thanks Tim,
<<just set the TDBISAMEngine.CreateTempTablesInDatabase property to True >>
I'm still using V3.3 at the moment, this method is not in V3.3. Will get around to upgrading my db engine to ElevateDB in my next version upgrades.

For the time being, I'm still setting PrivateDir to the user temp folder using GetEnviromentVariable('Temp'). However before AlterTable or RepairTable, I'm setting the PrivateDir to the
database directory. After that I set it back to local temp folder again. I'm doing this so that the PrivateDir will always set to a local path unless absolutely necessary. This has worked fine so
far for all my test on Vista.

This however shouldn't be an issue for remote sessions right ? All temp tables should be created on the server side right ? Will any temp tables be created at client side for remote sessions ?

Regards
Gregory

Wed, May 30 2007 12:44 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Gregory,

<< This however shouldn't be an issue for remote sessions right ? All temp
tables should be created on the server side right ? >>

Correct.

<< Will any temp tables be created at client side for remote sessions ? >>

No.

--
Tim Young
Elevate Software
www.elevatesoft.com

Image