当前位置:Gxlcms > 数据库问题 > SQL

SQL

时间:2021-07-01 10:21:17 帮助过:2人阅读

数据库基本概念

        数据库(Database, DB)
        数据库管理系统(Database Management System, DBMS)
        数据库管理员( Database Administrator, DBA )
        数据库系统( Database System, DBS )
关系型数据库(Relationship Database, RDB)

       关系型数据库管理系统(RDBMS)
       SQL语言(Structured Query Language)
       使用关系模型的数据库语言,用于和各类数据库的交互,提供通用的数据管理和查询功能:
       改变数据库结构
       更改系统安全设置
       设置用户对数据库或表的许可权限
       在数据库中检索需要的信息
       对数据库的信息进行更新
常用SQL指令:
       SELECT、INSERT、DELETE、UPDATE、CREATE、DR
当前流行的大型关系型数据库: Oracle、IBM DB2、SQL Server、SyBase、Informix等。

实体间联系:

一对一关系(1:1)
       两个实体集A和B,若A中的每个实体至多和B中的一个实体有联系,反之,B中的每个实体至多和A中的一个实体有联系,称A对B或B对A是一对一关系。
一对多关系(1:n)
       两个实体集A和B,如果A中的每个实体可以和B中的0~多个实体有联系,而B中的每个实体至多和A中的一个实体有联系,则称A对B为一对多关系。
多对多关系(m:n)
       两个实体集A和B,若A中的每个实体可与和B中的多个实体有联系,反之亦然,称A对B或B对A是多对多关系。

关系型数据库基本术语:

  关系:整个二维表
  关系名:表格名称
  元组:行数据(记录)
   属性:列数据(字段/分量)
   属性名:列名称(字段名)
   主键:唯一确定元组的属性组(关键字)
   域:属性的取值范围
   关系模式:关系名(属性列表)
        如:学生(学号,姓名,性别,系别,年龄,籍贯)
   约束
   域完整性约束
   实体完整性约束
   参照完整性约束
数据库(Database)
    是磁盘上存储的数据的集合(包括配置文件、数据文件、日志文件和控制文件等)
数据库实例(Database Instance)
    运行在数据库文件上的一组Oracle后台进程/线程以及一个共享内存区。数据库可以由实例装载和打开。
Oracle实时应用集群( RAC, Real Application Clusters)
    Oracle并行服务器架构/RAC架构
数据库服务名( Database Service_Name)
    从oracle8i开始引入,数据库客户端与服务器端连接时建议指定其数据库服务名,而不是数据库实例名。
网络服务名(Net Service Name)
    数据库在客户端的逻辑表示,包含数据库服务名和网络地址两方面信息
监听器(Monitor)
SQL语句分类:
Select查询语句
      DML语句(数据操作语言)
Insert、Update、Delete、Merge
      DDL语句(数据定义语言)
Create、Alter、Drop、Truncate
      DCL语句(数据控制语言)
Grant、Revoke
     事务控制语句
Commit 、Rollback、Savepoint
        

         SQL 语言大小写不敏感。
         SQL 可以写在一行或者多行
         关键字不能被缩写也不能分行
         各子句一般要分行写。
         使用缩进提高语句的可读性。
数字和日期使用的数学表达式。
        SELECT last_name, salary, salary + 300
        FROM   employees;
         乘除的优先级高于加减。
         同一优先级运算符从左向右执行。
         括号内的运算先执行。

         空值是无效的,未指定的,未知的或不可预知的值。
         空值不是空格或者0。
 列的别名:
         重命名一个列。
         便于计算。
         紧跟列名,也可以在列名和别名之间加入关键字‘AS’,以便在别名中包含空格或特殊的字符并区分大小写。 

在emp表中查询相关信息       

       select * from emp;  
        select * from emp where ename like‘%*_%‘ escape‘*‘;
        select * from emp where deptno=30;
        select empno,ename from emp where job=‘manager‘;
        select * from emp where comm>sal;
        select sal+comm,ename from emp;
        select * from emp where(deptno=10 and job=‘MANAGER‘)or(deptno=20 and job=‘CLERK‘);
        select * from emp where deptno=10 and job not in(‘MANAGER‘,‘CLERK‘)and sal>=2000;
        select distinct job from emp where comm is not null and comm>0;
        select * from emp where comm<500 or comm is null;
        select ename from emp order by hiredate;
        emp表
技术分享

 






SQL

标签:后台   oracle   表格   llb   comm   clerk   tab   日志   structure   

人气教程排行