精华内容
下载资源
问答
  • 2021-09-13 15:44:35

    一、视图

    1、使用视图

    创建视图:给BILLS表创建视图。创建的视图实际上是一个虚表。

    CREATE VIEW DEBTS AS 
    SELECT * FROM BILLS;

    可以选择特定的行进行新视图的创建。

    CREATE VIEW CREDITCARD_DEBTS AS
    SELECT * FROM DEBTS
    WHERE ACCOUNT_ID = 4;
    
    SELECT * FROM CREDITCARD_DEBTS;

    可以从表中挑选特定的列创建视图。


    2、列的重命名

    视图继承了已有列的名字,此外视图还可以有自己的名字。

    例如:把 COMPANY 中的 ADDRESS CITY 和 STATE 字段组合起来并打印到信封。

    CREATE VIEW ENVELOPE(COMPANY, MAILING_ADDRESS) AS
    SELECT NAME, ADDRESS + " " + CITY + ", " + STATE
    FROM COMPANY;
    
    select * from ENVELOPE;

    注:当在视图中使用 SQL 的计算功能时,SQL 会要求你给出一个虚字段的名字, 像 COUNT(*)或 AVG(PAYMENT)是不能作为名字的。

    3、sql对视图的处理过程

    视图应用于经常运行一个查询。

    例如:你需要例行公事地将 BILLS 表与 BANK_ACCOUNT 表进行归并以得到支付信息

    create table BANK_ACCOUNTS (
    ACCOUNT_ID NUMBER NOT NULL,
    TYPE CHAR(30),
    BALANCE NUMBER,
    BANK CHAR(30));
    
    --使用sql语句进行
    SELECT BILLS.NAME, BILLS.AMOUNT, BANK_ACCOUNTS.BALANCE
    BLANCE, BANK_ACCOUNTS.BANK BANK FROM BILLS, BANK_ACCOUNTS
    WHERE BILLS.ACCOUNT_ID = BANK_ACCOUNTS.ACCOUNT_ID;
    
    --使用视图进行
    CREATE VIEW BILLS_DUE (NAME, AMOUNT, ACCT_BALANCE, BANK) AS
    SELECT BILLS.NAME, BILLS.AMOUNT, BANK_ACCOUNTS.BALANCE
    BANK_ACCOUNTS.BANK FROM BILLS, BANK_ACCOUNTS
    WHERE BILLS.ACCOUNT_ID = BANK_ACCOUNTS.ACCOUNT_ID;

    如果对BILLS_DUE视图执行查询操作。

    SELECT * FROM BILLS_DUE
    WHERE ACCT_BALANCE > 500;
    
    --因为BILLS_DUE是一个视图,不是真实的表。找不到可能会从系统表中发现BILLS_DUE是一个视图,会对视图进行诠释,语句为:
    SELECT BILLS.NAME, BILLS.AMOUNT, BANK_ACCOUNTS.BALANCE,
    BANK_ACCOUNTS.BANK FROM BILLS, BANK_ACCOUNTS
    WHERE BILLS.ACCOUNT_ID = BANK_ACCOUNTS.ACCOUNT_ID
    AND BANK_ACCOUNTS.BALANCE > 500;

    4、在select语句中使用约束

    4.1  在视图中修改数据

    更新 BILLS 表中的10%的费用。

    create view LATE_PAYMENT as
    select * from BILLS;
    
    update LATE_PAYMENT
    set AMOUNT=NMOUNT*1.10;
    
    select *from LATE_PAYMENT;

    从视图中删除一行:

    delete from LATE_PAYMENT
    where ACCOUNT_ID=4;

    update函数

    例如:为BILLS表中所有的NEW_TOTAL中对于100的增加10。

    update LATE_PAYMENT
    set NEW_TOTAL=new_TOTAL+10;
    where NEW_TOTAL>100;
    
    select * from LATE_PAYMENNT;

    4.2  在视图中修改数据的几个问题

    4.2.1  视图与安全性

    数据库系统的用户通常会根据使用的数据库进行分组:

    数据库管理员(database adminstrators)

    数据库开发人员(database developers)

    数据录入人员(data entry personnel)

    大众用户

    不同的组在使用数据库时有着不同的权限,系统管理员有系统的完全控制权限,包括更新、插入、删除、修改。大众则只有数据库使用select语句的权限。

    例如:希望用户访问BILLS表中的字段,需要创建一个名字叫BILLS_NAME的视图。

    CREATE VIEW BILLS_NAME AS SELECT NAME FROM BILLS;

    4.2.2  在单位换算中使用视图

    视图在你提供给用户的数据与数据库中的真实数据不同时也相当有用 。

    例如:如果 AMOUNT 字段实际上存储于美国,加拿大的用户不想频繁地进行美元与加拿大元之间的转换工作。那么你可以创建一个叫 CANADA_BILLS 的视图。

    CREATE VIEW CANADIAN_BILLS (NAME, CAN_AMOUNT) AS
    SELECT NAME, AMOUNT / 1.10
    FROM BILLS;
    
    select * from CANADIAN_BILLS;

    4.2.3 在视图中使用简单的结构化复合查询

    视图在你需要按次序运行一系列查询以后得到某个结果的情况下也很有用。

    例如:找出所有发给德克萨斯州的账单金额少于 50 美元的银行的名字。

    可以将问题分解成两个问题:

    1、得到所有发给得克萨斯州的账单。

    2、找出账单中金额小于50美元的记录。

    两个子问题的解决语句为:

    CREATE TABLE BILLS1 AS
    SELECT * FROM BILLS
    WHERE AMOUNT < 50;
    
    CREATE TABLE BILLS2 (NAME, AMOUNT, ACCOUNT_ID) AS
    SELECT BILLS * FROM BILLS, COMPANY
    WHERE BILLS.NAME = COMPANY.NAME AND COMPANY.STATE = "TX";

    使用sql中的in子句来找出所有在 BILLS1中发往德州的账单,这个信息来创建一个名字叫 BILLS3 的视图:

    CREATE VIEW BILLS3 AS
    SELECT * FROM BILLS2 WHERE NAME IN
    (SELECT * FROM BILLS1);

    将上述的BANK_ACCOUNT表进行合并得到最初想要的结果:

    CREATE VIEW BANKS_IN_TEXAS (BANK) AS
    SELECT BANK_ACCOUNTS.BANK
    FROM BANK_ACCOUNTS, BILLS3
    WHERE BILLS3.ACCOUNT_ID = BANK_ACCOUNTS.ACCOUNT_ID;
    
    select * from BANK_IN_TEXAS;

    4.2.4  删除视图语句

    drop view view_name;

    drop view命令会将所有与drop视图相关联的视图不能正常运行,一些数据库系统甚至会将所有与要drop的视图相关联的视图也要删除掉。

    例如:删除BILLS视图,查询相关的视图BANKS_IN_TEXAS也会返回错误,

    drop view BILLS;

    select *from BANKS_IN_TEXAS;

    删除视图不会对真实的表有任何影响,视图是一个虚的表。

    二、索引

    1、使用索引

    SQL使用索引的原因是因为以下几种:

    (1)在使用UNIQUE关键字时强制性地保证数据的完整性。

    (2)可以容易地用索引字段或其他字段进行排序。

    (3)提高查询的执行速度

    2、什么是索引?

            索引是方便查询的一种手段,SQL采用树形结构存储和返回索引数据,用以指示的数据存储在树的最末端,每个节点中有一个指向其他节点的指针,节点左边的值只是它的双亲节点,节点右边的值则是孩子节点或叶子。

    基本的索引语法:

    2.1  创建索引

    create index index_name;

    例如:要对BILLS表中的ACCOUNTID字段创建索引,其CREATE INDEX语句如下:

    select * from BILLS;
    create INDEX ID_INDEX on BILLS(ACCOUNT_ID);
    select * from BILLS;

    `直至索引被drop index语句删除前,BILLS表是按照ACCOUNT_ID的顺序进行排序的。

    2.2  删除索引

    drop index index_name;

    例如:删除刚刚创建的ACCOUNTID索引。

    drop index ID_INDEX;
    
    --查看BILLS存储结构
    select * from BILLS;

    现在BILLS表就是它原本的形态,使用索引不会对表中的物理存储造成影响。

    注:使用select * from BILLS order by ACCOUNT_ID;的结果和和创建索引的结果相同,不同在于当使用order by子句时,每次运行它都要重新进行排序,当使用索引的时候,数据库会建立一个物理索引对象,在你每次运行查询时,都访问同一个索引。

    注:当表被删除时,所有与表相关的索引都将会被删除。

    2.3  使用索引的技巧

    (1)对于小表来说,使用索引对于性能不会有任何提高。

    (2)当你的索引列中有极多的不同的数据和空值时索引会使性能有极大的提高。

    (3)当查询要返回的数据很少时索引可以优化你的查询(比较好的情况是少于全部数据的 25%),如果你要返回的数据很多时索引会加大系统开销。

    (4)索引可以提高查询的速度,但会使得数据的更新操作变慢。进行大量的更新操作时,可以删除索引,在更新完成后进行索引的恢复。

    (5)索引会占据数据库的空间,设计数据库可用空间时需要考虑索引占用的空间。

    (6)对字段的索引已经对两个表进行了归并操作,可以提高归并的速度。

    (7)对视图创建索引,在 SELECT 语句中对视图的数据进行排序。

    (8)不要创建对经常需要更新或修改的字段创建索引,更新索引的开销会降低你所期望获得的性能。

    (9)不要将索引与表存储在同一个驱动器上,分开存储会去掉访问的冲突从而使结果返回的更快。

    2.4   复合索引

    复合索引:对多个字段进行索引。虽然进行的是多个字段的索引,但是索引在物理结构上还是只有一个。

    例如:对BILLS表的ACCOUNTID和AMOUNT字段创建索引。

    create INDEX ID_CMPD_INDIX on BILLS(ACCOUNT_ID,AMOUNT);
    select * from BILLS;

    选择唯一值越多的列建立索引,可以达到更好的性能。

    如果你经常在BILLS表中查询某一位人员,例如:SELECT * FROM BILLS WHERE NAME = "Cable TV Company";这时为了更好的查询性能,可以对name列创建一个索引。

    create INDEX NAME_INDEX on BILLS(NAME);
    //或者使用复合索引
    create INDEX NAME_INDEX on BILLS(NAME,AMOUNT);

            如果你在查询条件中经常指定某一特定的列那个你可以创建这个列的索引。而当你的查询需要复合条件时你可以创建复合索引。

    2.5  使用unique关键字创建索引

    复合索引通常使用unique关键字防止有相同数据的多个记录多次出现。

    ORACLE不支持UNIQUE 语法,它是用UNIQUE 完整性约束来达到内容唯一这一特性的。

    使用unique关键字创建索引以后,如果想要添加一列相同的记录则将会报错。

    使用DESC 操作创建的索引,它将告诉SQL 将索引降序排列。

    例如:在 BILLS 表中创建一个索引以对 AMOUNT 字段进行降序排列。(一般默认为升序)

    create INDEX DESC_AMOUNT on BILLS(AMOUNT DESC);

    2.6  索引与归并

    对 BILS 表与 BANK_ACCOUNT 表根据 ACCOUNT_ID 字段创建索引:

    CREATE INDEX BILLS_INDEX ON BILLS(ACCOUNT_ID);
    
    CREATE INDEX BILLS_INDEX2 ON BANK_ACCOUNTS(ACCOUNT_ID);
    
    SELECT BILLS.NAME NAME, BILLS.AMOUNT AMOUNT,
    BANK_ACCOUNTS.BALANCE ACCOUNT_BALANCE
    FROM BILLS, BANK_ACCOUNTS
    WHERE BILLS.ACCOUNT_ID = BANK_ACCOUNTS.ACCOUNT_ID;

    在每一个表中均对 ACCOUNT_ID 字段创建了索引以后,归并就可以更快地访问特定行的数据。

    2.7  群集(簇)的使用

            当使用群集索引时,数据在表中的物理排列方式将会被修改,使用群集索引通常比传统的不使用群集的索引速度要快。但是许多数据库管理系统(如 Sybase 的 SQL Server),只允许一个表有一个群集索引,用于创建群集索引的字段常常是主关键字。

    例如:对 BANK_ACCOUNT 的 ACCOUNT_ID 字段创建一个群集的,不重复的索引。

    create unique clustered index id_index on BANK_ACCOUNTS(ACCOUNT_ID)
    go

    ORACLE 中群集的概念与此不同,当使用 ORACLE 关系数据库系统时,群集就是一 个像数据或表一样的对象,群集一般是存储了表的共有字段以提高对表的访问速度。

    例如:ORACLE7 中创建群集。

    CREATE CLUSTER [schema.]cluster (column datatype [,column datatype] ... )
    [PCTUSED integer] [PCTFREE integer] [SIZE integer [K|M] ]
    [INITRANS integer] [MAXTRANS integer] [TABLESPACE tablespace]
    [STORAGE storage_clause] [!!under!!INDEX | [HASH IS column] HASHKEYS integer]

    创建集群以后 ,之后创建的该表的群集的索引会被加入到集群中,然后把表也加在群集中。

    更多相关内容
  • MySQL如何创建视图用户

    千次阅读 2021-11-30 09:11:55
    目录 一.视图 1.1 概念 1.2 使用 ... 1.3 视图的规则和限制 ... 2.1.2 创建用户 2.1.3 删除用户 2.1.4 修改密码 2.2 数据库权限 2.2.1 给用户授权 2.2.2 回收权限 一.视图 1.1 概念 ...

    目录

    一.视图

            1.1 概念

            1.2 使用

            1.3 视图的规则和限制

    二.用户管理

            2.1 用户

            2.1.1 用户信息

            2.1.2 创建用户

             2.1.3 删除用户

             2.1.4 修改密码

             2.2 数据库权限

             2.2.1 给用户授权

            2.2.2 回收权限


    一.视图

            1.1 概念

            视图时一个虚拟表,其内容有查询来定义。同真实表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表数据变化也会影响到视图。

            简单来说,一个表的中的数据太大了,通过查询条件来建立一张子表。修改子表的数据会影响主表,修改主表的数据会影响到子表。

            1.2 使用

    • 创建视图

            在当前数据库中形成一个新的表结构。

    语法:create  view  视图名  as select .....

    案例:

    在当下数据库形成新的表结构:

    •  修改视图

            修改视图,基表也会发生变化。

    •  修改基表

            修改基表,视图也会发生变化。

    •  删除视图

    语法:drop  view  视图名;

            1.3 视图的规则和限制

    • 和表一样,必须唯一命名。

    • 创建视图数无限制,但要考虑复杂查询创建为视图之后的性能影响。

    • 视图不能添加索引,页不能有关联的触发器或者默认值。

    • 视图可以提高安全性,必须有足够的访问权限。

    • order by用在视图中。

    • 视图可以和表一起使用。

    二.用户管理

            我们现在使用的是root用户,root用户权限太大。可以操作所有的库,由于权限大,导致风险过大。如果进行了误操作,导致损失严重。

            于是就需要使用MySQL的用户管理。一个用户只能操作特定的库,并且也只具有特定的权限。

            2.1 用户

            2.1.1 用户信息

            MySQL中的用户都保存在系统数据库MySQL的user表中。

    字段解释:

    • host:表示这个用户可以重哪个主机登录。localhost,表示只能从本机登录。%表示从任意远端登录。
    • user:用户名
    • authentication_string:用户密码,通过password函数加密的
    • *_priv:用户拥有的权限。

            2.1.2 创建用户

            注意:创建用户需要root来做。

    语法:create  user  '用户名'@'登录主机/ip'  identified  by '密码';

    案例:

             2.1.3 删除用户

    语法:drop user '用户名'@'主机名';

    案例:

             2.1.4 修改密码

    • 自己改自己的密码

    语法:set  password=password('新的密码');(该语法在MySQL8.0以上已经不适用)

    • root用户指修改指定用户密码

    语法:set  password  for  '用户名'@'主机名'=password('新的密码');(该语法在MySQL8.0以上已经不适用)。

    • root修改指定用户密码(8.0版本以上)

    语法:alter user '用户名'@'主机名' identified  with  mysql_native_password by '新密码';

             2.2 数据库权限

            root用户拥有所有的权限。

             2.2.1 给用户授权

            刚创建好的用户没有任何权限。需要给root用户授权。

    语法:grant  权限列表  on  库.对象名(表名)  to  '用户名'@'主机名        '  [identified  by  '密码'];

    说明:

    • 权限列表,多个权限用逗号隔开。

    grant  select  on ......

    grant  select,delete, create  on......

    grant  all [privileges]  on......  --表示赋予该用户在该对象上的所有权限

    • *.*:表示本系统中的所有数据库的所有对象(表)。
    • 库.*:表示某个数据库中的所有数据对象。
    • identified  by 可选。如果用户存在,赋予权限的同时修改密码,如果该用户不存在,就是创建用户。

    案例:

    • 授权

    •  使用权限

    •  查看用户现有的权限

     注意:如果发现赋权后没有生效,执行如下命令:

    flush  privileges;

            2.2.2 回收权限

    语法:revoke 权限列表 on 库名.对象  from '用户名'@'主机号';

     

    展开全文
  • navicat怎么创建视图

    千次阅读 2021-01-18 23:19:32
    下面是本人学习使用navicat for mysql 创建视图的图文记录,感兴趣的小伙伴可以看一看。下面正式开始1、打开navicat for mysql软件之后打开相应的数据库。然后点击视图。2、点击新建视图。这里的话你可以通过sql语句...

    4f2d242469de5f9cf60e52342feb8f1f.png

    Navicat for mysql 是mysql数据库的一个视图管理工具,它可以让我们不用面对dos那种小画面。下面是本人学习使用navicat for mysql 创建视图的图文记录,感兴趣的小伙伴可以看一看。

    下面正式开始

    1、打开navicat for mysql软件之后打开相应的数据库。然后点击视图。

    6f45d0e78178e0517f10da74bb4d8d96.png

    2、点击新建视图。这里的话你可以通过sql语句来创建。

    95c47dc003d895fe4af3a1726bce9663.png

    0a45310021fb02a9955eeccfea5b47ed.png

    3、当然也可以选择navicat for mysql视图创建工具来创建。如图,把表一个一个的挪过去,如果你的表设计主外键的关联关系没问题的话,它们就会自动的连上线了。

    bc684ab724c533446ed456f3976b2103.png

    4、然后如图所示为你要展示的内容打上勾,点击保存就可以了。(注意一定要选择,不能都是空)

    208271a7d180fe251bfcd49336da6cd3.png

    5、用工具创建好视图之后呢,你可以点击定义查看刚才视图相应的sql语句,这是navicat for mysql 帮你生成的。

    0b0f9fd2ff77ab27e97495667a3f38ea.png

    6、然后点击数据库下视图,你就可以查看你刚才所创建的视图效果了。你可以看到视图本质其实就是一张合成表。

    8541273f0f0c3b115e41ef643991e82d.png

    扩展资料

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

    从用户角度来看,一个视图是从一个特定的角度来查看数据库中的数据。从数据库系统内部来看,一个视图是由SELECT语句组成的查询定义的虚拟表。从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从数据库系统外部来看,视图就如同一张表一样。视图可以查询,但不可以新增、删除、修改。

    视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。分布式查询也可用于定义使用多个异类源数据的视图。

    视图是存储在数据库中的查询的SQL 语句,它主要出于两种原因:安全原因, 视图可以隐藏一些数据,如:社会保险基金表,可以用视图只显示姓名,地址,而不显示社会保险号和工资数等,另一原因是可使复杂的查询易于理解和使用。

    视图:查看图形或文档的方式。

    视图一经定义便存储在数据库中,与其相对应的数据并没有像表那样又在数据库中再存储一份,通过视图看到的数据只是存放在基本表中的数据。对视图的操作与对表的操作一样,可以对其进行查询、修改(有一定的限制)、删除。

    当对通过视图看到的数据进行修改时,相应的基本表的数据也要发生变化,同时,若基本表的数据发生变化,则这种变化也可以自动地反映到视图中。

    展开全文
  • 一、添加用户 1、数据库级别的【安全性】-【登录名】-【新建登录名】 ... ...3、 在【用户映射】选项卡中,勾选需要设置的数据库,并设置【架构】。...二、设置访问特定视图权限 GRANT SELECT ON 视图名TO test ...

    一、添加用户


    1、数据库级别的【安全性】-【登录名】-【新建登录名】

    2、在【常规】选项卡中,输入登陆名、密码,并设置默认的数据库

     

    3、 在【用户映射】选项卡中,勾选需要设置的数据库,并设置【架构】。点击【确认】按钮,完成创建用户的操作

    二、设置访问特定视图权限

    GRANT SELECT ON  视图名  TO test

    展开全文
  • MySQL创建视图(CREATE VIEW)

    千次阅读 2021-11-22 15:22:57
    可以使用 CREATE VIEW 语句来创建视图。 语法格式如下: CREATE VIEW <视图名> AS <SELECT语句> 语法说明如下。 <视图名>:指定视图的名称。该名称在数据库中必须是唯一的,不能与其他表或视图...
  • 如何在SQL Server中创建视图

    千次阅读 2020-07-25 22:30:11
    Then right-click on the Views folder and choose the New View option: 我们将启动SSMS并使用任何有权创建视图用户登录数据库。 展开我们要在其中创建视图的数据库。 然后右键单击“ 视图”文件夹,然后选择“ ...
  • 如何授予特定用户访问权限,使其仅查看该表中的记录?我已经考虑过VIEW用他/她的记录创建一个,但是我不知道如何创建一个只能看到该用户的mysql用户VIEW。 那么,是否有可能创建一个只能访问单个MySQL用户的mysql-...
  • Sql server中 如何用sql语句创建视图

    千次阅读 2021-04-06 17:58:23
    第一点:使用视图,可以定制用户数据,聚焦特定的数据。 解释: 在实际过程中,公司有不同角色的工作人员,我们以销售公司为例的话, 采购人员,可以需要一些与其有关的数据,而与他无关的数据,对他没 有任何...
  • mysql视图创建注意事项(转)

    千次阅读 2021-01-28 04:28:08
    视图概述视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用...
  • 2、创建视图(CREATE VIEW)

    万次阅读 多人点赞 2020-10-12 10:28:59
    创建视图是指在已经存在的 MySQL 数据库表上建立视图。视图可以建立在一张表中,也可以建立在多张表中。 基本语法 可以使用 CREATE VIEW 语句来创建视图。 语法格式如下: CREATE VIEW <视图名> AS <SELECT...
  • 1 建立视图 CREATE VIEW view_nameAS SELECT * FROM table_name; 2 新建账号 CREATE USER view_test WITH PASSWORD '12345'; 3 授权 grant select on TABLE public.view_name to view_test ; 登录时候,数据库...
  • mysql视图之创建视图(CREATE VIEW)和使用限制

    万次阅读 多人点赞 2018-07-12 15:26:10
    mysql以两种方式处理对视图的查询:第一种方式,MySQL会根据视图定义语句创建一个临时表,并在此临时表上执行传入查询。第二种方式,MySQL将传入查询与查询定义为一个查询并执行组合查询。mysql支持版本系统的视图...
  • oracle数据库创建视图

    千次阅读 2018-03-06 15:52:18
    创建视图的优点------------------------------------------------------------------------------------------------------1. 可以限制用户只能通过视图检索数据。这样就可以对最终用户屏蔽建表时底层的基表。2. ...
  • Mysql 视图基础和动态创建视图

    千次阅读 2019-01-31 16:58:52
    使用视图,可以定制用户数据,聚焦特定的数据  根据不同的需求,可以创建不同的视图,满足不同的权限所能查到的数据,也能屏蔽一些隐私性信息。 使用视图,可以简化数据操作 一个复杂的查询创...
  • SQL Server创建用户只能访问指定视图

    千次阅读 2021-01-06 14:43:08
    在SQL Server中添加一个用户只赋予能访问某个视图的权限。 实现 -- 选择要操作的数据库,添加一个角色`newRole` exec sp_addrole newRole -- `newRole`添加访问指定视图的权限 grant select on dbo.testView ...
  • [数据库]创建视图的几点好处

    千次阅读 2019-09-16 12:38:32
    使用视图,可以定制用户数据,聚焦特定的数据。 解释: 在实际过程中,公司有不同角色的工作人员,我们以销售公司为例的话, 采购人员,可以需要一些与其有关的数据,而与他无关的数据,对他没 有任何意义,我们可以...
  • SQL视图

    2020-12-14 23:06:01
    视图  视图是虚拟的表。与包含的数据表不一样,视图只包含使用时动态检索的数据查询。...  创建视图之后,可以用于表基本相同的方式使用它们。可以对视图执行SELECT操作,过滤和排序数据,将视图联结到其他
  • 视图创建和使用

    千次阅读 2021-12-10 22:02:59
    视图创建和使用 一.视图的定义  视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表,视图所对应的数据并不真正地存储在视图中,而是存储在所引用的数据表中,视图的结构和数据是对数据表进行查询...
  • 视图在我们oracle数据库中是必不可少的结构...通过视图用户可以被限制在数据的不同子集上:使用权限可被限制在另一视图的一个子集上,或是一些视图和基表合并后的子集上。 那么在使用scott户添加视图时显示没有权限,
  • 第一点:使用视图,可以定制用户数据,聚焦特定的数据。 解释: 在实际过程中,公司有不同角色的工作人员,我们以销售公司为例的话, 采购人员,可以需要一些与其有关的数据,而与他无关的数据,对他没 有任何意义,...
  • 如何在MySQL中创建视图

    万次阅读 2018-03-30 14:11:12
    CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] VIEW view_name [(column_list)] AS select_statement [WITH [CASCADED | LOCAL] CHECK OPTION]该语句能创建新的视图,如果给定了OR REPLACE...
  • 1.1.1.概述在SQL中,数据定义语言( DDL ) 用来创建和修改数据库Schema,例如表、索引和用户等。其中数据库的Schema描述了用户数据模型、字段和数据类型。DDL 语句类似于用于定义数据结构的计算机编程语言。常见DDL ...
  • MySQL用户授权

    千次阅读 2021-01-19 11:18:35
    创建新的用户mysql> create user 'yhq'@'127.0.0.1';Query OK,0 rows affected (0.00sec)mysql> show grants for 'yhq'@'127.0.0.1';+-----------------------------------------+| Grants for yhq@127.0.0.1 ...
  • 第一点:使用视图,可以定制用户数据,聚焦特定的数据。 解释:  在实际过程中,公司有不同角色的工作人员,我们以销售公司为例的话,  采购人员,可以需要一些与其有关的数据,而与他无关的数据,对他没  有...
  • 在使用Oracle数据库过程中,视图是作为数据库对象存在的,因而,在...此类视图在某些特定条件下,优化器无法将视图外的谓词条件推送至视图内的基表上,即使在基表的列上创建索引也无法使用索引。本文将对该类视图提出一
  • SQL创建视图

    万次阅读 2017-12-05 09:18:18
    用户角度来看,一个视图是从一个特定的角度来查看数据库中的数据 。从数据库系统内部来看,一个视图是由SELECT语句组成的查询定义的虚拟表 。从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从...
  • 关于视图 1.视图的含义: 视图就是一个存在于数据库中的虚拟表。 视图本身没有数据,只是通过执行相应的select语句完成获得相应的数据。 2.不可更新的视图: 某些视图是可更新的。也就是说,可以在诸如UPDATE...
  • 为了把事情变成简单化,我在多个Oracle数据上建立统一的检查数据库账户,并且账户只能访问特定的几个视图(需要查询的sql已生成视图),具体做法如下: root>sqlplus / as sysdba 用DBA的权限进入数据库,需要创建一...
  • 一个视图是从一个特定的角度来查看数据库中的数据 。从数据库系统内部来看,一个视图是由SELECT语句组成的查询定义的虚拟表 。从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从数据库系统外部来看,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 177,487
精华内容 70,994
关键字:

创建视图给特定用户