sql procedure可以创建表格吗

已举报 回答 关注
sql procedure可以创建表格吗
问在线客服
扫码问在线客服
  • 回答数

    9

  • 浏览数

    7,524

9个回答 默认排序
  • 默认排序
  • 按时间排序

已采纳
建用户和授权要用DBA

最简单得建用户:
create user 用户名 identified by 密码

用户解锁 alter user 用户名 account unlock(不解锁无法登陆)

授权用 grant

建完用户首先要授权登陆权限

grant create session to 用户名

授权可以授权给角色和用户
也可以把角色授权给角色和用户

其他得类似 创建表得权限类似如下格式:
grant create table to 用户
取消 评论
主要是没commit提交事务。变量不赋值也行的;先赋值程序健壮性好点。
取消 评论
打开工具栏里的新建查询 用Sql语句输入你想要建的表和内容
取消 评论
主要有以下三种方法:
一,在查询分析器中,使用命令建表:CREATE TABLE TALBNEMAE(FIELDA 字段类型,fieldb 类型类型 ...fieldn 字段类型)
二,在企业管理器的表设计器中建表,通过右击指定数据库目录中的表,点击新建表,即可通过添加列,选择类型和参数等,建立一个新表。
三,在存储过程中动态建表。一般要先判断表是不存在,如果不存在,则使用CREATE TABLE命令建表。
取消 评论
TABLE 1
ID DATE 金额
Z 12/10/2011 30,000,000.00
Z 12/22/2011 20,000,000.00
Z 01/01/2012 10,000,000.00
Z 01/05/2012 10,014,000.00
Z 01/06/2012 9,984,000.00
Z 01/10/2012 9,988,000.00
Z 01/20/2012 9,978,000.00

TABLE 2
ID START_DATE END_DATE 利率
Z 01/02/2012 01/03/2012 0.25
Z 01/04/2012 01/10/2012 0.3
Z 01/11/2012 01/15/2012 0.15
Z 01/16/2012 01/30/2012 0.2
取消 评论
“比较结果=case ....”不对,oracle中没有这样的语法,你直接case when end ,然后将比较结果作为case when end 的别名,改成如下试试:
SELECT CASE
WHEN a.表名1 Isnull AND b.序号 = 1 THEN
'库1缺少表:' || b.表名2
WHEN b.表名2 IS NULL AND a.序号 = 1 THEN
'库2缺少表:' || a.表名1
WHEN a.字段名 IS NULL AND EXISTS (SELECT 1 FROM #tb1 WHERE 表名1 = b.表名2) THEN
'库1 [' + b.表名2 + '] 缺少字段:' || b.字段名
WHEN b.字段名 IS NULL AND EXISTS (SELECT 1 FROM #tb2 WHERE 表名2 = a.表名1) THEN
'库2 [' + a.表名1 + '] 缺少字段:' || a.字段名
WHEN a.标识 <> b.标识 THEN
'标识不同'
WHEN a.主键 <> b.主键 THEN
'主键设置不同'
WHEN a.类型 <> b.类型 THEN
'字段类型不同'
WHEN a.占用字节数 <> b.占用字节数 THEN
'占用字节数'
WHEN a.长度 <> b.长度 THEN
'长度不同'
WHEN a.小数位数 <> b.小数位数 THEN
'小数位数不同'
WHEN a.允许空 <> b.允许空 THEN
'是否允许空不同'
WHEN a.默认值 <> b.默认值 THEN
'默认值不同'
WHEN a.字段说明 <> b.字段说明 THEN
'字段说明不同'
ELSE
''
END 比较结果,
*
FROM #tb1 a
FULL JOIN #tb2 b
ON a.表名1 = b.表名2
AND a.字段名 = b.字段名
WHERE a.表名1 IS NULL
OR a.字段名 IS NULL
OR b.表名2 IS NULL
OR b.字段名 IS NULL
OR a.标识 <> b.标识
OR a.主键 <> b.主键
OR a.类型 <> b.类型
OR a.占用字节数 <> b.占用字节数
OR a.长度 <> b.长度
OR a.小数位数 <> b.小数位数
OR a.允许空 <> b.允许空
OR a.默认值 <> b.默认值
OR a.字段说明 <> b.字段说明
ORDER BY Isnull(a.表名1, b.表名2),
Isnull(a.序号, b.序号)
取消 评论
检查看你是不是改动了表里的某列列名,及关联的项.导致数据读取时,某些数据读不出来而出错!
取消 评论
create table student(studentname varchar(10) primary key,age int);--参照上边的创建看这个解释

create 创建 table 表 student 名字为student
(studentname 字段名为studentname varchar(10) 类型为字符型,长度10 primary key 主键,
age 字段名为age int 类型为整型);

--添加新字段
alter table student add col1 varchar(10)
alter 修改table 表 student 名字为student add 添加字段 col1 名字为col1 varchar(10) 类型为字符型,长度10

字段名字和类型长度什么的,你可以根据你需要去修改
取消 评论
加载全部9个答案 加载中...
ZOL问答 > 相机 > 其他 > sql procedure可以创建表格吗

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

扫码参与新品0元试用
晒单、顶楼豪礼等你拿

扫一扫,关注我们
提示

确定要取消此次报名,退出该活动?