目录

  • 一、库的基本操作
  • 二、表的基本操作
  • 三、字段的基本操作
  • 四、数据库表的引擎:驱动数据的方式 - 数据库优化
  • 五、创建表的完整语法
  • 六、数据库的模式(**)

一、库的基本操作

# 前提: 连接上数据库1)查看已有数据库
mysql>: show databases;2)选择某个数据库
mysql>: use 数据库名3)查看当前所在数据库
mysql>: select database();4)创建数据库
mysql>: create database 数据库名 [charset=编码格式];
eg>: create database owen;
eg>: create database zero charset=utf8;5)查看创建数据库的详细内容
mysql>: show create database 数据库名;
eg>: show create database owen;6) 修改数据库编码集
mysql>: alter database 数据库名 charset="字符集";
eg>: alter database db1 charset="utf8";6)删除数据库
mysql>: drop database 数据库名;
eg>: drop database db1;

二、表的基本操作

# 前提:先选取要操作的数据库1)查,查看表信息
纵观所有数据库: show tables;
详细信息: show create table 表名;
查看创建表的结构: desc 表名;2)增,创建表
mysql>: create table 表名(字段们);
eg>: create table student(name varchar(16), age int);3)改,修改表结构
修改字段属性: alter table 表名 modify 字段名 字段属性;
eg>: alter table t1 modify name char(20);
修改字段名: alter table 表名 change 旧字段名 新字段名 新字段属性;
eg>: alter table t1 change name usr char(16);
修改表名: alter table 表名 rename 新表名;
eg>: alter table t1 rename t2;
# 添加一个新字段: 根据相对位置添加新字段:
mysql>: alter table 表名 add 字段名 类型[(长度) 约束];  # 末尾
eg>: alter table tf1 add z int unsigned;
mysql>: alter table 表名 add 字段名 类型[(宽度) 约束] first;  # 首位
eg>: alter table tf1 add a int unsigned first;
mysql>: alter table 表名 add 字段名 类型[(宽度) 约束] after 旧字段名; # 添加在表已有字段之后
eg>: alter table tf1 add xx int unsigned after x;
# 删除字段
mysql>: alter table 表名 drop 字段名;
eg>: alter table tf1 drop a;4)删, 删除表
mysql>: drop table 表名;
eg>: drop table teacher;# 删除表字段
mysql>: alter table 表名 drop 字段名;  # 删除字段
eg>: alter table tf1 drop a;

三、字段的基本操作

1)查,查看某个数据库中的某个表的所有记录,如果在对应数据库中,可以直接查找表
mysql>: select * from [数据库名.]表名;
注:*代表查询所有字段
模糊查询:like,_代表任意一个字符,%0个或多个任意字符
mysql>: select * from [数据库名.]表名 where 字段名 like "模糊查询的内容";
eg:  select * from t2 where name like "xc%";2)增,给表的所有字段插入数据
mysql>: insert [into] [数据库名.]表名 values (值1,...,值n);
eg:如果给有name和age两个字段的student表插入数据
1条>:insert into student values ('Bob', 18);
多条>:insert into student values ('张三', 18), ('李四', 20);
指定库>:insert owen.student values ('张三', 18), ('李四', 20);3)改,根据条件修改指定内容
mysql>: update [数据库名.]表名 set 字段1=新值1, 字段n=新值n where 字段=旧值;
eg:> update student set name='王五', age='100' where name='张三';
注:i) 可以只修改部分字段 ii) 没有条件下,所有记录都会被更新
eg:> update student set name='呵呵';4)删,根据条件删除记录
mysql>: delete from [数据库名.]表名 where 条件;
eg:> delete from student where age<30;

四、数据库表的引擎:驱动数据的方式 - 数据库优化

可以通过设置myisam来优化数据库

# 前提: 引擎是建表是规定, 提供给表使用的, 不是数据库# 展示所有引擎
mysql> show engines; # innodb(默认): 支持事务, 行级锁, 外键
mysql>: create table t11(id int)engine=innodb;# myisam: 查询效率要优于innodb, 当不需要支持事务, 行级锁, 外键, 可以通过设置myisam来优化数据库
mysql>: create table t12(id int)engine=myisam;# blackhole:黑洞,存进去的数据都会消失(可以理解不存数据)
mysql>: create table t13(id int)engine=blackhole;# memory:表结构是存储在硬盘上的,但是表数据全部存储在内存中
mysql>: create table t14(id int)engine=memory;

五、创建表的完整语法

create table 表名(
字段名1 类型[(宽度) 约束条件],
字段名2 类型[(宽度) 约束条件],
字段名3 类型[(宽度) 约束条件]
)engine=innodb charset=utf8;# []可选参数
create table db1.t1(name char(3) not null);
# 数据插入时,name不能为空(null), 且最长只能存放三个字符
# 总结: 宽度和约束条件为可选参数, 用来限制存放数据的规则

六、数据库的模式(**)

# mysql 5.7 以后默认都是安全模式# mysql 5.6 版本
sql_model=no_engine_substitution  # 非安全性,默认
sql_model=strict_trans_tables  # 安全性# 查看当前数据库模式:
show variables like "%sql_mode%"; # %匹配0~n个任意字符 => 模糊查询# 临时设置为安全模式,服务重启后会被重置
mysql>: set global sql_mode="strict_trans_tables";  # 在root用户登录状态下
# 在设置后,quit断开数据库连接后(服务器不重启)就会进入安全模式# 安全模式下,非安全模式下sql执行的警告语句,都会抛异常
eg>: create table t1(name char(2));
eg>: insert into t1 values ("ab") # 正常
eg>: insert into t1 values ("owen") # 错误 Data too long for column 'name' at row 1

