当前位置: 代码迷 >> Sql Server >> Create table Table1%s是什么意思啊解决方案
  详细解决方案

Create table Table1%s是什么意思啊解决方案

热度:213   发布时间:2016-04-27 14:04:23.0
Create table Table1%s是什么意思啊?
需要创建N个有相同字段的表table(1-N)
看到有这样的sql语句Create table tabvos%s不会用?
如下:
CREATE TABLE tabvos%s
(
  PRI_KEY1 NUMERIC(4) DEFAULT 0 /* 1:PRIMARY KEY
  , PRI_KEY2 NUMERIC(4) DEFAULT 0 /* 2:PRIMARY KEY
  , MCNO NUMERIC(5) DEFAULT 0 /* 3:設定号機
  , CONSTRAINT PK_VOSSET%s /* プライマリキー名称 */
PRIMARY KEY(
PRI_KEY1 /* 1:PRIMARY KEY */
  , PRI_KEY2 /* 2:PRIMARY KEY
  , MCNO /* 3:設定号機
)
);

sqlserver报%附近有语法错误,不知道应该怎么用这个%s
求教各位啊!

------解决方案--------------------
这是oracle的语法啊 哥哥!!
------解决方案--------------------
SQL code
DECLARE @i INT SET @i=1DECLARE @sql VARCHAR(8000) SET @sql=''WHILE @i<=10BEGIN    SET @sql='CREATE TABLE [tabvos'+LTRIM(@i)+']        (          PRI_KEY1 NUMERIC(4) DEFAULT 0 ,          PRI_KEY2 NUMERIC(4) DEFAULT 0 ,          MCNO NUMERIC(5) DEFAULT 0 ,          CONSTRAINT PK_VOSSET_'+LTRIM(@i)+' PRIMARY KEY ( PRI_KEY1, PRI_KEY2, MCNO )        ) ;'    EXEC(@sql)    SET @[email protected]+1end
------解决方案--------------------
这个不是合法的SQL语句,应该是程序里动态创建表的语句
%s代表的是序号,tabvos%s传值过来应该是tabvos1, tabvos2,……,tabvosN的意思
------解决方案--------------------
不能这样命名!!!
  相关解决方案