I am the owner of a database with other users. I have given all users
db_owner role. My server is MSDE 2000.
I use the following code to import a spreadsheet.
docmd.transferspreadsheet acImport, acSpreadsheetTypeExcel97,
"dbo.DL_Funding_Data", "theFilename.xls", True
When I use an adp from Access 2000, this code executes successfully for all
users. When I use an adp from access 2003, this code gets error 3078 and
will only work if I remove the "dbo." from the name of the table.
thanks for any help,
Jerry
As I recall (and it's been a few years) the syntax required for
specifying SQL Server objects changed between A2000 and 2003. In 2000
you had to use the full syntax, ownername.objectname and 2003 is more
lenient. Since many people didn't bother implementing security
correctly, things ended up being owned by dbo, which is *not*
synonymous with db_owner, but is mapped to sysadmin. Something you
definitely don't want users being. FWIW, I definitely wouldn't use
DoCmd for DDL or DML, ever. It's just not a robust way of handling
things.
One tool you should use is SQL Profiler. Creating a trace allows you
to see the calls between Access and SQL Server, and is indispensable
for troubleshooting these things.
--Mary
On Mon, 22 Aug 2005 15:17:03 -0700, JerryWendell
<JerryWendell@.discussions.microsoft.com> wrote:
>I am the owner of a database with other users. I have given all users
>db_owner role. My server is MSDE 2000.
>I use the following code to import a spreadsheet.
>docmd.transferspreadsheet acImport, acSpreadsheetTypeExcel97,
>"dbo.DL_Funding_Data", "theFilename.xls", True
>When I use an adp from Access 2000, this code executes successfully for all
>users. When I use an adp from access 2003, this code gets error 3078 and
>will only work if I remove the "dbo." from the name of the table.
>thanks for any help,
>Jerry
|||Thanks for the recommendations Mary. I'll look into removing DoCmd and
obtaining the SQL Profiler.
I'm waiting to get my users all at Access 2003 to minimize the version
problems.
Thanks!
"Mary Chipman [MSFT]" wrote:
> As I recall (and it's been a few years) the syntax required for
> specifying SQL Server objects changed between A2000 and 2003. In 2000
> you had to use the full syntax, ownername.objectname and 2003 is more
> lenient. Since many people didn't bother implementing security
> correctly, things ended up being owned by dbo, which is *not*
> synonymous with db_owner, but is mapped to sysadmin. Something you
> definitely don't want users being. FWIW, I definitely wouldn't use
> DoCmd for DDL or DML, ever. It's just not a robust way of handling
> things.
> One tool you should use is SQL Profiler. Creating a trace allows you
> to see the calls between Access and SQL Server, and is indispensable
> for troubleshooting these things.
> --Mary
> On Mon, 22 Aug 2005 15:17:03 -0700, JerryWendell
> <JerryWendell@.discussions.microsoft.com> wrote:
>
>
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment