zoukankan      html  css  js  c++  java
  • 数据库的增删改

    --显示当前时间:

    select now();

    --创建students表(id, name, age, high, gender, cls_id)

    	create table students (
    	    id int unsigned (默认:not null)  primary key  auto_increment(自增),
    	    name varchar(20),
    	    age tinyint unsigned default 0,
    	    high decimal(5,2),
    	    gender enum('男', '女', '中性', '保密') default '保密',
    	    cls_id int unsigned
    	); 

    --查看表结构:

    	desc student;
    	MariaDB [testdb]> desc students;
    	+--------+-------------------------------------+------+-----+---------+----------------+
    	| Field  | Type                                | Null | Key | Default | Extra          |
    	+--------+-------------------------------------+------+-----+---------+----------------+
    	| id     | tinyint(3) unsigned                 | NO   | PRI | NULL    | auto_increment |
    	| name   | varchar(20)                         | NO   |     | NULL    |                |
    	| age    | tinyint(3) unsigned                 | YES  |     | NULL    |                |
    	| high   | decimal(5,2)                        | YES  |     | NULL    |                |
    	| gender | enum('男','女','中性','保密')       | YES  |     | 中性    |                |
    	| cls_id | tinyint(3) unsigned                 | YES  |     | NULL    |                |
    	+--------+-------------------------------------+------+-----+---------+----------------+

    字段的增删改:

    -- 修改表-添加字段
      --alter table 表名 add 列名 类型;

    alter table students add birthday datetime; 

    -- 修改表-修改字段:不重命名版
      -- alter table 表名 modify 列名 类型及约束;

    alter table students modify birthday date;

    -- 修改表-修改字段:重命名版
      -- alter table 表名 change 原名 新名 类型及约束;

    alter table students change birthday birth date;
    

      

    -- 修改表-删除字段
      -- alter table 表名 drop 列名;

    alter table students drop birth; 

    -- 删除表
      -- drop table 表名;

    drop table students;

    库的增删改查:

    #查看数据库

    show databases;         

    #查看创建数据库状态

    show create database testdb;        

    #使用哪个库

    use testdb;

    #创建数据库

    create database test03            #默认是拉丁字符集
    create database testdb character set utf8;

    #删除数据库

    drop database testdb;

    #修改数据库默认字符集

    alter database 库名 default character set utf8; #alter改变数据库结构/表结构       

    数据的增删改:

    增加:
    --全列插入
      --insert into 表名 values (..)

    eg:insert into students values (0(默认),'小明',19,188.999,'男', 1);
    --主键字段默认 可以用 0 null default 来站位
    

      

    --部分插入(注意约束)
      --insert into 表名(字段,字段…) values (..)

    eg:insert into students(id, name, age) values (0,'绿帽子',19); 

    --部分插入(多条记录)

    insert into students(id, name, age) values (0,'绿帽子',19),(0,'小跳蚤',21);
    

      

    修改:
      --update 表名 set 列1=值1, 列2=值2... where 条件(还可以范围eg:id>6);

    update students set age=100 where id=1; 
    update students set age=100,cls_id=77 where id=1;
    
    eg:update students set name='小飞',age=23 where id=9(或name='黄飞鸿2');
    

      

    删除:
      -- delete from 表名 #清空表

    -- 物理删除
      -- delete from 表名 where 条件

    delete from students where name='黄飞鸿';
    delete from students where cls_id=88; 
    

      

    -- 清空表数据

    truncate students; #无法恢复数据,并且清空自增
    delete from students;	#在一定条件下可以恢复数据,不会清楚自增

    -- 逻辑删除
      -- 用一条字段来表示 这条信息是否已经不能在使用了
      -- 给students表添加一个is_delete字段 bit 类型

    alter table students add is_delete bit default 0;
    

      

    其他: 

    --default charset=utf8 默认字符集(按照库来的)
    --auto_increment(自增)

    MyISAM与InnoDB区别:
    --两种类型最主要的区别就是InnDB支持事物处理与外键和行级锁
      MyISAM查询机制高于InnoDB
      InnoDB安全级别高于MyISAM

  • 相关阅读:
    CloudFlare防护下的破绽:寻找真实IP的几条途径
    用Log Parser Studio分析IIS日志
    Log Parser 2.2 + Log Parser Lizard GUI 分析IIS日志示例
    wordPress Development
    MyISAM 与 InnoDB 的区别
    ubuntu安装wiz笔记
    chown命令
    (转载)我们工作到底为了什么
    DS_Store 是什么文件
    Linux命令 ,在当前目录下查找一个,或者多个文件
  • 原文地址:https://www.cnblogs.com/twoo/p/11829684.html
Copyright © 2011-2022 走看看