What is a reproduction (repro) script that I need to produce for a SQL Server bug?
February 4, 2000
A. In order for Microsoft to resolve a bug they need to re-create it on their systems. The best way to do this is to provide them with a repro script. They don't have access to your database, so the script needs to be able to show the problem when run on a brand-new install of SQL Server on a new database.
Therefore it needs to contain all tables, user defined data types, triggers, views etc. needed to show the problem. If it needs data then keep this to a minimum - use INSERT INTO VALUES (.....) type statements if possible. If not a small (zipped) amount of BCP data is ok.
Alternatively re-write your query (if possible) to run against the pubs or northwind (v7 only) databases as these are always installed with SQL Server and come complete with a variety of tables, foreign keys, indices, data etc.
If the script/data is reasonably short then post to one of the newsgroups and one of MVP's can report it to Microsoft for you.
If it isn't short or a repro script is not practical due to the amount of information/data needed then you will need to raise a bug with Microsoft PSS directly. (See MSPSS faq entry for details)
An example repro script below :-
--
-- Bug Title : Access violation
--
--
-- Versions affected : SQL 6.5
--
--
-- Fixed in : SQL 7.0
--
--
-- Microsoft incident / bug number : unknown/16767
--
--
-- Bug Description.
--
print
'
As title
'
--
-- Actual Repro script below here
--
use tempdb
go
CREATE TABLE table1
(
id int
)
GO
CREATE TABLE table2
(
id int
)
GO
CREATE TABLE table3
(
id int
)
GO
CREATE VIEW view1 AS
SELECT id
FROM table1
UNION ALL
SELECT id
FROM table2
GO
SELECT view1.id
FROM view1, table3
WHERE view1.id *= table3.id
GO
About the Author
You May Also Like