zoukankan      html  css  js  c++  java
  • python学习之老男孩python全栈第九期_数据库day001知识点总结 —— MySQL操作数据库以及数据表、基本数据类型、基本增删改查、外键定义以及创建

    一. 学习SQL语句规则以及外键
    1. 操作文件夹
            create database db2;    创建文件夹
            create database db2 default charset utf8;    创建文件夹,且数据库是utf-8编码
            show databases;         查看文件夹
            drop database db2;      删除文件夹

    2. 操作文件
            use dn2;        进入文件夹
            show tables;    查看所有文件
            create table t1(id int,name char(10));       创建一个有两列的表
            create table t1(id int,name char(10)) default charset = utf8;       创建一个有两列的表,且内容为utf8编码
    
            create table t1(
                列名,类型 null,     # 是否为空
                列名,类型 not null default 1,
                列名,类型 not null auto_increment,      # 自增
                id int,
                name char(10)
            ) engine = innodb default charset = utf8;
            比如:
                create table t1(
                    id int not null auto_increment primary key,  # 这两个一般要一起写
                                                  # auto_increment : 表示自增;一个表里面只能有一个自增列
                                                  # primary key :表示 约束(不能重复,且不能为空);加速查找
                    name char(10)
                ) engine = innodb default charset = utf8;
    
            innodb 支持事务,原子性操作
            myisam 不支持事务
    
            delete from t1;         # 把表里面的内容清空,且若再插入数据,自增id会继续之前的顺序,而不是从头开始自增
            truncate table t1;          # 把表里面的内容清空,且若再插入数据,自增id会从头开始自增
            drop table t1;          # 删除表
        3. 操作文件中内容

            insert into t1(id, name) values(1, 'egon');     插入一条数据
    
            delete from t1 where id < 6;                    删除数据
    
            update t1 set age =18;                          把age列 全部改成18
            update t1 set age =18 where age = 17;           把age等于17的,改成18
    
            select * from t1;                               查看
        外键:
            create table userinfo(
                uid bigint auto_increment primary key,
                name varchar(32),
                department_id int,
                constraint fk_user_depar foreign key ('department_id',) references department('id')         # 外键约束
            )engine = innodb default charset = utf8;
    
            create table department(
                id bigint auto_increment primary key,
                titlt char(32)
            )engine = innodb default charset = utf8;


    二. MySQL数据表基本数据类型
    数据类型:
    数字:
    tinyint
    int
    bigint
    小数:
    float(不太精准)
    double(不太精准)
    decimal(精准小数)

    字符串:
    char(10): (最大255字符)
    如果没有10个,就会自动填充空格到10个,(root )
    varchar(10): (最大255字符)
    最多能写10个,不会填充(root),节省空间,但速度没有char快
    创建数据表时,定长列往前放置,变长的往后放

    text

    上传文件:
    文件存硬盘
    db存路径

    enum 枚举

    set

    时间类型:
    datetime:YYYY-MM-DD HH:MM:SS


    create table t1(
    id int not null auto_increment primary key,
    num decimal(10,5), # ()里面 第一个数是总位数,第二个数是小数点后面最多几位
    name char(10)
    ) engine = innodb default charset = utf8;

  • 相关阅读:
    The Joy of Clojure – Laziness(6.3)
    Python Decorator Closure
    Programming clojure – Recursion and Lazyseq
    Programming Clojure Unifying Data with Sequences
    SharePoint Workflow的code运行在哪个进程? w3wp.exe 还是OWSTimer.exe?
    利用PsExec提升命令行的安全级别, 绕过组策略执行命令
    WinDBG脚本入门
    记录一个SPS2010中RSS Web Part报错的问题
    User的Delegation选项卡在Active Directory Users and Computers找不到?
    修改SPS2010的Search Core Results webpart, 令其显示文档被索引了的所有属性
  • 原文地址:https://www.cnblogs.com/lpgit/p/9425590.html
Copyright © 2011-2022 走看看