转载于:https://www.cnblogs.com/XuChengNotes/p/11588523.html

128 数据库基本操作相关推荐

  1. SQL Server数据库基本操作(一)

    SQL Server数据库基本操作 基本表的定义.删除与修改 1.创建基本表 2.修改基本表 3.删除基本表 基本表的定义.删除与修改 创建数据库 CREATE DATABASE STUDENT 1. ...

  2. [JSP暑假实训] 三.MySQL数据库基本操作及Servlet网站连接显示数据库信息

    本系列文章是作者暑假给学生进行实训分享的笔记,主要介绍MyEclipse环境下JSP网站开发,包括JAVA基础.网页布局.数据库基础.Servlet.前端后台数据库交互.DAO等知识. 前一篇文章讲解 ...

  3. mysql数据库基本操作总结与归纳

    mysql数据库基本操作总结与归纳 登录命令 mysql -u 用户名 -p 密码 列如: [root@localhost ~]# mysql -u root -p [root@localhost ~ ...

  4. Java数据库篇2——数据库基本操作

    Java数据库篇2--数据库基本操作 1.启动.停止.服务 net start mysql net stop mysql 2.登入登出 本地 Mysql -u用户名 -p密码Mysql -u用户名 - ...

  5. python基础课程3(看代码看注释)--数据库基本操作(mysql)

    #人生苦短,我用python #推荐一个python数据结构可视化工具,网址:http://www.pythontutor.com ##课表:1.mysql数据库的基本操作:2.用python操作基本 ...

  6. MySQL系列:数据库基本操作(1)

    1. 登录数据库 mysql -h localhost -u root -p 2. 数据库基本操作 2.1 查看数据库 mysql> SHOW DATABASES; +------------- ...

  7. 1Python全栈之路系列之MySQL数据库基本操作

    Python全栈之路系列之MySQL数据库基本操作 MySQL数据库介绍 MySQL是一种快速易用的关系型数据库管理系统(RDBMS),很多企业都在使用它来构建自己的数据库. MySQL由一家瑞典公司 ...

  8. 【MySQL】数据库基本操作、表的操作

    一.数据库 1.什么是数据库 2.数据库基本操作 2.1.显示数据库 2.2. 创建数据库 2.3.选中数据库 2.4.删除数据库 3.数据库分类 4.MySQL 安装 二.数据表的使用 1. 常用数 ...

  9. Sqlite3 数据库基本操作

    Sqlite3 数据库基本操作 1.sqlite3命令 **2.sqlite3编程接口:** 3.事务:一个或多个更改数据库的扩展 4.like和glob子句: 5.limit 和 offset 6. ...

  10. MySQL数据库——基本操作

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.数据库基本操作 (一).登陆数据库 1.交互登陆 mysql -u root -p 2.免交互登陆 mysql - ...

最新文章

  1. usb打印机命令_Hyper-V与你的虚拟机共享设备、USB设备
  2. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(二十一)NIFI1.7.1安装
  3. Data Lake Analytics: 以SQL方式查询Redis数据
  4. 在虚拟宿主环境中承载 Active Directory 域控制器时需要考虑的事项
  5. 20190911:(leetcode习题)计数质数
  6. Linux自动删除n天前备份
  7. 安卓9去掉搜索栏_android9.0隐藏虚拟按键跟状态栏,除去google搜索栏.
  8. python_scrapy_爬虫
  9. 空间说说html,适合发空间说说的经典心情短语
  10. 【系列二之图像处理系列】波形处理(3)
  11. 在实习的过程中规划自己的未来职业蓝图
  12. 夜神模拟器ADB版本不一致问题
  13. STM32 学习十 Flash下载与调试
  14. 将博客搬至CSDN_拔剑-浆糊的传说_新浪博客
  15. 2019年最具影响力的技术大会 | Elastic首发中国开发者调查报告 ——百格活动
  16. 用不惯VMware?比它更快、更轻的虚拟机,横空出世!
  17. 使用vue开发APICloud软件APP的教程
  18. mt店铺榜+餐饮分类
  19. 使用WICleanup清理Windows Installer 冗余文件
  20. MVC 音乐商店 第 5 部分: 编辑窗体和模板化

热门文章

  1. android intent json,如何从android中的Intent服务中的服务器获取Json响应?
  2. C语言真题考研pdf,中财信息学院C语言程序设计1999年考研真题.pdf
  3. c语言 博客园,C语言l|博客园作业10
  4. linux c select函数返回值,linux c中select使用技巧
  5. 高等数学-第一章 函数 极限 连续
  6. Html meta 标签定义页面元信息 详解
  7. mysql中group_concat函数的使用以及separator的用法
  8. 阶段5 3.微服务项目【学成在线】_day03 CMS页面管理开发_01-自定义查询页面-服务端-Dao...
  9. 小D课堂 - 零基础入门SpringBoot2.X到实战_第4节 Springboot2.0单元测试进阶实战和自定义异常处理_18、SpringBoot测试进阶高级篇之MockMvc讲解...
  10. 阶段3 2.Spring_08.面向切面编程 AOP_10 总结和作业安排