动态SQL语句创建数据表

时间:2021-09-09 12:20:28

写存储过程,我们会经常需要动态创数据表,如临时表等。下面例子是使用Execute来创建一个数据表。

-- 宣告一个变量
DECLARE   @tableName   NVARCHAR ( 30 =   ' DummyTableName '

 

动态创建表,

动态SQL语句创建数据表动态SQL语句创建数据表代码
EXECUTE ( '
--判断表对象是否存在,
IF OBJECT_ID(
'' [dbo].[ '   +   @tableName   +   ' ] '' ) IS NOT NULL
DROP TABLE [dbo].[
'   +   @tableName   +   ' ];

--创建一个表
CREATE TABLE [dbo].[
'   +   @tableName   +   '
     (   
        [IValue] DECIMAL(18,6),
        [DValue] DECIMAL(18,6)
     );
' )

  

然后可以使用这个表,

  INSERT   INTO   [ dbo ] . [ DummyTableName ]   VALUES  ( 2.0 , 3.0 ),( 2.5 , 3.0 );
 
SELECT   *   FROM   [ dbo ] . [ DummyTableName ] ;

 
结果,

动态SQL语句创建数据表