use pubs
go
if exists(select name from sysobjects
where name = 'createdatabase' and type ='p')
drop procedure createdatabase
go
create procedure createdatabase(@databasefilename varchar(50))
ascreate database @databasefilename --提示这里有错,为什么?
on
(
....
)
log on
(
....
)go之所以用变量,目的:
在VC程序中多次调用这个存储过程,创建多个数据库,如果不用这种方法,还有它法来实习这个目标吗,谢谢。
go
if exists(select name from sysobjects
where name = 'createdatabase' and type ='p')
drop procedure createdatabase
go
create procedure createdatabase(@databasefilename varchar(50))
ascreate database @databasefilename --提示这里有错,为什么?
on
(
....
)
log on
(
....
)go之所以用变量,目的:
在VC程序中多次调用这个存储过程,创建多个数据库,如果不用这种方法,还有它法来实习这个目标吗,谢谢。
解决方案 »
- 控件EnableWindow问题
- 编辑框OnChange问题
- 求一个"守护"程序或源代码.
- HOOK高手进来讨论一下Vista下的API HOOK
- 求助:我在程序中使用webbrowser来显示网页,但访问某些网站时有弹出广告窗口,请问如何屏蔽这些窗口不让弹出。
- SetTextCharacterExtra设置cedit控件字间距,控件输入时,间距不是设置的间距呢?textout正确.
- 用socket写的程序,在令牌环网上和在以太网上会有什么不同吗?
- 粒子碰撞检测问题
- 太奇怪了
- 小妹在编网络程序中遇到麻烦啦,谁能回答,愿意……………
- 如何在98下不用注销而使用程序改变当前的登用户身份(解决了给100分)
- 数据库的创建问题
on
(
....
)
log on
(
....
)改為串執行,參考﹕
declare @abc
set @abc='create database ' + @dname + '...'
execute (@abc)
where name = 'sp_create_database' and type ='p')
drop procedure sp_create_database
gocreate procedure sp_create_database@dbname sysname = null /* name of db */asdeclare @retcode int,
@exec_str nvarchar (460)if (not (is_srvrolemember('sysadmin') = 1)) -- Make sure that it's the SA executing this.
begin
raiserror(15247,-1,-1)
return(1)
endif @dbname is null
begin
raiserror (15261,-1,-1)
return (1)
endif exists (select * from master.dbo.sysdatabases where name = @dbname)
begin
raiserror(15032,-1,-1,@dbname)
return(1)
end/* Check to see if a valid database name was supplied. */
exec @retcode = sp_validname @dbname
if @retcode <> 0
return(1)/* Create the database's system device segment. */
select @exec_str = 'CREATE DATABASE '
+ quotename( @dbname , '[')
+ ' ON (NAME ='
+'apple_equipment_service_db_dat'
+ ',FILENAME ='
+''''
+ 'c:\apple_equipment_service_dbdat.mdf'
+''''
+ ',SIZE ='
+ convert(varchar(28),5)
+',MAXSIZE ='
+convert(varchar(28),20)
+',FILEGROWTH ='
+convert(varchar(28),1)
+ ') LOG ON (NAME='
+ 'apple_equipment_service_db_log'
+ ',FILENAME ='
+''''
+ 'c:\apple_equipment_service_dbdat.ldf'
+''''
+ ',SIZE ='
+ convert(varchar(28),5)
+',MAXSIZE ='
+convert(varchar(28),20)
+',FILEGROWTH ='
+convert(varchar(28),1)
+ ')'
exec(@exec_str)if @@error <> 0
begin
raiserror(15264,-1,-1,'system or log')
return(1)
endreturn(0)