显示标签为“table”的博文。显示所有博文
显示标签为“table”的博文。显示所有博文

2012年3月27日星期二

Anyone know table limits in multi-schema environment?

My product is growing rapidly and currently I have a db for each client with identical schema. Of course maintenance is pretty hard. I was thinking of using a shared db but having a schema for each client (sql 2005) - I have almost 100 tables in the schema which means with just 10 clients the db would pass 1000 tables. My gut is telling me this ain't going to fly!

any ideas? and if it does work ... any thoughts on updating the internal schemas for each client?

thanks

-c

You definately can get over 1000 tables, since certain complex ERP systems and such have that just on their own, and that was even in older version of SQL Server.

According to :http://msdn2.microsoft.com/en-us/library/aa933149(SQL.80).aspx

The amount of tables is actualy only limited by the amount of objects (which means all triggers, tables, stored procedures, etc count toward this limit). The limit is... 2,147,483,647

Good luck busting that. Oh, and thats SQL Server 2000, was too lazy to find the 2005 specs :)|||

Sounds responable to me. I was going off this article from MS that suggested no more than 100 tables per client schema in a single db but they don't specify why :)

http://msdn2.microsoft.com/en-us/library/aa479086.aspx

Any idea how to do updates to the schema? my current thinking is to get my app to login as each schema owner and execute the update script.

thanks

-c

2012年3月25日星期日

Anyone know how to create a "Table of Contents" (TOC)?

How do I create a Table of Contents (TOC) for my report?

Thanks

The closer thing is to use Properties, Navigation, Document Map Label and bookmarks.
If you do not like the document Map, just define bookmarks and set the jump to bookmark property of some items making-up your TOC.

Philippe|||

I need a TOC that is printable/exportable. Can the Document Map be printed/exported as part of the report?

Paul-M

|||Yes, the Document Map is included and usable in both PDF and Excel exports, on it's own sheet in the latter.|||

We solved this by creating a .NET custom render for PDF. We manipulated the multiple reports into one report using SVG and then created a TOC at the front. There are only two reporting packages that meet this TOC requirement. Acuate and the newest Crystal Reports.

anyone good with queries

Hi below is a simplified database table setup that I have but basically it is
3 tables that are joined and one table has a date in it. Also in all 3
tables is a value maxi and I need to retrieve 1 maxi value for each day from
the query. If the value is NULL in table A I want to get the value from
table B and if it is null in table B I want to get it from table C. If it is
Null in all 3 tables I will just use 0 for the value. So use maxi from table
A if not null, but if null check table b and use maxi from that table if not
null, then if null use value from table c for maxi.
tableA
******************************************
pri key * color_id * size_id * date* maxi *
******************************************
* 1 * 2 * 5 * 2/1/07* 7 *
******************************************
* 2 * 4 * 6 * 2/2/07* NULL *
******************************************
tableB
****************************
* color id * color name * maxi *
****************************
* 2 * blue * 6 *
****************************
* 4 * red * NULL *
***************************
tableC
****************************
* size id * color name * maxi *
****************************
* 5 * small * 6 *
****************************
* 6 * medium * 10 *
***************************
so a query for a date range of 2/1/07 to 2/2/07 would return
2 records and maxi would be 7 for 2/1/07 from table A and 10 from
table C for 2/2/07.
Thanks
Paul G
Software engineer.
Try:
select
coalesce (a.maxi, b.maxi, c.maxi, 0)
from
table A a
left join
tableB b on b.[pri key] = a.[pri key]
left join
tableC c on c.[pri key] = a.[pri key]
Tom
Thomas A. Moreau, BSc, PhD, MCSE, MCDBA, MCITP, MCTS
SQL Server MVP
Toronto, ON Canada
https://mvp.support.microsoft.com/profile/Tom.Moreau
"Paul" <Paul@.discussions.microsoft.com> wrote in message
news:41785FDC-FBEF-4A50-863F-6C96A51ABE76@.microsoft.com...
Hi below is a simplified database table setup that I have but basically it
is
3 tables that are joined and one table has a date in it. Also in all 3
tables is a value maxi and I need to retrieve 1 maxi value for each day from
the query. If the value is NULL in table A I want to get the value from
table B and if it is null in table B I want to get it from table C. If it
is
Null in all 3 tables I will just use 0 for the value. So use maxi from
table
A if not null, but if null check table b and use maxi from that table if not
null, then if null use value from table c for maxi.
tableA
******************************************
pri key * color_id * size_id * date* maxi *
******************************************
* 1 * 2 * 5 * 2/1/07* 7 *
******************************************
* 2 * 4 * 6 * 2/2/07* NULL *
******************************************
tableB
****************************
* color id * color name * maxi *
****************************
* 2 * blue * 6 *
****************************
* 4 * red * NULL *
***************************
tableC
****************************
* size id * color name * maxi *
****************************
* 5 * small * 6 *
****************************
* 6 * medium * 10 *
***************************
so a query for a date range of 2/1/07 to 2/2/07 would return
2 records and maxi would be 7 for 2/1/07 from table A and 10 from
table C for 2/2/07.
Thanks
Paul G
Software engineer.
|||it works! thanks
Paul G
Software engineer.
"Tom Moreau" wrote:

