TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
Lefteris Gkinis
NA
2
0
Stored Procedure in SQL 2008
Dec 19 2009 1:13 PM
I have create a stored procedure with VB.NET
This procedure goes to a remote Server (for the moment on my near server Win 2003)
until now everything are ok
The procedure is created and i call her from my program
The name is sp_AddStreamDB
mycommand = new sqlcommand("EXEC sp_AddStreamDB 'C:\sqlDATA\', 'RemoteDB'",RemoteSQLConn)
myCommand.ExecuteNonQuery()
Normally the procedure will take the two parameters and she put them in there own right places to executed, but that is not Happen
CREATE PROCEDURE [dbo].[sp_AddStreamDB](
-- Add the parameters for the stored procedure here
@DPath varchar(MAX),
@DBName varchar(50),
@Qchar varchar(1) = "'"
) AS
BEGIN_TRY:
SET QUOTED_IDENTIFIER ON;
SET NOCOUNT ON;
-- Insert statements for procedure here
DECLARE
@ErrMsg nvarchar(4000),
@DBName1 varchar(50),
@DBName2 varchar(50),
@DBNamefs varchar(50),
@DBNamelog varchar(50),
@FileGroupN varchar(100),
@DATName varchar(MAX),
@LOGName varchar(MAX),
@FSName varchar(MAX)
SET @DBName1 = (@DBName + '1')
SET @DBName2 = (@DBName + '2')
SET @DBNamefs = (@DBName + 'fs')
SET @DBNamelog = (@DBName + 'log')
SET @FileGroupN = (@DBname + 'StreamGroup')
SET @DATName = (@Qchar + @DPath + @DBName +'_dat.mdf' + @Qchar)
SET @LOGName = (@Qchar + @DPath + @DBName +'_log.ldf' + @Qchar)
SET @FSName = (@Qchar + @DPath + @DBName + '_fs' + @Qchar)
BEGIN_CATCH:
SELECT ERROR_MESSAGE() as ErrorMessage;
SELECT @ErrMsg = ERROR_MESSAGE()
CREATE DATABASE DBName ON PRIMARY (NAME = DBName1, FILENAME = DATName), FILEGROUP FileGroupN CONTAINS FILESTREAM (NAME = DBNamefs, FILENAME = FSName) LOG ON (NAME = DBNamelog, FILENAME = LOGName)
RAISERROR (@ErrMsg,1,1)
RETURN 0
END_CATCH:
END_TRY:
=====================
CREATE DATABASE is the important issue
This procedure gives me an error "The File Name 'DATName' is not in the right format ....."
The varable @DATName is 'C:\sql\DATA\RemoteDB.dat.mdf' ( i have check this by PRINT @DATName and it is OK
But for some reason the line CREATE DATABASE refused to take the value of the variable and takes just the name (only the name) DATName which tries to excecute the name as value and of course that returns me the error
NOW
IS THERE ANYBODY WHICH CAN ASSIST ME ON THIS ISSUE?
Lefteris Gkinis
[email protected]
0030 22960 32843
Reply
Answers (
0
)
Automate AdWords campaigns in VB.NET/C#
i need fast help