存储过程 带参数-SQL SERVER 存储过程问题

问题描述

SQL SERVER 存储过程问题

目的:
创建一个存储过程,入口参数是 表名称 ,功能是 若该表不存在就创建之

我的做法:
CREATE PROCEDURE [dbo].[CCT]
@TblName varchar(32)
AS
begin
Declare @vproc As varchar(8000)

set @vproc=' if object_id(['+@TblName+']) is null
begin
Create Table '+@TblName+' not null primary key,
webid int default 0
)
end'
exec(@vproc)
end

实际运行情况:总是说“if object_id(['+@TblName+']) is null”这条语句有问题。
请问大侠,该如何解决?

另请推荐一本深入浅出、易学易懂的相关书籍。

先谢了!

时间: 2024-09-19 10:09:29

存储过程 带参数-SQL SERVER 存储过程问题的相关文章

存储过程 带参数-在调用存储过程时传入值不会被解析

问题描述 在调用存储过程时传入值不会被解析 if(!$is_exist2){ $sql_page=" create procedure page_art(in off int(10),in page_size int(10)) BEGIN select id,title,addtime,type from cj_art where type=9 order by addtime desc limit off,page_size; END "; //建立存储过程 mysql_query(

MySql存储过程 带参数处理方式

下文介绍的MySql存储过程是带参数的存储过程(动态执行SQL语句),该MySql存储过程是根据用户输入的条件和排序方式查询用户的信息,排序条件可以没有调用方式: call GetUsersDynamic('age<=30',''); /********动态查询用户的信息********/     CREATE PROCEDURE GetUsersDynamic(WhereCondition varchar(500),OrderByExpress varchar(100))     begin 

Sql Server 存储过程调用存储过程接收输出参数返回值

创建存储过程: ALTER PROCEDURE [dbo].[GetCustomers] (@rowcount INT OUTPUT) AS SELECT [CustomerID] ,[CompanyName] ,[ContactName] ,[ContactTitle] ,[Address] ,[City] ,[Region] ,[PostalCode] ,[Country] ,[Phone] ,[Fax] FROM [Northwind].[dbo].[Customers] SET @row

c#-C#程序调用SQL SERVER存储过程的output参数始终为空,求助?

问题描述 C#程序调用SQL SERVER存储过程的output参数始终为空,求助? C#中的如下两条语句调用存储过程output参数始终为空(dataGridView1能正确调用到想要的select数据,但是存储过程的两个输出参数值不能传递给两个texBox.Text),不知为何?textBox1.Text = parameters[2].Value.ToString();textBox2.Text = nowpage + ""/"" + parameters[3

SQL Server存储过程中使用表值作为输入参数示例_MsSql

在2008之前如果我们想要将表作为输入参数传递给SQL Server存储过程使比较困难的,可能需要很多的逻辑处理将这些表数据作为字符串或者XML传入. 在2008中提供了表值参数.使用表值参数,可以不必创建临时表或许多参数,即可向 Transact-SQL 语句或例程(如存储过程或函数)发送多行数据,这样可以省去很多自定义的代码.这样的操作对于存储过程内基于表函数的操作变得非常容易操作. 表值参数是使用用户定义的表类型来声明的.所以使用之前要先定义表类型. /* 创建表类型.*/ CREATE

ASP调用带参数的MSSQL存储过程,并返回临时表记录集

前些天,阿里西西web团队(Alixixi.com)在开发一个系统平台时,需要通过存储过程调用多个表的几个字段,合并到一个临时表中,并进行排序返回给ASP调用. 下面,我把经验分享出来: 1.存储过程部分: 以下是存储过程部分:CREATE PROCEDURE [dbo].[alixixi] @sNum int, @sOrder varchar(20)  AS SET nocount on create table #btable (id int,channelid int,classid in

SQL SERVER存储过程语法详解

SQL SERVER存储过程语法: Create PROC [ EDURE ] procedure_name [ ; number ] [ { @parameter data_type } [ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ]

sql-java 执行SQL Server 存储过程

问题描述 java 执行SQL Server 存储过程 存储过程 有 2个输入参数 为 int nvarchar 类型 1个输出参数 nvarchar类型 -- String orderNo=""""; // 返回值 con=BaseDao.getConn(); //获取连接 CallableStatement cstmt=null; try { cstmt=con.prepareCall(""{?=call proc_createOrder(?

SQL Server存储过程编写与优化指南

sql语句执行的时候要先编译,然后执行.存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中.用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它.存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程. 存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可.在ORACLE中,若干个有联系的过程可以组合在一起构成程序包. 存储过程是利用S