> Try:
> select
> coalesce (a.maxi, b.maxi, c.maxi, 0)
> from
> table A a
> left join
> tableB b on b.[pri key] = a.[pri key]
> left join
> tableC c on c.[pri key] = a.[pri key]
> --
> Tom
> ----
> Thomas A. Moreau, BSc, PhD, MCSE, MCDBA, MCITP, MCTS
> SQL Server MVP
> Toronto, ON Canada
> https://mvp.support.microsoft.com/profile/Tom.Moreau
>
> "Paul" <Paul@.discussions.microsoft.com> wrote in message
> news:41785FDC-FBEF-4A50-863F-6C96A51ABE76@.microsoft.com...
> Hi below is a simplified database table setup that I have but basically it
> is
> 3 tables that are joined and one table has a date in it. Also in all 3
> tables is a value maxi and I need to retrieve 1 maxi value for each day from
> the query. If the value is NULL in table A I want to get the value from
> table B and if it is null in table B I want to get it from table C. If it
> is
> Null in all 3 tables I will just use 0 for the value. So use maxi from
> table
> A if not null, but if null check table b and use maxi from that table if not
> null, then if null use value from table c for maxi.
> tableA
> ******************************************
> pri key * color_id * size_id * date* maxi *
> ******************************************
> * 1 * 2 * 5 * 2/1/07* 7 *
> ******************************************
> * 2 * 4 * 6 * 2/2/07* NULL *
> ******************************************
> tableB
> ****************************
> * color id * color name * maxi *
> ****************************
> * 2 * blue * 6 *
> ****************************
> * 4 * red * NULL *
> ***************************
> tableC
> ****************************
> * size id * color name * maxi *
> ****************************
> * 5 * small * 6 *
> ****************************
> * 6 * medium * 10 *
> ***************************
> so a query for a date range of 2/1/07 to 2/2/07 would return
> 2 records and maxi would be 7 for 2/1/07 from table A and 10 from
> table C for 2/2/07.
> Thanks
> --
> Paul G
> Software engineer.
>

anyone good with queries

Hi below is a simplified database table setup that I have but basically it i
s
3 tables that are joined and one table has a date in it. Also in all 3
tables is a value maxi and I need to retrieve 1 maxi value for each day from
the query. If the value is NULL in table A I want to get the value from
table B and if it is null in table B I want to get it from table C. If it i
s
Null in all 3 tables I will just use 0 for the value. So use maxi from tabl
e
A if not null, but if null check table b and use maxi from that table if not
null, then if null use value from table c for maxi.
tableA
****************************************
**
pri key * color_id * size_id * date* maxi *
****************************************
**
* 1 * 2 * 5 * 2/1/07* 7 *
****************************************
**
* 2 * 4 * 6 * 2/2/07* NULL *
****************************************
**
tableB
****************************
* color id * color name * maxi *
****************************
* 2 * blue * 6 *
****************************
* 4 * red * NULL *
***************************
tableC
****************************
* size id * color name * maxi *
****************************
* 5 * small * 6 *
****************************
* 6 * medium * 10 *
***************************
so a query for a date range of 2/1/07 to 2/2/07 would return
2 records and maxi would be 7 for 2/1/07 from table A and 10 from
table C for 2/2/07.
Thanks
Paul G
Software engineer.Try:
select
coalesce (a.maxi, b.maxi, c.maxi, 0)
from
table A a
left join
tableB b on b.[pri key] = a.[pri key]
left join
tableC c on c.[pri key] = a.[pri key]
Tom
----
Thomas A. Moreau, BSc, PhD, MCSE, MCDBA, MCITP, MCTS
SQL Server MVP
Toronto, ON Canada
https://mvp.support.microsoft.com/profile/Tom.Moreau
"Paul" <Paul@.discussions.microsoft.com> wrote in message
news:41785FDC-FBEF-4A50-863F-6C96A51ABE76@.microsoft.com...
Hi below is a simplified database table setup that I have but basically it
is
3 tables that are joined and one table has a date in it. Also in all 3
tables is a value maxi and I need to retrieve 1 maxi value for each day from
the query. If the value is NULL in table A I want to get the value from
table B and if it is null in table B I want to get it from table C. If it
is
Null in all 3 tables I will just use 0 for the value. So use maxi from
table
A if not null, but if null check table b and use maxi from that table if not
null, then if null use value from table c for maxi.
tableA
****************************************
**
pri key * color_id * size_id * date* maxi *
****************************************
**
* 1 * 2 * 5 * 2/1/07* 7 *
****************************************
**
* 2 * 4 * 6 * 2/2/07* NULL *
****************************************
**
tableB
****************************
* color id * color name * maxi *
****************************
* 2 * blue * 6 *
****************************
* 4 * red * NULL *
***************************
tableC
****************************
* size id * color name * maxi *
****************************
* 5 * small * 6 *
****************************
* 6 * medium * 10 *
***************************
so a query for a date range of 2/1/07 to 2/2/07 would return
2 records and maxi would be 7 for 2/1/07 from table A and 10 from
table C for 2/2/07.
Thanks
Paul G
Software engineer.|||it works! thanks
--
Paul G
Software engineer.
"Tom Moreau" wrote:

> Try:
> select
> coalesce (a.maxi, b.maxi, c.maxi, 0)
> from
> table A a
> left join
> tableB b on b.[pri key] = a.[pri key]
> left join
> tableC c on c.[pri key] = a.[pri key]
> --
> Tom
> ----
> Thomas A. Moreau, BSc, PhD, MCSE, MCDBA, MCITP, MCTS
> SQL Server MVP
> Toronto, ON Canada
> https://mvp.support.microsoft.com/profile/Tom.Moreau
>
> "Paul" <Paul@.discussions.microsoft.com> wrote in message
> news:41785FDC-FBEF-4A50-863F-6C96A51ABE76@.microsoft.com...
> Hi below is a simplified database table setup that I have but basically it
> is
> 3 tables that are joined and one table has a date in it. Also in all 3
> tables is a value maxi and I need to retrieve 1 maxi value for each day fr
om
> the query. If the value is NULL in table A I want to get the value from
> table B and if it is null in table B I want to get it from table C. If it
> is
> Null in all 3 tables I will just use 0 for the value. So use maxi from
> table
> A if not null, but if null check table b and use maxi from that table if n
ot
> null, then if null use value from table c for maxi.
> tableA
> ****************************************
**
> pri key * color_id * size_id * date* maxi *
> ****************************************
**
> * 1 * 2 * 5 * 2/1/07* 7 *
> ****************************************
**
> * 2 * 4 * 6 * 2/2/07* NULL *
> ****************************************
**
> tableB
> ****************************
> * color id * color name * maxi *
> ****************************
> * 2 * blue * 6 *
> ****************************
> * 4 * red * NULL *
> ***************************
> tableC
> ****************************
> * size id * color name * maxi *
> ****************************
> * 5 * small * 6 *
> ****************************
> * 6 * medium * 10 *
> ***************************
> so a query for a date range of 2/1/07 to 2/2/07 would return
> 2 records and maxi would be 7 for 2/1/07 from table A and 10 from
> table C for 2/2/07.
> Thanks
> --
> Paul G
> Software engineer.
>

anyone good with queries

Hi below is a simplified database table setup that I have but basically it is
3 tables that are joined and one table has a date in it. Also in all 3
tables is a value maxi and I need to retrieve 1 maxi value for each day from
the query. If the value is NULL in table A I want to get the value from
table B and if it is null in table B I want to get it from table C. If it is
Null in all 3 tables I will just use 0 for the value. So use maxi from table
A if not null, but if null check table b and use maxi from that table if not
null, then if null use value from table c for maxi.
tableA
******************************************
pri key * color_id * size_id * date* maxi *
******************************************
* 1 * 2 * 5 * 2/1/07* 7 *
******************************************
* 2 * 4 * 6 * 2/2/07* NULL *
******************************************
tableB
****************************
* color id * color name * maxi *
****************************
* 2 * blue * 6 *
****************************
* 4 * red * NULL *
***************************
tableC
****************************
* size id * color name * maxi *
****************************
* 5 * small * 6 *
****************************
* 6 * medium * 10 *
***************************
so a query for a date range of 2/1/07 to 2/2/07 would return
2 records and maxi would be 7 for 2/1/07 from table A and 10 from
table C for 2/2/07.
Thanks
--
Paul G
Software engineer.Try:
select
coalesce (a.maxi, b.maxi, c.maxi, 0)
from
table A a
left join
tableB b on b.[pri key] = a.[pri key]
left join
tableC c on c.[pri key] = a.[pri key]
--
Tom
----
Thomas A. Moreau, BSc, PhD, MCSE, MCDBA, MCITP, MCTS
SQL Server MVP
Toronto, ON Canada
https://mvp.support.microsoft.com/profile/Tom.Moreau
"Paul" <Paul@.discussions.microsoft.com> wrote in message
news:41785FDC-FBEF-4A50-863F-6C96A51ABE76@.microsoft.com...
Hi below is a simplified database table setup that I have but basically it
is
3 tables that are joined and one table has a date in it. Also in all 3
tables is a value maxi and I need to retrieve 1 maxi value for each day from
the query. If the value is NULL in table A I want to get the value from
table B and if it is null in table B I want to get it from table C. If it
is
Null in all 3 tables I will just use 0 for the value. So use maxi from
table
A if not null, but if null check table b and use maxi from that table if not
null, then if null use value from table c for maxi.
tableA
******************************************
pri key * color_id * size_id * date* maxi *
******************************************
* 1 * 2 * 5 * 2/1/07* 7 *
******************************************
* 2 * 4 * 6 * 2/2/07* NULL *
******************************************
tableB
****************************
* color id * color name * maxi *
****************************
* 2 * blue * 6 *
****************************
* 4 * red * NULL *
***************************
tableC
****************************
* size id * color name * maxi *
****************************
* 5 * small * 6 *
****************************
* 6 * medium * 10 *
***************************
so a query for a date range of 2/1/07 to 2/2/07 would return
2 records and maxi would be 7 for 2/1/07 from table A and 10 from
table C for 2/2/07.
Thanks
--
Paul G
Software engineer.|||it works! thanks
--
Paul G
Software engineer.
"Tom Moreau" wrote:
> Try:
> select
> coalesce (a.maxi, b.maxi, c.maxi, 0)
> from
> table A a
> left join
> tableB b on b.[pri key] = a.[pri key]
> left join
> tableC c on c.[pri key] = a.[pri key]
> --
> Tom
> ----
> Thomas A. Moreau, BSc, PhD, MCSE, MCDBA, MCITP, MCTS
> SQL Server MVP
> Toronto, ON Canada
> https://mvp.support.microsoft.com/profile/Tom.Moreau
>
> "Paul" <Paul@.discussions.microsoft.com> wrote in message
> news:41785FDC-FBEF-4A50-863F-6C96A51ABE76@.microsoft.com...
> Hi below is a simplified database table setup that I have but basically it
> is
> 3 tables that are joined and one table has a date in it. Also in all 3
> tables is a value maxi and I need to retrieve 1 maxi value for each day from
> the query. If the value is NULL in table A I want to get the value from
> table B and if it is null in table B I want to get it from table C. If it
> is
> Null in all 3 tables I will just use 0 for the value. So use maxi from
> table
> A if not null, but if null check table b and use maxi from that table if not
> null, then if null use value from table c for maxi.
> tableA
> ******************************************
> pri key * color_id * size_id * date* maxi *
> ******************************************
> * 1 * 2 * 5 * 2/1/07* 7 *
> ******************************************
> * 2 * 4 * 6 * 2/2/07* NULL *
> ******************************************
> tableB
> ****************************
> * color id * color name * maxi *
> ****************************
> * 2 * blue * 6 *
> ****************************
> * 4 * red * NULL *
> ***************************
> tableC
> ****************************
> * size id * color name * maxi *
> ****************************
> * 5 * small * 6 *
> ****************************
> * 6 * medium * 10 *
> ***************************
> so a query for a date range of 2/1/07 to 2/2/07 would return
> 2 records and maxi would be 7 for 2/1/07 from table A and 10 from
> table C for 2/2/07.
> Thanks
> --
> Paul G
> Software engineer.
>

