加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL 学习笔记 一

发布时间:2020-12-11 23:57:15 所属栏目:MySql教程 来源:网络整理
导读:一、数据库简单介绍 1、 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: ? 网状型数据库 ? 层次型数据库 ? 关系型数据库 ? 面向对象数据库 上面4中数据库系统中,关系型数据库使用最为广泛。面向对象数据库则是由面向对象语言催生的新型数据库,

一、数据库简单介绍

1、 按照数据库的发展时间顺序,主要出现了以下类型数据库系统:

? 网状型数据库

? 层次型数据库

? 关系型数据库

? 面向对象数据库

上面4中数据库系统中,关系型数据库使用最为广泛。面向对象数据库则是由面向对象语言催生的新型数据库,目前的一些数据库系统,如:SQL Server 2005、Oracle10g等都开始增加面向对象的特性。

?

二、常用基本SQL语句/语法

? SQL语句基础理论

SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作然后关系型数据库。

标准的SQL语句通常划分为以下类型:

查询语句:主要由于select关键字完成,查询语句是SQL语句中最复杂,功能最丰富的语句。

DML(Data Munipulation Language,数据操作语言)语句,这组DML语句修改后数据将保持较好的一致性;操作表的语句,如插入、修改、删除等;

DDL(Data Definition Language,数据定义语言)语句,操作数据对象的语言,有create、alter、drop。

DCL(Data Control Language,数据控制语言)语句,主要有grant、revoke语句。

事务控制语句:主要有commit、rollback和savepoint三个关键字完成

DDL语句

DDL语句是操作数据库对象的语句,包括创建create、删除drop、修改alter数据库对象。

常见数据库对象

对象名称

上面的对象都可以通过用create、alter、drop完成相关的创建、修改、删除操作。

常用数据类型

列类型

mediumblob/longblob

mediumtext/longtext

? 常用查询

  dbName;
  [  ] dbName;
 dbName;
 tableName;
   (
 整型
,
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        --普通长度文本,default设置默认值
(255)  ‘zhangsan’,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        --超长文本
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        --日期
  userInfo (
(20),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">sex 
 
 name,sex  ;
  userInfo

 *  ;
    tel (11)  ‘02012345678’;
   
 ( 
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">birthday 
    tel (15)  ‘02087654321’;
    tel (15)   ;
    tel (15)    age;
 modify不支持一次修改多个列,但是Oracle支持多列修改
 tel (15)   ,
 name (20)  tel;
    photo;
   rename  users;
  users change name u_name (10);
  users change sex u_sex (10)  u_name;



13、 删除表

users;



? 约束

MySQL中约束保存在information_schema数据库的table_constraints中,可以通过该表查询约束信息;

 :非空约束,指定某列不为空
: 唯一约束,指定某列和几列组合的数据不能重复
 :主键约束,指定某列的数据不能重复、唯一
 :外键,指定该列记录属于主表中的一条记录,参照另一条数据
:检查,指定一个表达式,用于检验指定数据
 null约束
  temp(
  ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        name (255)    ‘abc’,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        sex  
  temp
 sex (2)  ;
  temp  sex (2) ;
  temp  sex (2)  ‘abc’ ;

  temp (
(25),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        password (16),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        --使用表级约束语法,
 uk_name_pwd (name,password)
  temp  (name,password);
  temp  name (25) ;
  temp   name;
 
  temp(

  ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">    name (25)
  temp2(
  ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">    name (25),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">    pwd (15),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">     pk_temp_id  (id)
 pk_temp_id  (name,pwd)
  temp   ;
  temp   (name,pwd);
  temp  id   ;
 auto_increment  ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        name (20),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        pwd (16)
  约束
  classes(
(20)
  student(
 auto_increment,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        name (22),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">         pk_id  (id),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        classes_id   classes(id)
  student(
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">         (classes_id)  classes(id)

 fk_classes_id  (classes_id)  classes(id)
  classes(
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        number ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">         (name,number)
(20),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        classes_number ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        
 (classes_name,classes_number)  classes(name,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">删除外键约束:
  student    student_ibfk_1;
  student    fk_student_id;
  student   (classes_name,number);
  tree(
(50),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">        parent_id ,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">         (parent_id)  tree(id)
 
  ,前者是级联删除,后者是将从表的关联列的值设置为null。
  
,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">         (id),monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">
(age > 20)



?

? 索引

)中的一个数据库对象,索引的作用就是提高对表的检索查询速度,
  idx_temp_name  temp(name);
  idx_temp_name$pwd  temp(name,monospace; direction: ltr; border-top-style: none; color: black; font-size: 10pt; border-left-style: none; overflow: visible; padding-top: 0px">删除索引:
  idx_temp_name  temp;

?

? 视图

  replace  view_temp
 name,age  temp;
 option来完成限制。
 *  temp
  ;
  view_temp
 id,name  temp;
  view_temp;
  v_temp;

?

? DML语句

 插入语句
 temp (,‘jack’,25);
 temp(name,age) (‘jack’,22);
 temp  id = 7,name = ;
 temp(name)  name  classes;
,‘jackson’ 23);
 修改语句
 temp  name = ‘jack2’;
 temp  name = ‘jack’,age = 22;
 temp  name = ‘jack’  age > 22;
 删除语句
  temp;
  temp  age > 20;

?

? select 查询、function 函数

 *  temp;
 temp  age = 22;
 age + 2,age / 2,age – 2,age * 2  temp  age – 2 > 22;
 concat(name,‘-eco’)  temp;
 对列重命名
 name  ‘名称’  temp;
 name  “名’称”  temp;
 t.name Name  temp  t;
 5 + 2;
 concat(,);
 去掉重复数据
  id  temp;
  id,age  temp;
 条件查询
、大于等于>=、小于<、小于等于<=、等于=、不等于<>
 *  t  a > 2  a >= 3  a < 5  a <= 6  a = 7  a <> 0;
 并且
 *  temp  age > 20  name = ‘jack’;
 或者
 *  tmep  name = ‘jack’  name = ‘jackson’;
 v  v2
 * form temp  age  20  25; 
 查询
 *  temp  id  (1,2,3);
 模糊查询
 *  temp  name  ‘j%’;
 *  temp  name  ‘%k%’;
 *  temp  name  ‘_%’  ‘’;
   
 *  temp  name  ;
 *  temp  name   ;

 *  temp   (age > 20);
 *  temp  id  (1,2);
 
 *  temp   id;
 *  temp   id ;
 *  temp   id,age;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读