MySQL是一种开源的关系型数据库管理系统,并且因为其性能、可靠性和适应性而备受关注。下面是最近一个月MySQL、Oracle、SQL Server的百度指数搜索指数对比:

可以看到,在最近一个月,MySQL的搜索量要远远高于其他两种数据库语言,表明了MySQL的用户多、受关注度高。在平时的项目中也经常使用,因此,先整理一下最基本的库和表结构的增删改查,也就是DDL(数据定义语句),其他内容后续再整理。

  1. CREATE DATABASE db1 CHARSET utf8; --创建数据库db1
  2. show DATABASES; --查看所有数据库
  3. show create database db1; --查看新创建的数据库db1
  4. drop database db1; --删除数据库db1
  5. use db1; --选择数据库db1
  6. show tables; --查看数据库中的所有表
  7. desc t1; --查看数据表t1的结构
  8. --创建数据表t1
  9. create table t1(
  10. id int PRIMARY key auto_increment,
  11. name varchar(11) not null,
  12. age int(3),
  13. sex enum("male","female")); --使用枚举类型,sex的值只能是枚举中的任意一个
  14. select * from t1; --无条件查询表t1的所有记录
  15. --往表t1中插入数据
  16. insert into t1(id,name,age,sex) values(1,"wang",22,"male");
  17. insert into t1(id,name,age,sex) values(2,"zhang",23,"female"),
  18. (3,"li",22,"female"),
  19. (4,"chen",22,"male");
  20. insert into t1(name,age,sex) values("zhao",22,"male");
  21. describe t1; --查看表结构
  22. alter table t1 rename t2; --修改表名
  23. desc t2;
  24. alter table t2 engine=innodb; --修改表的存储引擎
  25. --增加字段
  26. alter table t2
  27. add address varchar(255) not null after name;
  28. alter table t2
  29. add status varchar(255) not null first;
  30. --删除字段
  31. alter table t2 drop status;
  32. --修改字段
  33. alter table t2 modify address varchar(125) not null;
  34. alter table t2 change address dizhi varchar(22) not null;
  35. alter table t2 change dizhi address varchar(255) not null;
  36. --删除主键
  37. alter table t2 modify id int(15) not null;
  38. desc t2;
  39. --复制表
  40. create table t3 select * from t2 where 1=2; --只复制表结构,不复制记录,key也不复制
  41. show tables;
  42. desc t3;
  43. create table t4 select * from t2; --复制表结构和记录,key不复制
  44. alter table t4 add primary key(id,name);
  45. alter table t4 modify id int auto_increment;
  46. desc t4;
  47. --删除表
  48. drop table t3;
  49. alter table t3 add money decimal(4,2) not null;
  50. alter table t3 modify id int primary key auto_increment not null;
  51. insert into t3(name,address,age,sex,money) values("zhang","pingling",22,"male",99.99);
  52. --decimal(m,n) m表示数据的总位数,n表示小数点后的位数,不算负号,精确的
  53. --sql优化:创建表时,定长的类型往前放(比如性别),变长的类型网后放(比如地址、描述信息)