2012年3月22日星期四

Anybody have any luck using the Filters tab on a table

I can't get a table to return top n rows. The sorting tab works fine. Can
anyone provide a syntax example?
Thanks,
Dave=Fields!MyField.Value TopN =10
--
This posting is provided "AS IS" with no warranties, and confers no rights.
"Microsoft PrivateNews" <Dave.Troyer@.cliftoncpa.com> wrote in message
news:O4CS54noEHA.3464@.TK2MSFTNGP14.phx.gbl...
>I can't get a table to return top n rows. The sorting tab works fine. Can
> anyone provide a syntax example?
> Thanks,
> Dave
>|||That's what I have but it doesn't return any rows. There is data in the
dataset.
"Lev Semenets [MSFT]" <levs@.microsoft.com> wrote in message
news:u7DeYfsoEHA.536@.TK2MSFTNGP11.phx.gbl...
> =Fields!MyField.Value TopN =10
> --
> This posting is provided "AS IS" with no warranties, and confers no
rights.
>
> "Microsoft PrivateNews" <Dave.Troyer@.cliftoncpa.com> wrote in message
> news:O4CS54noEHA.3464@.TK2MSFTNGP14.phx.gbl...
> >I can't get a table to return top n rows. The sorting tab works fine.
Can
> > anyone provide a syntax example?
> >
> > Thanks,
> > Dave
> >
> >
>|||I was able to get this to work. Something went flaky at one point. Thanks
again.
"Microsoft PrivateNews" <Dave.Troyer@.cliftoncpa.com> wrote in message
news:uNfExIMpEHA.644@.tk2msftngp13.phx.gbl...
> That's what I have but it doesn't return any rows. There is data in the
> dataset.
> "Lev Semenets [MSFT]" <levs@.microsoft.com> wrote in message
> news:u7DeYfsoEHA.536@.TK2MSFTNGP11.phx.gbl...
> > =Fields!MyField.Value TopN =10
> >
> > --
> > This posting is provided "AS IS" with no warranties, and confers no
> rights.
> >
> >
> > "Microsoft PrivateNews" <Dave.Troyer@.cliftoncpa.com> wrote in message
> > news:O4CS54noEHA.3464@.TK2MSFTNGP14.phx.gbl...
> > >I can't get a table to return top n rows. The sorting tab works fine.
> Can
> > > anyone provide a syntax example?
> > >
> > > Thanks,
> > > Dave
> > >
> > >
> >
> >
>

Any work around to pass parameters to OPENQUERY

