• python-day37(MySQL数据库)


    一. 库操作

      1. 创建数据库

        语法: create databas 数据库名 charset utf8;

        数据库命名规则:

          可以由数字,字母,下划线组成,@,#,$

          区分大小写

          唯一性

          不能使用关键字如 create select

          不能单独使用数字

          最长128位

          #基本上跟Python的命名规则一样

      2. 数据库相关操作

    1 查看数据库
    show databases;
    show create database db1;
    select database();
    
    2 选择数据库
    use 数据库名
    
    3 删库跑路
    drop database 数据库名;
    
    4 修改数据库
    alter database db1 charset utf8;

    二. 表操作

      1. 存储引擎

      2. 表介绍

        表相当于文件,表中的一条记录就相当于文件的一行内容,表中的一条记录对应的标题,称为表的字段

      3. 创建表

        create table 表名(

        字段名1 类型 约束,

        字段名2 类型 约束

        );

    create database db1 charset utf8;
    
    use db1;
    
    create table t1(
    id int,
    name varchar(50),
    sex enum('male', 'female' ),
    age int(3)
    );
    
    show tables; #查看db1库下所有表名
    
    desc t1;#查看表结构
    
    select id,name,sex,age from t1;
    
    select * from t1;
    
    select id,name from t1;
    
    
    
    插入数据
    insert into t1 values
    (1,'a',18,'male');
    
    insert into t1(id) values
    (3),
    (4);
    
    select * from t1;

      4. 查看表结构

        describe t1;  #简写 desc

        show create table t1G; #查看表详细结构

      5. MySQL的基础数据类型

        >关于数据类型<

      6. 表的完整性约束

        >关于表的完整性约束<

      7. 修改表 alter table

     1 语法:
     2 1. 修改表名
     3       ALTER TABLE 表名 
     4                           RENAME 新表名;
     5 
     6 2. 增加字段
     7       ALTER TABLE 表名
     8                           ADD 字段名  数据类型 [完整性约束条件…], #注意这里可以通过逗号来分割,一下添加多个约束条件
     9                           ADD 字段名  数据类型 [完整性约束条件…];
    10       ALTER TABLE 表名
    11                           ADD 字段名  数据类型 [完整性约束条件…]  FIRST; #添加这个字段的时候,把它放到第一个字段位置去。
    12       ALTER TABLE 表名
    13                           ADD 字段名  数据类型 [完整性约束条件…]  AFTER 字段名;#after是放到后的这个字段的后面去了,我们通过一个first和一个after就可以将新添加的字段放到表的任意字段位置了。
    14                             
    15 3. 删除字段
    16       ALTER TABLE 表名 
    17                           DROP 字段名;
    18 
    19 4. 修改字段
    20       ALTER TABLE 表名 
    21                           MODIFY  字段名 数据类型 [完整性约束条件…];
    22       ALTER TABLE 表名 
    23                           CHANGE 旧字段名 新字段名 旧数据类型 [完整性约束条件…];  #change比modify还多了个改名字的功能,这一句是只改了一个字段名
    24       ALTER TABLE 表名 
    25                           CHANGE 旧字段名 新字段名 新数据类型 [完整性约束条件…];#这一句除了改了字段名,还改了数据类型、完整性约束等等的内容
    26 
    27 语法
    语法
     1 示例:
     2 1. 修改存储引擎
     3 mysql> alter table service 
     4     -> engine=innodb;
     5 
     6 2. 添加字段
     7 mysql> alter table student10
     8     -> add name varchar(20) not null,
     9     -> add age int(3) not null default 22;
    10     
    11 mysql> alter table student10
    12     -> add stu_num varchar(10) not null after name;                //添加name字段之后
    13 
    14 mysql> alter table student10                        
    15     -> add sex enum('male','female') default 'male' first;          //添加到最前面
    16 
    17 3. 删除字段
    18 mysql> alter table student10
    19     -> drop sex;
    20 
    21 mysql> alter table service
    22     -> drop mac;
    23 
    24 4. 修改字段类型modify
    25 mysql> alter table student10
    26     -> modify age int(3);
    27 mysql> alter table student10
    28     -> modify id int(11) not null primary key auto_increment;    //修改为主键
    29 
    30 5. 增加约束(针对已有的主键增加auto_increment)
    31 mysql> alter table student10 modify id int(11) not null primary key auto_increment;
    32 ERROR 1068 (42000): Multiple primary key defined
    33 
    34 mysql> alter table student10 modify id int(11) not null auto_increment;
    35 Query OK, 0 rows affected (0.01 sec)
    36 Records: 0  Duplicates: 0  Warnings: 0
    37 
    38 6. 对已经存在的表增加复合主键
    39 mysql> alter table service2
    40     -> add primary key(host_ip,port);        
    41 
    42 7. 增加主键
    43 mysql> alter table student1
    44     -> modify name varchar(10) not null primary key;
    45 
    46 8. 增加主键和自动增长
    47 mysql> alter table student1
    48     -> modify id int not null primary key auto_increment;
    49 
    50 9. 删除主键
    51 a. 删除自增约束
    52 mysql> alter table student10 modify id int(11) not null; 
    53 
    54 b. 删除主键
    55 mysql> alter table student10                                 
    56     -> drop primary key;
    57 
    58 简单示例
    示例

      8. 复制表

        点击链接

  • 相关阅读:
    Spark官方文档——本地编写并运行scala程序
    scala函数组合器
    scala数组
    scala实现kmeans算法
    Nginx 服务器安装及配置文件详解
    OpenVAS开源风险评估系统部署方案
    Elasticsearch和Head插件安装
    手把手教你在CentOS 7.4下搭建Zabbix监控(转)
    elasticsearch6.X 及head插件部署(完整版)
    Vim配置(python版)
  • 原文地址:https://www.cnblogs.com/Thui/p/10088684.html
Copyright © 2020-2023  润新知