精华内容
下载资源
问答
  • 基本视图类 1)APIView 特点 需要自定义get、post、put等请求方法,并且自己实现方法内部的所有逻辑。 必须用实例化类的方式来调用序列化器,比如 serializer = ClassInfoSerializer(books, many=True)...

    基本视图类

    1)APIView

    特点

    1. 需要自定义get、post、put等请求方法,并且自己实现方法内部的所有逻辑。

    2. 必须用实例化类的方式来调用序列化器,比如

      serializer = ClassInfoSerializer(books, many=True)
      

    使用场景

    1. 视图中实现的功能比较简单
    2. 对序列化器依赖不强,只需要序列化数据,不要其他的验证,保存修改等操作
    3. 不操作数据库

    2)GenericAPIView

    特点

    1. 同样需要自定义get、post等方法,但是可以配合扩展类,简化方法内部的逻辑

    2. 为列表视图和详情视图提供了通用支持方法,比如

      get_queryset(self)
      get_serializer(self, args, *kwargs)  可以在其他扩展类中使用
      分页过滤
      
    3. 配合扩展,简化视图编写

    使用场景

    1. 列表需要分页,过滤
    2. 需要简化视图方法,配合扩展类

    视图扩展类

    扩展类必须配合GenericAPIView使用

    扩展类内部的方法,在调用序列化器时,都是使用get_serializer

    需要自定义get、post等请求方法,内部实现调用扩展类对应方法即可,比如:

    class ClassListView(ListModelMixin, GenericAPIView):
        queryset = ClassInfo.objects.all()
        serializer_class = ClassInfoSerializer
    
        def get(self, request):
            return self.list(request)
    

    1)ListModelMixin

    1. 提供list方法,快速实现列表视图
    2. 调用GenericAPIView设置好的结果集
    3. 调用GenericAPIView设置好的序列化器

    2)CreateModelMixin

    1. 提供create(request, *args, **kwargs)方法快速实现创建资源的视图
    2. 实际创建功能由序列化的save方法完成
    3. save方法会去调用序列化器的create方法

    3)RetrieveModelMixin

    1. 提供retrieve(request, *args, **kwargs)方法,可以快速实现返回一个存在的数据对象。

    4)UpdateModelMixin

    1. 提供update(request, *args, **kwargs)方法,可以快速实现更新一个存在的数据对象。
    2. 内部更新功能调用序列化器的save方法
    3. save方法会调用序列化器的update方法

    5)DestroyModelMixin

    1. 提供destroy(request, *args, **kwargs)方法,可以快速实现删除一个存在的数据对象。
    2. 内部模型对象的delete方法

    子视图类

    特点

    1. 类视图中不需要自定义具体的get、post等请求方法

    2. 对GenericAPIView和视图扩展类的进一步封装

    使用场景

    1. 对应不同请求,继承相应的子类视图
    2. 操作模型类的情况比较多

    1) CreateAPIView

    提供 post 方法

    继承自: GenericAPIView、CreateModelMixin

    2)ListAPIView

    提供 get 方法

    继承自:GenericAPIView、ListModelMixin

    3)RetireveAPIView

    提供 get 方法

    继承自: GenericAPIView、RetrieveModelMixin

    4)DestoryAPIView

    提供 delete 方法

    继承自:GenericAPIView、DestoryModelMixin

    5)UpdateAPIView

    提供 put 和 patch 方法

    继承自:GenericAPIView、UpdateModelMixin

    6)RetrieveUpdateAPIView

    提供 get、put、patch方法

    继承自: GenericAPIView、RetrieveModelMixin、UpdateModelMixin

    7)RetrieveUpdateDestoryAPIView

    提供 get、put、patch、delete方法

    继承自:GenericAPIView、RetrieveModelMixin、UpdateModelMixin、DestoryModelMixin

    视图集

    特点

    使用视图集ViewSet,可以将一系列逻辑相关的动作放到一个类中:

    1. list() 提供一组数据
    2. retrieve() 提供单个数据
    3. create() 创建数据
    4. update() 保存数据
    5. destory() 删除数据
    6. 自定义视图方法
    7. 视图定义简单
    8. 路由简单

    应用

    1. 针对一个资源,需要使用的操作比较多
    2. 操作数据库比较多
    3. 使用序列化器频繁

    1) ViewSet

    继承自APIView,作用也与APIView基本类似,提供了身份认证、权限校验、流量管理等。

    在ViewSet中,没有提供任何动作action方法,需要我们自己实现action方法。

    2)GenericViewSet

    继承自GenericAPIView,作用也与GenericAPIVIew类似,提供了get_object、get_queryset等方法便于列表视图与详情信息视图的开发。

    3)ModelViewSet

    继承自GenericAPIVIew,同时包括了ListModelMixin、RetrieveModelMixin、CreateModelMixin、UpdateModelMixin、DestoryModelMixin。

    4)ReadOnlyModelViewSet

    继承自GenericAPIVIew,同时包括了ListModelMixin、RetrieveModelMixin。

    序列化器

    序列化器类型:

    Serializer

    1. 需要自定义序列化反序列化字典
    2. 需要自己实现create和update方法

    ModelSerializer

    1. 基于模型类自动生成一系列字段
    2. 基于模型类自动为Serializer生成validators
    3. 包含默认的create()和update()的实现

    1)序列化

    将模型对象序列化为字典

    serializer = ClassInfoSerializer(book)
    serializer.data        #获取序列化数据
    

    2)反序列化

    将字典反序列化为模型类对象

    data = {'title': '计算机1班'}   # 要反序列化的数据
    serializer = ClassInfoSerializer(data=data)   # 序列化器对象
    serializer.is_valid()         #验证
    serializer.errors           #验证错误原因
    serializer.validated_data   #通过验证反序列化候的数据
    

    3)反序列化数据验证

    1. validate_(field_name)

    2. validate

    3. validators

    4)保存数据create,修改数据update

    序列化器.save()

    1. ModelSerializer自己实现
    2. Serializer需要自定义
    展开全文
  • 视图基本知识

    2019-01-06 11:09:26
    视图是指计算机数据库中的视图,是一虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用...

    一、概念

    视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

    二、视图的创建与销毁

    创建:create view 视图名 as select语句;

    销毁:drop view 视图名;

    三、视图与表的区别

    (1)视图是已经编译好的sql语句,而表不是;  

    (2)视图没有实际的物理记录,而表有;

    (3)表是内容,视图是窗口;

    (4)表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时对它进行修改,但视图只能有创建的语句来修改;

    (5)表是内模式,视图是外模式;

    (6)视图是查看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些SQL语句的集合。从安全的角度说,视图可以不给用户接触数据表,从而不知道表结构;

    (7)表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表;

    (8)视图的建立和删除只影响视图本身,不影响对应的基本表。

    四、视图与表的联系

    视图(view)是在基本表之上建立的表,它的结构(即所定义的列)和内容(即所有数据行)都来自基本表,它依据基本表存在而存在,一个视图可以对应一个基本表,也可以对应多个基本表,视图是基本表的抽象和在逻辑意义上建立的新关系。

     

     

     

    展开全文
  • mysql 视图基本操作

    2016-05-16 14:10:16
    mysql 视图基本操作

    什么是视图

    视图是从一个或多个表中导出来的表,是一种虚拟存在的表。

    视图就像一个窗口,通过这个窗口可以看到系统专门提供的数据。

    这样,用户可以不用看到整个数据库中的数据,而之关心对自己有用的数据。

    数据库中只存放了视图的定义,而没有存放视图中的数据,这些数据存放在原来的表中。

    使用视图查询数据时,数据库系统会从原来的表中取出对应的数据。

    视图中的数据依赖于原来表中的数据,一旦表中数据发生改变,显示在视图中的数据也会发生改变。

     

    视图的作用

    1.使操作简单化,可以对经常使用的查询定义一个视图,使用户不必为同样的查询操作指定条件

    2.增加数据的安全性,通过视图,用户只能查询和修改指定的数据。

    3.提高表的逻辑独立性,视图可以屏蔽原有表结构变化带来的影响。

     

    总而言之,使用视图的大部分情况是为了保障数据安全性,提高查询效率

     

    参考表:

    创建视图的语法

    复制代码 代码如下:

    CREATE [ALGORITHM]={UNDEFINED|MERGE|TEMPTABLE}]
           VIEW 视图名 [(属性清单)]
           AS SELECT 语句
           [WITH [CASCADED|LOCAL] CHECK OPTION];

    ALGORITHM表示视图选择的算法(可选参数)

          UNDEFINED:MySQL将自动选择所要使用的算法
          MERGE:将视图的语句与视图定义合并起来,使得视图定义的某一部分取代语句的对应部分
          TEMPTABLE:将视图的结果存入临时表,然后使用临时表执行语句

    视图名表示要创建的视图的名称

    属性清单表示视图中的列名,默认与SELECT查询结果中的列名相同(可选参数)

    WITH CHECK OPTION表示更新视图时要保证在该试图的权限范围之内(可选参数)

          CASCADED:更新视图时要满足所有相关视图和表的条件
          LOCAL:更新视图时,要满足该视图本身定义的条件即可

     

    tips:创建试图时最好加上WITH CASCADED CHECK OPTION参数,这种方式比较严格

         可以保证数据的安全性


    视图操作
    在单表上创建视图

    复制代码 代码如下:

    mysql> CREATE VIEW work_view(ID,NAME,ADDR) AS SELECT id,name,address FROM work; 
    Query OK, 0 rows affected (0.05 sec)

    此处work_view为视图名,后面括号内的参数代表视图中的列

    AS表示将后面SELECT 语句中的查询结果赋给前面的视图中

    在多表上创建视图

    复制代码 代码如下:

    mysql> CREATE ALGORITHM=MERGE VIEW work_view2(ID,NAME,SALARY)
        -> AS SELECT work.id,name,salary FROM work,salary
        -> WHERE work.id=salary.id
        -> WITH LOCAL CHECK OPTION;
    Query OK, 0 rows affected (0.02 sec)

    在多表中创建视图需要两表有指定联系,如上面的work.id=salary.id


    SELECT查询视图

    复制代码 代码如下:

    mysql> SELECT * FROM work_view;
    +----+--------+--------+
    | ID | NAME   | ADDR   |
    +----+--------+--------+
    |  1 | 张三   | 北京   |
    |  2 | 李四   | 上海   |
    |  3 | 王五   | 湖南   |
    |  4 | 赵六   | 重庆   |
    +----+--------+--------+
     rows in set (0.00 sec)

    此处的SELECT语句用法和其他表中的用法一样

    别忘了,视图也是一张表,只不过它是虚拟的


    DESCRIBE查看视图基本信息

    复制代码 代码如下:

    mysql> DESCRIBE work_view;
    +-------+-------------+------+-----+---------+-------+
    | Field | Type        | Null | Key | Default | Extra |
    +-------+-------------+------+-----+---------+-------+
    | ID    | int(10)     | NO   |     | NULL    |       |
    | NAME  | varchar(20) | NO   |     | NULL    |       |
    | ADDR  | varchar(50) | YES  |     | NULL    |       |
    +-------+-------------+------+-----+---------+-------+
     rows in set (0.00 sec)

    与以往一样,此处的DESCRIBE可以简写为DESC


    SHOW TABLE STATUS查看视图基本信息

    复制代码 代码如下:

    mysql> SHOW TABLE STATUS LIKE 'work_view'\G
    *************************** 1. row ***************************
               Name: work_view
             Engine: NULL
            Version: NULL
         Row_format: NULL
               Rows: NULL
     Avg_row_length: NULL
        Data_length: NULL
    Max_data_length: NULL
       Index_length: NULL
          Data_free: NULL
     Auto_increment: NULL
        Create_time: NULL
        Update_time: NULL
         Check_time: NULL
          Collation: NULL
           Checksum: NULL
     Create_options: NULL
            Comment: VIEW
     row in set (0.00 sec)

    此处大部分信息显示为NULL,更加说明了视图只是一张虚拟表

    如果使用SHOW TABLE STATUS查看一张真实表,结果就不会如此

    SHOW CREATE VIEW查看视图详细信息

    复制代码 代码如下:

    mysql> SHOW CREATE VIEW work_view\G
    *************************** 1. row ***************************
                    View: work_view
             Create View: CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `work_view` AS select `work`.`id` AS `ID`,`work`.`name` AS `NAME`,`work`.`address` AS `ADDR` from `work`
    character_set_client: utf8
    collation_connection: utf8_general_ci
     row in set (0.00 sec)

    尼玛好复杂,这里包含了视图的各个属性

    在views表中查看视图详细信息
    复制代码 代码如下:

    mysql> SELECT * FROM information_schema.views\G
    *************************** 1. row ***************************
           TABLE_CATALOG: def
            TABLE_SCHEMA: person
              TABLE_NAME: work_view
         VIEW_DEFINITION: select `person`.`work`.`id` AS `ID`,`person`.`work`.`name` AS `NAME`,`person`.`work`.`address` AS `ADDR` from `person`.`work`
            CHECK_OPTION: NONE
            IS_UPDATABLE: YES
                 DEFINER: root@localhost
           SECURITY_TYPE: DEFINER
    CHARACTER_SET_CLIENT: utf8
    COLLATION_CONNECTION: utf8_general_ci
    *************************** 2. row ***************************
           TABLE_CATALOG: def
            TABLE_SCHEMA: person
              TABLE_NAME: work_view2

    information_schema.views表内包含了所有的视图定义信息

    不过,通常使用SHOW CREATE VIEW 更加方便

    这里信息太长,没有完全列举……


    修改视图

    修改视图是指修改数据库中已存在的表的定义,当基本表的某些字段发生改变时,可以通过修改视图来保持视图和基本表之间一致
    CREATE OR REPLACE VIEW语句修改视图

    复制代码 代码如下:

    mysql> CREATE OR REPLACE ALGORITHM=TEMPTABLE
        -> VIEW work_view(ID,NAME)
        -> AS SELECT id,name FROM work;
    Query OK, 0 rows affected (0.03 sec)

    话说,CREATE OR REPLACE语句非常灵活

    在视图存在的情况下可对视图进行修改,视图不在的情况下可创建视图

    其基本用法和CREATE VIEW 几乎一致


    ALTER语句修改视图

    复制代码 代码如下:

    mysql> ALTER VIEW work_view2(NAME,SALARY,ADDR)
        -> AS SELECT name,salary,address FROM work,salary
        -> WHERE work.id=salary.id;
    Query OK, 0 rows affected (0.03 sec)

    我这把名字、工资和地址当做字段修改了视图

    如果是真实的话,对小偷来说极为方便

    更新视图

    更新视图是指通过视图来插入、更新和删除表中的数据,以为视图是一个虚拟表,其中木有数据

    通过视图更新时,都是转换到基本表来更新

    复制代码 代码如下:

    mysql> UPDATE work_view2 SET SALARY=5899.00 WHERE NAME='张三';
    Query OK, 1 row affected (0.03 sec)
    Rows matched: 1  Changed: 1  Warnings: 0

    此处语句等价于
    复制代码 代码如下:

    mysql> UPDATE salary SET salary=5899.00 WHERE id=1;

    tips:视图中虽然可以更新数据,但是有很多限制

       一般情况下,最好将视图作为查询数据的虚拟表,而不要通过视图更新数据


    删除视图

    删除视图是指删除数据库中已存在的视图,删除视图时,只能删除视图的定义,不会删除数据

    复制代码 代码如下:

    mysql> DROP VIEW IF EXISTS work_view;
    Query OK, 0 rows affected (0.00 sec)

    mysql> DROP VIEW work_view2;
    Query OK, 0 rows affected (0.01 sec)


    这里的IF EXIST参数用来判断视图是否存在,也可以不写
    展开全文
  • 视图view基本概念

    千次阅读 2019-01-17 10:04:12
    视图(view):是根据用户需求定义的数据结构,是从一或多表导出的虚拟的表,其内容由查询定义。具有普通表的结构,但是不实现数据存储。视图本身并不包含任何数据,它只包含映射到基表的一查询语句,当基表...

    视图(view):是根据用户需求定义的数据结构,是从一个或多个表导出的虚拟的表,其内容由查询定义。具有普通表的结构,但是不实现数据存储。视图本身并不包含任何数据,它只包含映射到基表的一个查询语句,当基表数据发生变化,视图数据也随之变化。

    对视图的修改:单表视图一般用于查询和修改,会改变基本表的数据,

    多表视图一般用于查询,不会改变基本表的数据。

    • 作用:

    ①简化了操作,把经常使用的数据定义为视图,或者用户个性化需要查看的数据定义为视图。

      我们在使用查询时,在很多时候我们要使用聚合函数,同时还要 显示其它字段的信息,可能还会需要关联到其它表,这时写的语句可能会很长,如果这个动作频繁发生的话,我们可以创建视图,这以后,我们只需要select * from view就可以啦,这样很方便。

    ②安全性,用户只能查询和修改能看到的数据。

      因为视图是虚拟的,物理上是不存在的,只是存储了数据的集合,我们可以将基表中重要的字段信息,可以不通过视图给用户,视图是动态的数据的集合,数据是随着基表的更新而更新。同时,用户对视图不可以随意的更改和删除,可以保证数据的安全性。

    ③逻辑上的独立性,屏蔽了真实表的结构带来的影响。

      视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。

    • 缺点:

    ①性能差

      数据库必须把视图查询转化成对基本表的查询,如果这个视图是由一个复杂的多表查询所定义,那么,即使是视图的一个简单查询,数据库也要把它变成一个复杂的结合体,需要花费一定的时间。

    ②修改限制

      当用户试图修改视图的某些信息时,数据库必须把它转化为对基本表的某些信息的修改,对于简单的视图来说,这是很方便的,但是,对于比较复杂的试图,可能是不可修改的。

     

    • 作用:

    ①简化了操作,把经常使用的数据定义为视图。

    ②安全性,用户只能查询和修改能看到的数据。

    ③逻辑上的独立性,屏蔽了真实表的结构带来的影响。

    原文:https://blog.csdn.net/weixin_38055381/article/details/80194986

    视图的创建

    1.授权创建视图
    创建视图的DDL语句是CREATE VIEW,用户必须有CREATE VIEW系统权限,才能创建视图。如果没有权限,创建视图时会提示:权限不足。(和有权限操作视图设计的表和其他视图)
    管理员可以通过DCL语句授予用户创建视图的权限。下例中管理员给用户tarena创建视图的权限:
    GRANT CREATE VIEW TO tarena;

     

    2、创建视图的语法:
    CREATE [OR REPLACE] VIEW view_name[(alias[, alias…])]
    AS subquery ;
    视图创建后,可以像操作表一样操作视图,主要是查询操作。
    语法中的Subquery是SELECT查询语句,对应的表被称作基表。
    根据视图所对应的子查询种类分为几种类型:
    •SELECT语句是基于单表建立的,且不包含任何函数运算、表达式或分组函数,叫做简单视图,此时视图是基表的子集;
    •SELECT语句同样是基于单表,但包含了单行函数、表达式、分组函数或GROUP BY子句,叫做复杂视图;
    •SELECT语句是基于多个表的,叫做连接视图。

     

    3、 创建简单视图(单表)
    创建一个简单视图V_EMP_10,来显示部门10中的员工的编码、姓名和薪水:
    CREATE VIEW v_emp_10
    AS
    SELECT empno, ename, sal, deptno
    FROM emp
    WHERE deptno = 10;
    查看视图结构:
    DESC v_emp_10;

     

    4、查询视图
    查询视图和查询表的操作相同:
    SELECT * FROM v_emp_10;
    此时视图的列名,和创建视图时的列名一致,不一定是原列名:
    SELECT id, name, salary FROM v_emp_10;
    5、对视图进行INSERT操作
    视图本身并不包含数据,只是基表数据的逻辑映射。所以当对视图执行DML操作时,实际上是对基表的DML操作。对视图执行DML操作的基本原则:
    •简单视图能够执行DML操作,下列情况除外:在基表中定义了非空列,但简单视图对应的SELECT语句并没有包含这个非空列,导致这个非空列对视图不可见,这时无法对视图执行INSERT操作;
    •如果视图定义中包含了函数、表达式、分组语句、DISTINCT关键字或ROWNUM伪列,不允许执行DML操作;
    •DML操作不能违反基表的约束条件。
    对简单视图执行INSERT操作,成功插入数据到基表中:
    INSERT INTO v_emp_10
    VALUES(1234, ‘DOCTOR’, 4000, 10);
    简单视图可以通过DML操作影响到基表数据。


    6、 创建具有CHECK OPTION约束的视图
    语法如下:
    CREATE [OR REPLACE] VIEW view_name[(alias[, alias…])]

    AS subquery
    [WITH CHECK OPTION];
    其中:WITH CHECK OPTION短语表示,通过视图所做的修改,必须在视图的可见范围内:
    •假设INSERT,新增的记录在视图仍可查看
    •假设UPDATE,修改后的结果必须能通过视图查看到
    •假设DELETE,只能删除现有视图里能查到的记录
    创建带有CHECK OPTION约束的视图:
    CREATE OR REPLACE VIEW v_emp_10
    AS
    SELECT empno id, ename name, sal salary, deptno
    FROM emp
    WHERE deptno = 10
    WITH CHECK OPTION;
    下述DML语句操作失败,因为部门20不在视图可见范围内:
    01.INSERT INTO v_emp_10 VALUES(1008,‘donna’,5500, 20);
    02.UPDATE v_emp_10 SET deptno = 20 WHERE id = 7782;

    多表建视图例子:

    CREATE VIEW view01
    AS
    SELECT student.id,student.name,city,brand,price,school.name school FROM student
    LEFT JOIN cloth ON clothId=cloth.ID
    LEFT JOIN school on school.id=schoolId;

     

    展开全文
  • 视图

    2020-05-11 22:23:14
    使用创建视图来解决每次你要打一次代码查询 Create view 视图名 AS 查询语句; (1)视图的列可以来自于不同的表,是表的抽象和在逻辑意义上建立的新关系; (2)视图是由基本表(实表)产生的表(虚表) ; (3)视图的建立和...
  • 视图与表(有时为与视图区别,也称表为基本表——Base Table)不同,视图是一虚表,即视图所 对应的数据不进行实际存储,数据库中只存储视图的定义,在对视图的数据进行操作时,系统根据视图的定义去操作与视图相...
  • 视图基本概念

    千次阅读 2007-06-22 13:21:00
    1:什么是视图2:视图和查询的区别3:视图的优点4:如何创建和管理视图5:如何通过视图修改基本表的数据6:如何通过视图实现数据的安全性A:什么是视图:视图(view):从一或几个基本表中根据用户需要而做成一虚表 ...
  • 2.基本视图 为了全面表达物体的形状及大小,必须绘制从各方向看到的投影图,即视图,如图1-3所示。 1)光线在物体正面由前向后投射所得的视图称为主视图。 2)光线在物体背面由后向前投射所得的视图称为后视图。 3)...
  •  (3)将复杂的Select语句和表JION形成一个视图,给用户提供一良好的接口。  (4)为使用频率较高的联表聚合运算创建索引视图,以提升程序的性能。  (5)创建分区视图调用远程数据,实现数据...
  • Razor视图基本概念

    千次阅读 2018-02-28 16:20:16
    自MVC3版本开始,Razor视图(文件后缀名.cshtml)开始取代aspx视图作为视图渲染引擎,...Razor语法基本特性:使用@作为前缀,包括1.@{代码片段}2.@(常量)3.@变量4.@@转义输出@5.@**@注释6.@命名空间 @using Syste...
  • 视图基本表的比较

    2020-05-31 22:00:29
    2)视图没有实际的物理记录,而基本;3)基本表是内容,视图是窗口;4)基本表只用物理空间而视图不占用物理空间;5)基本表是内模式,试图是外模式;6基本表属于全局模式中的表,是实表,视图属于局部模式的...
  • MySQL视图(view)基本用法

    千次阅读 2019-11-24 21:28:28
    MySQL中的视图(view)是一种虚拟表,其内容由查询定义,是一逻辑表,本身并不包含数据。视图看起来和真实的表完全相同,但其中的数据来自定义视图时用到的基本表,并且在打开视图时动态生成。 视图可以在基本表...
  • 前几天有个小伙伴在群里问我,如何将6个视图平均分布在一 cell中,其实这样的布局在应用里很常见,比如6个菜单按钮,或者商城类应用的商品推荐部分。那么下面我就详细说一下我是怎么做的,希望可以帮助到更多的小...
  • 1.视图是从一或者是多表中导出,是有个虚拟表,视图包含一系列带名称的行和列数据。行和列数据来自自由定义视图查询所引用的表,并且在引用视图是动态的生成。2.视图还可以从已经存在的视图技基础上进行定义。...
  • 转:... 1.使用create or replace view命令创建视图 语法格式: create or replace view 视图名 as select 查询子句 例子: create or replace viewtb_user_view1 as select count(...
  • SAP物料主数据_基本视图设置1

    万次阅读 2011-07-16 11:39:34
    视图说明 物料主数据的基本视图是维护一物料的最为基本的数据,也是无组织机构数据。这些数据不会因为不同的组织机构(如工厂、库存地点)改变而改变。 基本视图创建(如TCODE:MM01)后,就不能再用创建的...
  • 视图是从一或几个基本表导出的表。视图本身不独立存储在数据库中,是一虚表 试述视图的优点? (1) 视图能够简化用户的操作 (2) 视图使用户能以多种角度看待同一数据; (3) 视图为数据库提供了一定程度的逻辑...
  • 3.7视图

    2019-11-03 12:43:26
    视图是从一或几个基本表(或视图)导出的表。它与基本表不同,是一虚表。数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。所以一旦基本表中的数据发生变化,从视图中查询出...
  • MySQL 视图

    2019-08-07 12:45:17
    视图是从一或多表中导出来的表,它是一种虚拟存在的表,并且表的结构和数据依赖于基本表。通过视图不仅可以看到存放在基本表中的数据,并且还可以像操作基本表一样,对视图中存放的数据进行查询、修改和删除。...
  • MySQL-视图基本表的关系与区别

    万次阅读 2017-01-02 13:23:29
    1.视图是数据库数据的特定子集。可以禁止所有用户访问数据库表,而要求用户只能通过视图操作数据,这种方法可以保护用户... 视图有时会对提高效率帮助。临时表几乎是不会对性能帮助,是资源消耗者。 视图一般随该

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 278,258
精华内容 111,303
关键字:

六个基本视图都有哪些