I need to query a linked server which contains a table of million records an
d
need to fetch only the relevant records from the linked server.
Any ideas? Please helpSaji
Have you tried to use WHERE condition? Can you show us what you are trying
to do?
"Saji" <Saji@.discussions.microsoft.com> wrote in message
news:31530C04-03B9-4C24-9169-CBBD26773F3C@.microsoft.com...
>I need to query a linked server which contains a table of million records
>and
> need to fetch only the relevant records from the linked server.
> Any ideas? Please help|||This seems to work..
SELECT * FROM OPENQUERY(PS, '
SELECT
*
FROM
TESTDTA.F0401Z1
JOIN TESTDTA.F0101Z2 ON TESTDTA.F0401Z1.VOAN8 = TESTDTA.F0101Z2.SZAN8
WHERE
VOEDSP != ''C'' AND
VODRIN = ''2''
ORDER BY VOAN8, VOEDBT
')
"Saji" wrote:

> I need to query a linked server which contains a table of million records
and
> need to fetch only the relevant records from the linked server.
> Any ideas? Please help

any ways to check for triggers

Hi ,
Is there any SP commands to retireve all the triggers for the whole DB
instead of the sp_showtrigger which is only at the DB's table level ?
Can i actually use the syscomments table like this
select * from syscomments where text like 'Create trigger%' ?
or is there any other method ?
tks & rdgs
Message posted via droptable.com
http://www.droptable.com/Uwe/Forum...server/200604/1One method:
SELECT
OBJECT_NAME(parent_obj) AS TableName,
name AS TriggerName
FROM sysobjects
WHERE type = 'TR'
Hope this helps.
Dan Guzman
SQL Server MVP
"maxzsim via droptable.com" <u14644@.uwe> wrote in message
news:5f3b73333e46b@.uwe...
> Hi ,
> Is there any SP commands to retireve all the triggers for the whole DB
> instead of the sp_showtrigger which is only at the DB's table level ?
> Can i actually use the syscomments table like this
> select * from syscomments where text like 'Create trigger%' ?
> or is there any other method ?
> tks & rdgs
> --
> Message posted via droptable.com
> http://www.droptable.com/Uwe/Forum...server/200604/1|||tk you
Dan Guzman wrote:[vbcol=seagreen]
>One method:
>SELECT
> OBJECT_NAME(parent_obj) AS TableName,
> name AS TriggerName
>FROM sysobjects
>WHERE type = 'TR'
>
>[quoted text clipped - 7 lines]
Message posted via droptable.com
http://www.droptable.com/Uwe/Forum...server/200604/1|||This will give you the trigger code also
SELECT
sysobjects.name AS [Trigger Name],
SUBSTRING(syscomments.text, 0, 26) AS [Trigger Definition],
OBJECT_NAME(sysobjects.parent_obj) AS [Table Name],
syscomments.encrypted AS [IsEncrpted]
FROM
sysobjects INNER JOIN syscomments ON sysobjects.id = syscomments.id
WHERE
(sysobjects.xtype = 'TR')
Aneesh R
"maxzsim via droptable.com" <u14644@.uwe> wrote in message
news:5f3b73333e46b@.uwe...
> Hi ,
> Is there any SP commands to retireve all the triggers for the whole DB
> instead of the sp_showtrigger which is only at the DB's table level ?
> Can i actually use the syscomments table like this
> select * from syscomments where text like 'Create trigger%' ?
> or is there any other method ?
> tks & rdgs
> --
> Message posted via droptable.com
> http://www.droptable.com/Uwe/Forum...server/200604/1

any ways to check for triggers

Hi ,
Is there any SP commands to retireve all the triggers for the whole DB
instead of the sp_showtrigger which is only at the DB's table level ?
Can i actually use the syscomments table like this
select * from syscomments where text like 'Create trigger%' ?
or is there any other method ?
tks & rdgs
--
Message posted via SQLMonster.com
http://www.sqlmonster.com/Uwe/Forums.aspx/sql-server/200604/1One method:
SELECT
OBJECT_NAME(parent_obj) AS TableName,
name AS TriggerName
FROM sysobjects
WHERE type = 'TR'
--
Hope this helps.
Dan Guzman
SQL Server MVP
"maxzsim via SQLMonster.com" <u14644@.uwe> wrote in message
news:5f3b73333e46b@.uwe...
> Hi ,
> Is there any SP commands to retireve all the triggers for the whole DB
> instead of the sp_showtrigger which is only at the DB's table level ?
> Can i actually use the syscomments table like this
> select * from syscomments where text like 'Create trigger%' ?
> or is there any other method ?
> tks & rdgs
> --
> Message posted via SQLMonster.com
> http://www.sqlmonster.com/Uwe/Forums.aspx/sql-server/200604/1|||tk you
Dan Guzman wrote:
>One method:
>SELECT
> OBJECT_NAME(parent_obj) AS TableName,
> name AS TriggerName
>FROM sysobjects
>WHERE type = 'TR'
>> Hi ,
>[quoted text clipped - 7 lines]
>> tks & rdgs
--
Message posted via SQLMonster.com
http://www.sqlmonster.com/Uwe/Forums.aspx/sql-server/200604/1|||This will give you the trigger code also
SELECT
sysobjects.name AS [Trigger Name],
SUBSTRING(syscomments.text, 0, 26) AS [Trigger Definition],
OBJECT_NAME(sysobjects.parent_obj) AS [Table Name],
syscomments.encrypted AS [IsEncrpted]
FROM
sysobjects INNER JOIN syscomments ON sysobjects.id = syscomments.id
WHERE
(sysobjects.xtype = 'TR')
Aneesh R
"maxzsim via SQLMonster.com" <u14644@.uwe> wrote in message
news:5f3b73333e46b@.uwe...
> Hi ,
> Is there any SP commands to retireve all the triggers for the whole DB
> instead of the sp_showtrigger which is only at the DB's table level ?
> Can i actually use the syscomments table like this
> select * from syscomments where text like 'Create trigger%' ?
> or is there any other method ?
> tks & rdgs
> --
> Message posted via SQLMonster.com
> http://www.sqlmonster.com/Uwe/Forums.aspx/sql-server/200604/1sql

2012年3月20日星期二

Any way to track if a person does a select on a table?

We have a situation where we would like to know who is accessing our data.
We know we could make a user read only but we'd also like to know what they
did to retrieve the data.
I guess what I need is Query Profiler but limit it to a specific user. Since
the user will have read only privileges, I won't have to worry about them
changing the data.
I just want to know that they accessed it.
BTW - they will be doing this through an ODBC connection in Access.
TIA - Jeff.
I think you answered your own question Profile the database, filter the
user, save the trace to a table and query the table for the results...
/*
Warren Brunk - MCITP,MCTS,MCDBA
www.techintsolutions.com
*/
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>
|||Consider creating a SQL Trace with the desired events and filters. You can
create such a trace using the Profiler GUI and then script/run the trace to
log to a file.
Hope this helps.
Dan Guzman
SQL Server MVP
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>
|||network packet sniffing is the most efficient/effective way to do this.
There are several products on the market that do this now.
Kevin G. Boles
TheSQLGuru
Indicium Resources, Inc.
kgboles a earthlink dt net
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>

Any way to track if a person does a select on a table?

We have a situation where we would like to know who is accessing our data.
We know we could make a user read only but we'd also like to know what they
did to retrieve the data.
I guess what I need is Query Profiler but limit it to a specific user. Since
the user will have read only privileges, I won't have to worry about them
changing the data.
I just want to know that they accessed it.
BTW - they will be doing this through an ODBC connection in Access.
TIA - Jeff.I think you answered your own question :) Profile the database, filter the
user, save the trace to a table and query the table for the results...
--
/*
Warren Brunk - MCITP,MCTS,MCDBA
www.techintsolutions.com
*/
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>|||Consider creating a SQL Trace with the desired events and filters. You can
create such a trace using the Profiler GUI and then script/run the trace to
log to a file.
--
Hope this helps.
Dan Guzman
SQL Server MVP
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>|||network packet sniffing is the most efficient/effective way to do this.
There are several products on the market that do this now.
--
Kevin G. Boles
TheSQLGuru
Indicium Resources, Inc.
kgboles a earthlink dt net
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>

