Catalog Views
May 22, 2007Is there any way to access catalog views, such as sys.backup_devices, using a select statement from inside a sored procedure?
View 28 RepliesIs there any way to access catalog views, such as sys.backup_devices, using a select statement from inside a sored procedure?
View 28 RepliesHi,
Can anyone tell the advantage of using the new catalog views over the traditional system tables which were given as compatiblity views in sql server 2005
I'm trying to access a System Catalog View (sys.database_permissions, and others) from a table valued function. I need to be able to pass the database name into the function so that I can operate on any database. Typically I'd use dynamic SQL to do something like
INSERT INTO #tempTable
EXEC ('SELECT * FROM ' + @DBName + '.sys.database_permissions')
But of course I can't use dynamic SQL inside of a UDF. I know I could do this using a stored procedure, but I'd need the output to be a recordset that I can query.
Has anyone done anything like this? I think I'm stuck.
SQL 2005 SP2 in Managemrnt Studio...
I have a linked server set-up pointing to an instance that has several databases. In one catalog I have no tables or views being listed for the catalog. So I select a view, add the permissions that should allow the view to show in the list but it does not. And I did refresh and I did even restart management studio.
BTW: I can exec the view using a 4 part name.
Any one have an idea why the view don't show in the list?
Thanks much
chuck
How to get the list of catalog views sys.* (sys.objects, sys.columns ....) in sql server 2005
select * from sys.objects where objectproperty(object_id, 'IsSystemTable') = 1
did not return the list as I've expected
thanks
I am trying to write some admin only procedures which will collect information to one of my development server from other production and development servers.
I have created linked servers to access these other servers on the development server. This development server is SQL Server 2000 EE. Other servers which I want to access are 2000 and 2005 (vaious editions)
E.g I have another development server called PRODTEST which is SQL Server 2005 and on the development server I have created a linked server pointing to PRODTEST called TESTLINKSRV. I want to access new object catalog view (as I do not want to use sysobjects)
When I run the following query
SELECT * FROM [TESTLINKSRV].[DBNAME].[sys].[objects]
I get following error,
OLE DB error trace [Non-interface error: OLE DB provider does not contain the table: ProviderName=' TESTLINKSRV ', TableName='" DBNAME "."sys"."objects"'].
Msg 7314, Level 16, State 1, Line 1
OLE DB provider ' TESTLINKSRV ' does not contain table '"DBNAME"."sys"."objects"'. The table either does not exist or the current user does not have permissions on that table.
So I try this query
SELECT * FROM [TESTLINKSRV].[DBNAME].[sys.objects]
and I get following error
Msg 208, Level 16, State 1, Line 1
Invalid object name TESTLINKSRV.DBNAME.sys.objects'.
So bottom line is how do I access catalog views on a 2005 server from a 2000 server using linked server?
I hope someone understands what I am trying to achieve. Please let me know what is it that I am doing wrong.
Thank you
"SSIS 2012 Catalog doesn't have option to give read access to SSIS Catalog to view package run reports" ... Any luck allowing power developers / operators access to READ the SQL 2012 SSIS Execution Reports without granting them SSIS_Admin or Sysadmin?
According to this link posted back in 2011 (w/ Microsoft's feedback in Nov 2011: "We’re closing this issue as “Won’t Fix.” At this point the bug does not meet our bar for resolving prior to SQL Server 2012 RTM. As we approach the SQL Server 2012 release the bar for making code changes gets progressively higher." URL....Regarding Permissions to SSIS Catalog, here are the findings. We can give access in three ways:
1. READ Access – We can provide a user db_datareader access. With this the user can see the objects within the SSIS catalog database, but cannot see the reports.
2. SSIS_ADMIN – Add the user to this database role in SSISDB. With this the user can view the reports. But it also provides them privileges to modify catalog information which is not expected. We can add it using below script EXEC sp_addrolemember 'ssis_admin' , 'REDMONDPAIntelAnalyst'
3. SYSADMIN - Add the user to this server role. This will make the user an admin on the SQL server. This is not intended. Is there any method available which will have provision to give read only access to see SSIS Catalog package execution reports and not having modify Catalog access.
Fellow database developers,I would like to draw on your experience with views. I have a databasethat includes many views. Sometimes, views contains other views, andthose views in turn may contain views. In fact, I have some views inmy database that are a product of nested views of up to 6 levels deep!The reason we did this was.1. Object-oriented in nature. Makes it easy to work with them.2. Changing an underlying view (adding new fields, removing etc),automatically the higher up views inherit this new information. Thismake maintenance very easy.3. These nested views are only ever used for the reporting side of ourapplication, not for the day-to-day database use by the application.We use Crystal Reports and Crystal is smart enough (can't believe Ijust said that about Crystal) to only pull back the fields that arebeing accessed by the report. In other words, Crystal will issue aSelect field1, field2, field3 from ReportingView Where .... eventhough "ReportingView" contains a long list of fields.Problems I can see.1. Parent views generally use "Select * From childview". This meansthat we have to execute a "sp_refreshview" command against all viewswhenever child views are altered.2. Parent views return a lot of information that isn't necessarilyused.3. Makes it harder to track down exactly where the information iscoming from. You have to drill right through to the child view to seethe raw table joins etc.Does anyone have any comments on this database design? I would love tohear your opinions and tales from the trenches.Best regards,Rod.
View 15 Replies View RelatedWhich is more efficient? One large view that joins >=10 tables, or a few smaller views that join only the tables needed for individual pages?
View 1 Replies View RelatedHello.
Newbie here. I've only been using SQL for about a year now and have some minor questions about sql objects that reference other objects.
We have some views which reference other views in the joins. I will call one the primary view and the one being referenced in the joins as the secondary view.
Recently we made changes to the secondary view.
After which the primary views which referenced it would not work because of this change and had to be 'refreshed' by using drop/create scripts which essentially just dropped it and recreated the exact same view. I do not recall the exact error message that was returned other than it seemed to suggest that it could no longer see the secondary view since it had been changed. Nothing in the primary view was changed in any way, just the secondary.
Some here where I work have suggested off hand that this was a recompile of the primary view because the contents of the secondary changed.
My questions are:
1. Exactly why did this happen and is there a proper name for it when it does?
2. The same problem does not seem to occur when we have stored procedures referencing views in the joins which had just been changed. Why is that?
Thanks for any help on the matter. I greatly appreciate it.
Hello,
to make a report easier I'm developing it using a view of joined views of joined views.
Is there any significant performance penalty as opposed to just having one big select?
Cheers.
Hello There,I'm trying to create a view that has calculations dependent oncalculations, where the problem resides is that each time I make acalculation I must create an intermediate view so I can reference aprevious calculation.for example lets say I have my_table that has columns a & b. now I wanta view that has a & b, c = a + b, and d = c + 1.this is grossly simplified, the calculations I actually use are fairlycomplex and copying / pasting them is out of the question.so what I have is my_view_a which makes column c, and my my_view_finalwhich makes column d (however, in my real application I have 5 of theseviews, a/b/c/d/e/)is there anyway I can consolidate all these views into one? I wasthinking of using a stored procedure with temp tables or somethingalong those lines.I just which I can use the aliases that I create for c in d in onestep.any insight would be greatly appreciated.
View 5 Replies View RelatedIn SQL 6.5, what is "system catalogs"?
View 2 Replies View RelatedHi,
When i execute this query
SELECT *
FROM INFORMATION_SCHEMA.SCHEMATA
WHERE SCHEMA_NAME = 'a424465';
I can see the..
CATALOG_NAME SCHEMA_NAME SCHEMA_OWNER ...
schema1 schema2
I wanna change the SCHEMA_OWNER to be schema1...
How can be done???
Plz Help me ASAP..
I need the Last 3 (by Date) process Keys , by Catalog and Process_ID. The ID column is an incrementing identity column unique to this table. Process_ID and Process Key are keys to other tables. I need some tips to get started.
ID dt Catalog Process_ID Process_Key
90604 7/31/2015 24274037 5792 44978
90605 7/15/2015 24274037 5794 44885
90606 6/15/2015 24274037 5794 44889
90607 7/16/2015 24274037 5795 9239
90609 7/16/2015 26082 10560 37808
[Code] ....
Hello, this is Subhani .
I am installing Sql 2005 standard version.
The problem is that while I am installing Sql 2005 the two warning messages are given that com plus catalog requirement? & minimum hardware requirement? So please suggest me, what I have to do to install successfully
I am building an intranet application for my company .. similar to code generator
I am developing ASP.NET Application for this
1) How do I display list of SQL Server on the Network
2) Once I have list of SQL Server, I asked user to select once of the Server, provide credential for that server and obtain list of Database for that Server
3) Once I have list of Database, I need list of table under particular database
How do I do this in ASP.NET Application ?
I recently completed a Data Dictionary for our internet store.
I have now been asked to make a catalog of all the stored procedures.
Does anyone know how I should go about this. Or have any suggestions.
I would greatly appreciate any input you may have.
Thanks,
Dianne
I want to create a full-text catalog.But when I entered the catolog's name 'softonline' and put the yes button,the system always prompt me the words "An unknown full-text failure (80004005) occurred in function CreateCatalog on full-text catalog 'softonline'". How can I do? Thank you very much.
View 1 Replies View RelatedHi Everybody,
Can anybody tell me what is Database Diagram or Object Diagram?. I have seen this word in one of the questions in this Discussion Board.
And also anybody can say what is Catalog?. One of my friend saying it is nothing but Master DB. Is it so?.
tks in advance,
Madha
Hey there,
I'm trying to run the following query:
if exists(select * from shistory.dbo.sysobjects where name='STOCK_815')
drop table [shistory.dbo.STOCK_815]
and I get the error:
"Cannot drop table 'shistory.dbo.STOCK_815', because it does not exist in the system catalog."
The table IS there, DOES exist, but I cannot run that query. The only way I can run it is by changing the name of the table to
STOCK_815 like this:
if exists(select * from Stock_History.dbo.sysobjects where name='STOCK_PRE_815')
drop table [STOCK_PRE_815]
Why?
Thx
I came across the following error message while backing up a database:
The backup of full-text catalog 'myCatalog' is not permitted because it is not online.
Changing the status to RESUME for full-text catalog "myCatalog" (5) in database "myDB"
Hi
I'm not a sql server savvy, so I need assistance on the following two scenarios:
A customer runs a script like this (slightly larger, but I ripped away the meat)
---------------------------------------
create database test_database
go
USE [test_database]
exec sp_changedbowner 'sa'
use master;
go
sp_grantlogin 'server01CUSTOM_ADMIN';
go
use test_database;
go
-- lots of table creations, where one of the tables are TEST_TABLE
sp_addrole 'ADMIN_ROLE';
Go
sp_grantdbaccess @loginame = 'server01CUSTOM_ADMIN', @name_in_db = 'USER_ADMIN';
go
sp_addrolemember @rolename ='ADMIN_ROLE' , @membername = 'USER_ADMIN';
Go
GRANT SELECT , UPDATE , INSERT , DELETE ON [dbo].[TEST_TABLE] TO [ADMIN_ROLE]
GO
---------------------------
Now, if a person is added to the server01CUSTOM_ADMIN group, he/she should be able to do the following: (let's say it's a he)
- Create a test.udl-file (win xp). Set a provider to sql server.
- On the connection-tab enter hostname of database server in the Data Source-field and use windows NT Integrated security.
- When he now test the connection, it should work, since he has access to the database.
- Also, using the dropdown "3. Enter the initial catalog to use:", he should see SOME datatables. Not ALL, not none. The ones that he has access to.
So, if TEST_DATABASE is the only access that server01CUSTOM_ADMIN has, that database and only that one should show, right?
In my customers scenario, some databases show (irrelevant ones), but not TEST_DATABASE. In my test, I still get ALL databases. Even after I rip the guy out of the Administrators-group and Users-group. He's only a member of the CUSTOM_ADMIN-group on server01. "Test connection" succeeds, and all the databases on the server shows.
What I hope for is following questions like "He's probably sysadmin, check it" etc, so that I can systematically (using your brains) filter out the reasons for these scenarios to happen.
Thanks in advance.
Hello,I am relatively new to SQL Server, although I have used Oracleextensively.In Oracle, there are system tables that you can query in order to geta list of all schemas and all the tables in them. Is there a similarconcept in SQLServer? How would I find about the system dictionarytables?TIA :-)
View 2 Replies View Related
I'm not sure how to go about setting this up, please assist?
I need to replicate a survey database. With each new survey, a new table is created within the database. I only need to replicate the new survey table to a remote database. I tried using SQL Server Replication but the catalog is fixed and if a new table is created, it will not be selected as part of the tables to be replicated.
My setup for both locations are:
Windows 2003
SQL Server 2005
Hi Experts:
Do users will still have access to the FullText catalog while the catalog is optimized (not rebuilt)?. My assumption is that they should have the access. Can anyone please confirm?.
Thanks
AK
Hi All,
I have a requirement where in for a given View name, I need to programatically find out all the tables that are used in the view and I also need to find out how each table in the view is linked.
For example, if I create a simple view like
CREATE VIEW XYZ AS
SELECT *
FROM TableA
INNER JOIN TableB ON TableA.ID = TableB.FKID
INNER JOIN TableC ON TableA.ID = TableC.FKID
I need to find out all the Tables involved in the view i.e. TableA, TableB and TableC. I also need to find out how TableA and TableB, TableA and TableC are linked (i mean the join Condition).
Could some one please point me to resources that can help me find the answer to this.
Thanks in advance
BK
I have a SQL 2005 Express installed in my machine and when I try to access it with the following Connection String:
Driver={SQL Server};Server=.SQLEXPRESS;initial catalog=xx;user id=xx;password=xx
I connect, but when I try to access any table from this database I get an error indicating that the object doesn't exist and if I use the fullname xx.table I get no errors.
What may be happening?
Thanks in advance
I'm trying to connect to VSS from my CLR procedure.
I'm getting this error..
Assembly
'microsoft.visualstudio.sourcesafe.interop, version=5.2.0.0,
culture=neutral, publickeytoken=b03f5f7f11d50a3a.' was not found in the
SQL catalog.
I added reference to VSS dll by opening the project file in notepad, as I couldn't right-click and do an add reference.
Here's the code...
using System;
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using Microsoft.SqlServer.Server;
using Microsoft.VisualStudio.SourceSafe.Interop;
public partial class StoredProcedures
{
[Microsoft.SqlServer.Server.SqlProcedure]
public static void PrintToday()
{
try
{
//' The SourceSafe INI file.
string iniVssPath = "C:/CLRVSS";
//' The SourceSafe User ID/Password.
string cVSSUserName = "Admin";
string cVSSPassword = "";
VSSDatabaseClass vssLib = null;
vssLib = new VSSDatabaseClass();
vssLib.Open(iniVssPath, cVSSUserName, cVSSPassword);
VSSItem VSS_Item = vssLib.get_VSSItem("$/Test", false);
VSS_Item.Destroy();
SqlPipe p;
p = SqlContext.Pipe;
p.Send("success");
}
catch
{
SqlPipe p;
p = SqlContext.Pipe;
p.Send("error");
}
}
};
I want to develop a windows application using cshap 2.0 and sql express 2005. How can i attach a full text catalog in csharp? How can i deploy full text catalog to the client machine?
View 2 Replies View RelatedOnce I add new data I can only get search results to return if I rebuild my fulltext catalog, how do I stop this?thanks-c
View 2 Replies View RelatedI need to develop a strong licensing solution based on the database accessed...
Currently our solution is easily hackable because the the license information is kept in the database of your choice and is not dependant on some static information, the current encryption key is static and kept in the software so it can be hacked easily. What i want to do to change this is simple in nature but i don't know how to get that one particular info i need.
I want to get some kind of unique identifier for a database (catalog) that sql server could generate. This info must be static and must not be movable. If for example, someone would backup and restore, this information would not be transfered with the backup. Thus, a user that backups his database and restores it on another database server or another database catalog even on the same server would corrupt his license since the Unique ID returned by the SQL Server would be different; the hashing code would change and thus the decryption would fail.
Is there any such info i can query using SQL that will not require admin rights?
I am trying to connect to a full text catalog in SQL. How do I do that? I tried using the same format as connecting to a table but it did not work.
View 1 Replies View Related