Tải bản đầy đủ (.pdf) (3 trang)

Bài tập thực hành Exercise

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (17.29 KB, 3 trang )

SQL Server 2000
Exercise 2:
Manipulate Data and Stored Procedure

-----Week 5-----
Please follow those steps to practise:
1. Use bcp to export all data from Orders table of PracticeDB to
c:\Orders.txt (or to c:\Orders.csv)
2. Change some data in the c:\Orders.txt and save. Then import to Orders
table from the text file using bcp
3. Import Orders.txt to Orders table using BULK INSERT
4. Create a Linked Server ‘LinkedPracticeDB’ which link to an Access
database ‘PracticeDB.mdb’ (firstly you have to create an Access database
similar to PracticeDB in SQL Server and input some data). Then do a
select data using four-part name and OPENQUERY
5. Using ad hoc computer name with OPENROWSET and
OPENDATASOURCE functions to select data from ‘PracticeDB.mdb’
6. Create the following Cursor

DECLARE @au_lname varchar(40), @au_fname varchar(20)
DECLARE Employee_Cursor CURSOR FOR

SELECT LastName, FirstName FROM Northwind.dbo.Employees

OPEN Employee_Cursor

FETCH NEXT FROM Employee_Cursor INTO @au_lname, @au_fname
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT 'Author:' + @au_fname + ' ' + @au_lname
FETCH NEXT FROM Employee_Cursor INTO @au_lname,


@au_fname
END
CLOSE Employee_Cursor
DEALLOCATE Employee_Cursor


7. Create the following stored procedure and try to execute with some
values

CREATE PROCEDURE AddNewOrder
@OrderID smallint,
@ProductName varchar(50),
@CustomerName varchar(50),
@Result smallint=1 Output
AS
DECLARE @CustomerID smallint
BEGIN TRANSACTION
If not Exists(SELECT CustomerID FROM Customers WHERE
[Name]=@CustomerName)
BEGIN
SET @CustomerID= (SELECT Max(CustomerID) FROM
Customers)
SET @CustomerID=@CustomerID+1
INSERT INTO Customers
VALUES(@CustomerID,@CustomerName)
If Exists(SELECT OrderID FROM [Orders] WHERE
OrderID=@OrderID)
BEGIN
SELECT @Result=1
ROLLBACK TRANSACTION

END
Else
BEGIN
INSERT INTO
[Orders](OrderID,ProductName,CustomerID)
VALUES(@OrderID,@ProductName,@CustomerID)
SELECT @Result=0
COMMIT TRANSACTION
END
END
Else
BEGIN
If Exists(SELECT OrderID FROM [Orders] WHERE
OrderID=@OrderID)
BEGIN
SELECT @Result=1
ROLLBACK TRANSACTION
END
Else
BEGIN
INSERT INTO
[Orders](OrderID,ProductName,CustomerID)
VALUES(@OrderID,@ProductName,@CustomerID)
SELECT @Result=0
COMMIT TRANSACTION
END
END
Print @Result
Return


9. Using VB 6 or VB.NET to execute the ‘AddNewOrder’ stored procedure
10. Using xp_cmdshell extended stored procedure to send a message
(xp_cmdshell ‘net send Hello’)

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×