Any way to track if a person does a select on a table?

We have a situation where we would like to know who is accessing our data.
We know we could make a user read only but we'd also like to know what they
did to retrieve the data.
I guess what I need is Query Profiler but limit it to a specific user. Since
the user will have read only privileges, I won't have to worry about them
changing the data.
I just want to know that they accessed it.
BTW - they will be doing this through an ODBC connection in Access.
TIA - Jeff.I think you answered your own question Profile the database, filter the
user, save the trace to a table and query the table for the results...
/*
Warren Brunk - MCITP,MCTS,MCDBA
www.techintsolutions.com
*/
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>|||Consider creating a SQL Trace with the desired events and filters. You can
create such a trace using the Profiler GUI and then script/run the trace to
log to a file.
Hope this helps.
Dan Guzman
SQL Server MVP
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>|||network packet sniffing is the most efficient/effective way to do this.
There are several products on the market that do this now.
Kevin G. Boles
TheSQLGuru
Indicium Resources, Inc.
kgboles a earthlink dt net
"Mufasa" <jb@.nowhere.com> wrote in message
news:%23nOYhFqPIHA.3532@.TK2MSFTNGP04.phx.gbl...
> We have a situation where we would like to know who is accessing our data.
> We know we could make a user read only but we'd also like to know what
> they did to retrieve the data.
> I guess what I need is Query Profiler but limit it to a specific user.
> Since the user will have read only privileges, I won't have to worry about
> them changing the data.
> I just want to know that they accessed it.
> BTW - they will be doing this through an ODBC connection in Access.
> TIA - Jeff.
>

Any way to tell when a particular row was last changed?

