永发信息网

视图里面怎么新增一个全新字段,在原来表内没有这列,并且不能在原有的表中增加这个字段,有办法么?!

答案:2  悬赏:70  手机版
解决时间 2021-02-09 11:42
  • 提问者网友:呐年旧曙光
  • 2021-02-08 21:15
视图里面怎么新增一个全新字段,在原来表内没有这列,并且不能在原有的表中增加这个字段,有办法么?!
这些视图是通过远程连接的另一个数据库(A)而建立的,但是数据库A中的表中我没有修改权限(也不能增加这个修改权限,只能读取),我读过来了
如A表(字段 i,a,b,c),B表(字段i,g,h),视图V(select A.*,B.g from A inner join B on A.i=B.i)
假设A中有一条记录为 (20, 'hello ', 'world ', '1 ')
B中有一条为 (20, 'OK ',100)
如果是select * from V 出来的数据结果应该是
i,a,b,c,g
20, 'hello ', 'world ', '1 ', 'ok '
现增加字段d(允许为空)于c后,成新表A(字段a,b,c,d)
即,select * from V 出来的数据结果 为
i,a,b,c,d,g
20, 'hello ', 'world ', '1 ', 'ok ',null
请问该如何解决?
并且,如果我想对已经添加的字段进行修改,可以么?!
最佳答案
  • 五星知识达人网友:雪起风沙痕
  • 2021-02-08 21:28
号,姓名,性别)
课程表(课程代号,课程名)
选课表(学号,课程代号)

你可以不指定选课表中的学号必须外键到学生表主键学号,,也不需要
指定选课表中的课程代号必须外键到课程表主键课程代号

但你必须知道他们之间是存在关系的,
假如你插入条选课纪录,就把学号和课程代号插入,这2个可以通过不同方式获取

这样子可以避免在数据删除、数据库移植、sql脚本编写上因为主外键来带来的麻烦,前提是开发者对于业务十分了解,了解彼此的关系

缺点,造成数据混乱、long余,无效数据过多

前期学习时最好加建立关系,以后熟练了可以不建立关系
全部回答
  • 1楼网友:孤独的牧羊人
  • 2021-02-08 21:53
首先,要清楚视图的概念: 视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。 由于视图的数据来自自定义视图时的查询所引用的表,因此要想在视图中新增一个全新的字段,只需要在其引用的表中增加此字段,然后修改生成动态视图的查询语句即可; 在表中增加此字段的语法是 如果此字段为int型,是不能指定长度的:alter table 表名 add 字段 int 0 如果此字段为char型:alter table 表名 add 字段 char(10) null 如果此字段为数值型:alter table 表名 add 字段 decimal(10,0) 0
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