MySQL数据库基本使用(DDL)的更多相关文章

  1. Mysql 数据库操作之DDL、DML、DQL语句操作

    Mysql 数据库操作之DDL.DML.DQL语句操作 设置数据库用户名密码 l  Show databases 查看数据库列表信息 l  查看数据库中的数据表信息 ,格式: use 数据库名: sh ...

  2. python-对于mysql数据库的操作

    python操作mysql数据库 问题:DDL,DCL,DML的区别? 语言与框架:jdbc/odbc操作数据库 java(ibatis/hibernate/jpa)操作数据库 客户端工具:navic ...

  3. MYSQL初级学习笔记一:MYSQL常用命令和数据库操作(DDL)!(视频序号:初级_3,4)

    知识点一:MYSQL常用命令(3) 登入方法:一,mysql –u 账号 –p 密码 退出方法:一,EXIT,QUIT 修改MYSQL命令提示符: 连接上客户机之后,通常使用prompt命令修改: 连 ...

  4. 第1 章 mysql数据库之简单的DDL和DML sql语句

    一.SQL 介绍 1.什么是sql? SQL,英文全称(Structured Query Language),中文是结构化查询语言,它是一种对关系数据库中数据进行定义和操作的语言方法,是大多数关系数据 ...

  5. MySQL数据库之DDL(数据定义语言)

    1.MySQL数据库之DDL创建.删除.切换 (1)查看所有数据库 show databases: (2)切换数据库 use 数据库名: (3)创建数据库 create database 数据库名: ...

  6. 35、mysql数据库(ddl)

    35.1.数据库之库操作: 1.创建数据库(在磁盘上创建一个对应的文件夹): create database [if not exists] db_name [character set xxx]; ...

  7. 将现有MySQL数据库改为大小写不敏感

    用过MySQL的应该都会注意到,默认情况下,Linux下安装的MySQL是大小写敏感的,也就是说Table1和table1可以同时存在.而Windows下的MySQL却是大小写不敏感的,所有表名和数据 ...

  8. MySQL数据库常用命令

    1.连接mysql数据库:mysql -u用户名 -p密码; 2.创建数据库:create database 数据库名称; 3.删除数据库:drop database 数据库名称; 4.使用数据库:u ...

  9. [MySql] - 数据库备份还原

    导出数据库到SQL方法: mysqldump.exe -u[USERNAME] -p[PASSWORD] -h [IP] jira --lock-all-tables > c:\db.sql m ...

随机推荐

  1. 题解 洛谷P2959 【[USACO09OCT]悠闲漫步The Leisurely Stroll】

    原题:洛谷P2959 不得不说这道题的图有点吓人,但实际上很多都没有用 通过题上说的“三岔路口”(对于每一个节点有三条连接,其中一条连接父节点,另外两条连接子节点)和数据,可以那些乱七八糟的路和牧场看 ...

  2. 黑马程序员_毕向东_Java基础视频教程——逻辑运算符(随笔)

    逻辑运算符 逻辑运算符用于连接 boolean 型的表达式 & : 只要两边都是 boolean 表达结果,有一个为 false ,则结果就是 false 只要两边都为 true 则结果就为 ...

  3. react 动态渲染echarts折线图,鼠标放大缩小

    //折线图组件import React,{Component} from 'react'; import ReactEcharts from 'echarts-for-react'; class Ec ...

  4. Django组件content-type使用方法详解

    前言 参考博客:https://www.zhangshengrong.com/p/zD1yQJwp1r/ 一个表和多个表进行关联,但具体随着业务的加深,表不断的增加,关联的数量不断的增加,怎么通过一开 ...

  5. Linux系统rabbitmq安装

    rabbitmq消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来确保消息的可靠传递.消息发布者只管把消息发布到 MQ 中而不用管谁来取,消息使用者只管 ...

  6. RAID0、RAID1及RAID5的区别详解

    目前已有的RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)技术有很多种,但是RAID0.RAID1.RAID5是最常见的几种方案. 1 RAID0 ...

  7. oracle关于rownum的使用【oracle】

    转自:https://blog.csdn.net/qiuzhi__ke/article/details/78892822 关于rownum是怎么产生的(网上有不少的文章,下面是摘录): rownum是 ...

  8. iOS [AFHTTPSessionManager GET:parameters:progress:success:failure:]: unrecognized selector sent to

    AFN更新到4.0.1后,崩溃[AFHTTPSessionManager GET:parameters:progress:success:failure:]: unrecognized selecto ...

  9. MySQL(8)— 权限管理和备份

    8-1.用户管理 SQL yog 可视化进行管理 sql -- 创建用户:CREATE USER 用户名 IDENTIFIED BY '密码' CREATE USER feng IDENTIFIED ...

  10. BZOJ1018线段树

    1018: [SHOI2008]堵塞的交通traffic Time Limit: 3 Sec  Memory Limit: 162 MBSubmit: 3489  Solved: 1168[Submi ...