Does anyone know of a way to tell when a particular row in
a table was last changed. We're doing some trouble
shooting and the info would sure come in handy.
Thanks,
jrJim,
There's no built in way to do this. You need to create triggers on your tabl
e or
you will have to build this
functionality into your application. For instance, you can have a column on
the
table UPDDATE and within the
application/trigger you will update this column with getdate() whenever you
fire
an update statement.
Refer to following url.
Audit insert/udpate/delete with triggers
http://www.devx.com/dbzone/Article/7939/0/page/1
- Vishalsql

Any way to keep a table in read only mode ?

I would like to keep a table in readonly mode vs having the entire database
in read only ? I also do not wish to change any login settings,etc..
DENY INSERT, UPDATE, DELETE ON table_name
TO user_name_1, user_name_2, user_name_3
David Portas
SQL Server MVP
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:%239J8hAnkFHA.3568@.TK2MSFTNGP10.phx.gbl...
>I would like to keep a table in readonly mode vs having the entire database
> in read only ? I also do not wish to change any login settings,etc..
>
>
|||search for these titles in BOL:
Understanding Locking in SQL Server
Locking Hints
Hope this will help.
Regards,
Mansih
|||Do you know the query i could use ?
select * from table (tablockx) .. Will this do and prevent others from
modifying the data ?
I would like to read and not update
<manish19@.gmail.com> wrote in message
news:1122447284.950431.215450@.g49g2000cwa.googlegr oups.com...
> search for these titles in BOL:
> Understanding Locking in SQL Server
> Locking Hints
> Hope this will help.
> Regards,
> Mansih
>
|||Hassan
by using SELECT statement you cannot UPDATE the data. As David pointed out
use DENY permission on objects
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:e1SiiDokFHA.1044@.tk2msftngp13.phx.gbl...
> Do you know the query i could use ?
> select * from table (tablockx) .. Will this do and prevent others from
> modifying the data ?
> I would like to read and not update
>
> <manish19@.gmail.com> wrote in message
> news:1122447284.950431.215450@.g49g2000cwa.googlegr oups.com...
>

Any way to keep a table in read only mode ?

I would like to keep a table in readonly mode vs having the entire database
in read only ? I also do not wish to change any login settings,etc..DENY INSERT, UPDATE, DELETE ON table_name
TO user_name_1, user_name_2, user_name_3
--
David Portas
SQL Server MVP
--
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:%239J8hAnkFHA.3568@.TK2MSFTNGP10.phx.gbl...
>I would like to keep a table in readonly mode vs having the entire database
> in read only ? I also do not wish to change any login settings,etc..
>
>|||search for these titles in BOL:
Understanding Locking in SQL Server
Locking Hints
Hope this will help.
Regards,
Mansih|||Do you know the query i could use ?
select * from table (tablockx) .. Will this do and prevent others from
modifying the data ?
I would like to read and not update
<manish19@.gmail.com> wrote in message
news:1122447284.950431.215450@.g49g2000cwa.googlegroups.com...
> search for these titles in BOL:
> Understanding Locking in SQL Server
> Locking Hints
> Hope this will help.
> Regards,
> Mansih
>|||Hassan
by using SELECT statement you cannot UPDATE the data. As David pointed out
use DENY permission on objects
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:e1SiiDokFHA.1044@.tk2msftngp13.phx.gbl...
> Do you know the query i could use ?
> select * from table (tablockx) .. Will this do and prevent others from
> modifying the data ?
> I would like to read and not update
>
> <manish19@.gmail.com> wrote in message
> news:1122447284.950431.215450@.g49g2000cwa.googlegroups.com...
>> search for these titles in BOL:
>> Understanding Locking in SQL Server
>> Locking Hints
>> Hope this will help.
>> Regards,
>> Mansih
>

Any way to keep a table in read only mode ?

I would like to keep a table in readonly mode vs having the entire database
in read only ? I also do not wish to change any login settings,etc..DENY INSERT, UPDATE, DELETE ON table_name
TO user_name_1, user_name_2, user_name_3
David Portas
SQL Server MVP
--
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:%239J8hAnkFHA.3568@.TK2MSFTNGP10.phx.gbl...
>I would like to keep a table in readonly mode vs having the entire database
> in read only ? I also do not wish to change any login settings,etc..
>
>|||search for these titles in BOL:
Understanding Locking in SQL Server
Locking Hints
Hope this will help.
Regards,
Mansih|||Do you know the query i could use ?
select * from table (tablockx) .. Will this do and prevent others from
modifying the data ?
I would like to read and not update
<manish19@.gmail.com> wrote in message
news:1122447284.950431.215450@.g49g2000cwa.googlegroups.com...
> search for these titles in BOL:
> Understanding Locking in SQL Server
> Locking Hints
> Hope this will help.
> Regards,
> Mansih
>|||Hassan
by using SELECT statement you cannot UPDATE the data. As David pointed out
use DENY permission on objects
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:e1SiiDokFHA.1044@.tk2msftngp13.phx.gbl...
> Do you know the query i could use ?
> select * from table (tablockx) .. Will this do and prevent others from
> modifying the data ?
> I would like to read and not update
>
> <manish19@.gmail.com> wrote in message
> news:1122447284.950431.215450@.g49g2000cwa.googlegroups.com...
>

