Python MySQL(学习SQL语句)

  1. 操作文件夹
    1. create database db1 default charset utf8; (创建文件夹)
    2. show databases ;  (显示内容)
    3. drop database db1;  (删除文件夹)
  2. 操作文件
    1. use db1; (进入)
    2. show tables; (显示表)
    3. create table t1(
      id int unsignde auto_increment primary key,
      num decimal(10,5),
      name char(10)
      age ENUM('1','2','3')
      col SET('a','b','c')
      ) engine=innodbd efault charset=utf8;
      (创建表)
      #  列名 类型(接受数据大小)字段后都可以接null,not null(是否支持为空),接unsigned(表示有无符号);
      #  auto_increment primary key(一个表只能有一个)   ————auto_increment(表示自增) primary key (表示约束:(不能重复   且不能为空)和加速查找)

      #  engine表示使用什么引擎  innodb(支持事务,操作可以回滚,原子性操作)myisam (支持全局检索)
      #  decimal(总位数,小数点后的位数)表示精确的小数比float和double精准
      #  char(10)为自动填充满10个,查询速度快;varchar(10) 不会,比较节省空间(所以应该把定长的放前面,变长的放后面)
          因为要查询char(10)后面的数据时只要直接跳过10个字符就好了,而varchar(10)不知道要跳过多少个
      #  ENUM()枚举类型,只能插入其中单个内容
      #  SET()集合类型,只能插入括号中的任意组合
    4. delete from t1;  (清空表,且会之前的自增会继承)
      truncate table t1; (也是清空表,但自增不继承,而且清空速度比较快)
    5. drop table t1;  (删除表)
    6. 如果上传文件或图片之类的就上传它的路径
  3. 操作文件中的内容(增删改查)
    1. insert into t1(id,name) values(1,'mc');   (插入数据)
      #  如果输入出错可能要考虑下编码,比如:utf-8(但是现在utf-8不用考虑了(/ □ \))
    2. delete from t1 where id<6;  (删除数据)
    3. update t1 set age=18;  (修改数据)
      update t1 set age=18 where age=17;
    4. select * from t1;  (查询表中的内容)
  4. 外键
    1. 优点:
      1. 节省空间
      2. 制定约束
    2. 操作:
      1. 创建一个表
        create table t1(
        id int unsignde auto_increment primary key,
        name char(10),
        department_id int,
        ) engine=innodbd efault charset=utf8;
         
      2. 再创建外键的表
        create table department(
        id int unsignde auto_increment primary key,
        title char(10)
        ) engine=innodbd efault charset=utf8;
         
      3. 加入约束
        create table t1(
        id int unsignde auto_increment primary key,
        name char(10),
        department_id int,
        constraint fk_t1_department foreign key ("department_id ") references department('id')
                         
         # 这里是名称                       # 两个双引号表示整列
        ) engine=innodbd efault charset=utf8;
         

猜你喜欢

转载自www.cnblogs.com/otome/p/12443495.html