SSMS Missing Index Report - ssms

A colleague has screenshotted the Missing Index Report from SQL Server Management Stuido, but cannot tell me how to access this myself!!
I've scanned through the "Reports" menus by right clicking various items in SSMS and googled, but can't seem to find out where to open this report.
Can you help?
SQL Server Management Studio 15.0.18206.0

In SSMS right click the server, Reports->Performance Dashboard.
Bottom right of the page is a box headed Miscellaneous Information
A link Missing Indexes will take you there.
Long winded but it works for me. If you find a more direct method, please let me know.

Related

How can I see which tables are changed in SQL Server?

I have a database which I didn't make and now I have to work on that database. I have to insert some information, but some information must be saved in not one table but several tables. I
can use the program which have made the database and insert information with that. While I am doing that, I want to see that which tables are updated. I heard that SQL Server Management Studio has a tool or something which make us see changes.
Do you know something like that? If you don't, how can I see changes on the database's tables? If you don't understand my question, please ask what I mean. Thanks
Edit : Yes absolutely Sql Profiler is what I want but I am using SQL Server 2008 R2 Express and in Express edition, Sql Profiler tool does not exist in Tools menu option. Now I am looking for how to add it.
Edit 2 : Thank you all especially #SchmitzIT for his pictured answer. I upgraded my SQL Server Management Studio from 2008 R2 express edition to 2012 Web Developer Edition. SQL Profiller Trace definitely works.
I agree with #Lmu92. SQL Server Profiler is what you want.
From SQL Server Management Studio, click on the "Tools" menu option, and then select to use "SQL SErver Profiler" to launch the tool. The profier will allow you to see statements executed against the database in real time, along with statistics on these statements (time spent handling the request, as well as stats on the impact of a statement on the server itself).
The statistics can be a real help when you're troubleshooting performance, as it can help you identify long running queries, or queries that have a significant impact on your disk system.
On a busy database, you might end up seeing a lot of information zip by, so the key to figuring out what's happening behind the scenes is to ensure that you implement proper filtering on the events.
To do so, after you connect Profiler to your server, in the "Trace properties" screen, click the "Events Selection" tab:
You probably are good to uncheck the boxes in front of the "Audit" columns, as they are not relevant for your specific issue. However, the important bit on this screen is the "Column filters" button:
This is where you will be able to implement filters that only show you the data you want to see. You can, for instance, add a filter to the "ApplicationName", to ensure you only see events generated by an application with the name you specify. Simply click on the "+" sign next to "Like", and you will be able to fill in an application name in the textbox.
You can choose to add additional filters if you want (like "NTUsername" to filter by AD username, or "LoginName" for an SQL Server user.
Once you are satisfied with the results, click "OK", and you will hopefully start seeing some results. Then you can simply use the app to perform the task you want while the profiler trace runs, and stop it once you are done.
You can then scroll through the collected data to see what exactly it has been doing to your database. Results can also be stored as a table for easy querying.
Hope this helps.
Although you describe in your question what you want, you don't explain why you want it. This would be helpful to properly answer your question.
ExpressProfiler is a free profiler that might meet your needs.
If you're looking to track DDL changes to your database, rather than all queries made against it, you might find SQL Lighthouse useful, once it is released in Beta shortly.
Disclosure: I work for Red Gate.
Do you know something like that? If you don't, how can I see changes
on the database's tables? If you don't understand my question, please
ask what I mean. Thanks
Red gate makes a lot of great tools. You can always make a database comparison. That will require that you make a backup, then doing whatever you want to do, and the compare the two databases, there is a free trial, works perfect to compare which tables has changed (deleted/inserted and modified)
http://www.red-gate.com/products/sql-development/sql-data-compare/
what you might maybe be looking for is "SQL Server Profiler". It's a SQL monitor where you can see all the SQL queries running real time.
http://technet.microsoft.com/en-us/library/aa173918(v=sql.80).aspx
Hope that helps you.
As far as I know SQL Profiler tool is not included in the Express edition of SQL Server (only Developer edition contains it). Maybe you can purchase it separately.
If you want you can try this https://sites.google.com/site/sqlprofiler/ free tool for profiling. Maybe it has limitations, but it you can check it.
There are also some profiling tools for integration with Visual studio, and also the ReSharper has InteliTrace (if you are using the tool at all).
Cheers.

Creating a specific database deployment script

I have been asked to migrate a schema from our testing area into our staging area.
As someone that has never done this before my first instinct would be to paste every script into one large script and hope that I have done it in the right order.
Is there a better way? If anyone could point me to this information I'd be very grateful.
You can use the Generate Script option when right clicking on database in Management Studio and even choosing to export data to the file in last step by clicking the Advanced button.
A tutorial can be found here How to: Generate a Script (SQL Server Management Studio)

Full Text Index on SQL Server 2008

We can index the table by right-clicking on the table name in SQL management studio and clicking on Full-Text index.
This option is present but is 'disabled' (appears in light gray) in my management studio.
Also MSDN blogs points out regarding MSSQLFDLauncher. This is also absent in my case.
http://msdn.microsoft.com/en-us/library/ms345189(v=SQL.100).aspx
Any help would be highly appreciated
Without sounding too obvious have you installed the full text component.

How to see the contents of deployed datasource?

I've inherited a project (without a handy handover) that contains reports published to a Reporting Server (2005).
MY SSRS knowledge is 4 years stale, so I need your help.
I need to edit one of the published reports, is this possible?
I also want to peek into the Data Source on the RS, because that's probably where I can change stuff.
I'll add more info as I get a better understanding of what exactly to ask.
EDIT: I found a project for some of the reports, opened up in VS2005 BI.
Still, how do I see where the Data Source gets its data?
It brings back 56 fields but I don't know which tables/stored procs/queries are used to get these.
Yes you can.
1st - to edit the published reports: Browse to the folder containing the report source you want on report server (web server). On the right side click 'Show Details'. Now click the properties icon under the 'Edit' column. Near the bottom you will see two links: Edit & Update. Click edit and the source RDL file will start to download. This is the actual report source.
You can import this right into a VS2005 report project and have full access for modifications.
2nd - As to the project you found: After opening an RDL file for editing, click the 'Data' tab. directly under that you will see a drop down list labeled 'Dataset:'. A report can have one or more datasets. These are the actual queries that generate report data. Also clicking '...' will allow you to see other properties of each dataset, such as parameters, etc.
You can run a profiler on your server, then run your report. The profiler give you most info about your query or stored procedure.

External Tool Development for SQL Server Management Studio 2005

Does anyone have any experience of developing external tools for SSMS 2005.
Ideally I would like to be able to interact with the query windows directly, for example, taking the query text from the window to perform some processing on it.
Any pointers in the right direction would be great.
Thanks in advance
Very late entry...
Example of how to do it here
And here too
Have you looked at Sql Server Management Objects (SMO)?
http://msdn.microsoft.com/en-us/library/ms162557.aspx
The best example of this I have seen for SSMS is SQL Prompt by Red Gate
SQL Prompt runs a seperate .NET app that sits in your systray and is in some way part of the magic of the integration.
For loading an add-in, you will want to create a key under:
HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\90\Tools\Shell\AddIns\
...in order to have SSMS load your add-in.
Hope this helps
This link explains adding external tools to ssms with screen shots.
It also has procedure to add them as a button.
http://sqlserverlearner.com/2011/sql-server-external-tools