RX

[复制链接]
查看11 | 回复2 | 2013-2-25 14:51:24 | 显示全部楼层 |阅读模式
在oracle数据库创建一张表storage,要求如下:表中的列从stack1........stack99,都是number类型的, 总共100列,这个要怎么创建?
回复

使用道具 举报

千问 | 2013-2-25 14:51:24 | 显示全部楼层
SQL> declare
2 l_sql_str varchar2(30000);
3begin
4 l_sql_str := 'create table storage(';
5 for i in 1 .. 100
6 loop
7if i100
8then
9 l_sql_str := l_sql_str || 'stack' || to_char(i) || ' ' || 'number,';
10else
11 l_sql_str := l_sql_str || 'stack' || to_char(i) || ' ' || 'number';
12end if;
13 end loop;
14 l_sql_str := l_sql_str || ')';
15
16 execute immediate l_sql_str;
17end;
18/
PL/SQL 过程已成功完成。
SQL> desc storage
名称
是否为空? 类型
----------------------------------------- -------- ----------------------------
STACK1
NUMBER
STACK2
NUMBER
STACK3
NUMBER
STACK4
NUMBER
STACK5
NUMBER
STACK6
NUMBER
STACK7
NUMBER
STACK8
NUMBER
STACK9
NUMBER
STACK10
NUMBER
STACK11
NUMBER
STACK12
NUMBER
................................................................................
STACK97
NUMBER
STACK98
NUMBER
STACK99
NUMBER
STACK100
NUMBER
SQL>
回复

使用道具 举报

千问 | 2013-2-25 14:51:24 | 显示全部楼层
jianping1991 发表于 2013-3-27 09:34
SQL> declare
2 l_sql_str varchar2(30000);
3begin

3Q
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行