Any way to generate SQL Script for application role?

Is there any way to generate the SQL to create an application role and all t
he associated grants for table and stored procedure access? Or does anyone h
ave a suggestion for how to migrate an application role from one environment
to another? The developers
originally create the role by clicking on things.The easiest way is to script the existing application role permissions
and edit the script for the new environment. See sp_addapprole in SQL
BOL for the syntax for creating a new application role.
--Mary
On Fri, 16 Apr 2004 10:01:10 -0700, Charlotte
<anonymous@.discussions.microsoft.com> wrote:

>Is there any way to generate the SQL to create an application role and all the asso
ciated grants for table and stored procedure access? Or does anyone have a suggestio
n for how to migrate an application role from one environment to another? The develo
per
s originally create the role by clicking on things.sql

2012年3月19日星期一

Any way to find out which SP is updating data in a specific table?

Can you create an UPDATE TRIGGER and use some type
of code to figure out which SP just updated the current table?

If not how can i achieve what i want?

I tried to run SQL Profiler and i don't understand why i can't
simply have the Profiler filter events only for the specific database id
and the table's object id i chose?

What am i doing wrong with SQL Profiler? I was testing this
through SQL EM. I had the filters chosen for a specific database id
and a specific table's object id, yet when i open another table SQL
Profiler captures that information too.

Thank youIn a correct design, why would it matter? The event or conditions
rather than the agent should be what is important. Do not think in
terms of HOW, but in terms of WHAT.|||serge (sergea@.nospam.ehmail.com) writes:
> Can you create an UPDATE TRIGGER and use some type
> of code to figure out which SP just updated the current table?

No. At least not without changing all stored procedure to write their
name somewhere. That can be done in a general way, as the global variable
@.@.procid holds the object id of the currently executing SQL module.
But there is no way to get the entire call stack. Definitely a missing
a feature in SQL Server.

> I tried to run SQL Profiler and i don't understand why i can't
> simply have the Profiler filter events only for the specific database id
> and the table's object id i chose?

The problem with Profiler is that if there are entries that do not
populate the columns you filter on, the NULL values pass the filter
and give you a lot of noise.

--
Erland Sommarskog, SQL Server MVP, esquel@.sommarskog.se

Books Online for SQL Server SP3 at
http://www.microsoft.com/sql/techin.../2000/books.asp

any way to do record login failures?

sql2000 sp3a
i'd like to keep track of login failures in a table in addition to the
sql log. is there any way to do this?
i've created an alert for error 18456, login failed for user '%ls'.
if i configure the alert to call a job, how do i get that error message
into the job so that i can insert it into a table?
also, i'd like to record the hostname or ip address of the client
machine from which the login failure occurs. i know sysprocesses has
that info once a user gets logged in, but where is that info if the
login fails?
Another option is to use a trace (or profiler) to monitor
for failed logins. You can import the trace file into a
table.
The IP and Host name won't be directly available for failed
logins. Host name isn't that reliable anyway as it's
controlled by the client. For the ip address, you would need
to capture this using a network tool.
-Sue
On Wed, 02 Jun 2004 09:04:30 -0500, ch <ch@.dontemailme.com>
wrote:

>sql2000 sp3a
>i'd like to keep track of login failures in a table in addition to the
>sql log. is there any way to do this?
>i've created an alert for error 18456, login failed for user '%ls'.
>if i configure the alert to call a job, how do i get that error message
>into the job so that i can insert it into a table?
>also, i'd like to record the hostname or ip address of the client
>machine from which the login failure occurs. i know sysprocesses has
>that info once a user gets logged in, but where is that info if the
>login fails?

any way to do record login failures?

sql2000 sp3a
i'd like to keep track of login failures in a table in addition to the
sql log. is there any way to do this?
i've created an alert for error 18456, login failed for user '%ls'.
if i configure the alert to call a job, how do i get that error message
into the job so that i can insert it into a table?
also, i'd like to record the hostname or ip address of the client
machine from which the login failure occurs. i know sysprocesses has
that info once a user gets logged in, but where is that info if the
login fails?Another option is to use a trace (or profiler) to monitor
for failed logins. You can import the trace file into a
table.
The IP and Host name won't be directly available for failed
logins. Host name isn't that reliable anyway as it's
controlled by the client. For the ip address, you would need
to capture this using a network tool.
-Sue
On Wed, 02 Jun 2004 09:04:30 -0500, ch <ch@.dontemailme.com>
wrote:

>sql2000 sp3a
>i'd like to keep track of login failures in a table in addition to the
>sql log. is there any way to do this?
>i've created an alert for error 18456, login failed for user '%ls'.
>if i configure the alert to call a job, how do i get that error message
>into the job so that i can insert it into a table?
>also, i'd like to record the hostname or ip address of the client
>machine from which the login failure occurs. i know sysprocesses has
>that info once a user gets logged in, but where is that info if the
>login fails?