MySQL数据库 | 数据库和数据表的基本操作
第一篇博文,一个小小的纪念仪式^-^
以下正文
一、数据库的基本操作
--数据库的操作 --连接数据库
mysql -uroot -p密码
mysql -uroot -pmysql --退出数据库
exit
quit
ctrl + d --查看所有数据库
show databases; --*显示时间
select now(); --*显示版本
select version(); --创建数据库(建库时如果不指定编码,默认使用latin)
create database 数据库名称 编码方式
create database pysql charset=utf8; --查看新建的数据库(注意数据库名称后不能加编码方式)
show create database pysql; --删除数据库(注意如果有“-”存在,可能会被认为是两个部分,所以可以 `py-1`,“`”是tab上方的点)
drop database 数据库名称
drop database pysql; --使用数据库
--use 数据库名称
use pysql;
--显示Database changed表示使用成功 --查看当前使用的数据库
select database();
二、数据表的基本操作
--数据表的操作 --查看当前数据库中所有的表
show tables; --创建数据表
--auto_increment 自动增长
--not null 不能为空
--primary key 表示主键
--default 设置默认值
--create table 数据表名称 (字段 类型 约束, 字段 约束 类型)
create table students(id int, name varchar(30));
--添加约束(顺序随意)
create table students2(id int primary key not null auto_increment, name varchar (30));
--实际开发中,可以采用换行增加可读性
create table students2(
id int primary key not null auto_increment,
name varchar (30)
); --查看表结构
--desc 表名称
desc students; --建表流程
--创建students数据表(id name age high gender cls_id)
create table students1(
id int unsigned not null auto_increment primary key,
name varchar(20),
age tinyint unsigned default 0,
high decimal(5,2),
gender enum("男","女","保密") default "保密",
cls_id int unsigned
);
--查看表的创建语句【注1】
--show create table 表名;
show create table students; --修改表-添加字段
--alter table 表名 add 列名 类型;
alter table students add birth datetime; --修改表-修改字段:不重命名版(即更改类型/约束)
--alter table 表名 modify 列名 类型及约束;
alter table students modify birth date; --修改表-修改字段:重命名版
--alter table 表名 change 原名 新名 类型及约束;
alter table students change birth birthday date default "2008-01-01"; --默认值可加可不加 --修改表-删除字段
--alter table 表名 drop 列名;
alter table students drop high; --删除数据表(忘记这个命令就好了)
--drop table 表名;
--drop database 数据库名称;
drop table xxx; --增加数据
--要与之前的字段一一对应(注意插入日期时要加引号)
--不然会显示1998对于birthday是一个Incorrect date value,我是改了好几次时间才知道终端帮我做了减法...)
insert into students values (0,"小明", 18, "男", 1, "2000-01-01"); --显示表中所有内容
select * from students;
三:几点说明
(一)注
注1:

1 表名
2 字段 通常用` `括起来
3 指定主键
4 auto_increment=2 说明下次的值为2(auto_increment这个变量的值为2),并不是每次增加2
(二) 关于MySQL
1.输入MySQL命令时,不用担心换行的问题,即命令可以分成多行写
2.命令语句大小写不敏感
3.sql语句需要以分号;结尾
4.出现Query OK 即命令生效;出现Eorror为出现错误
5.int 可以是0~225(unsigned)或-128~127(signed)
6.约束选取的原则:够用就行
7.--在MySQL命令中会以注释形式被理解,所以写到命令中也莫得关系
(三) 本文零碎知识点备忘
1> decimal(5,2) --小数类型,一共5位,其中有两位小数
2> enum("男","女","保密") --枚举类型,之后输入的必须是选项中的一个,设置默认值时 default也要加其中一个
一般工作中对数据库或数据表结构的改动使用较少,主要还是对表中数据的改动(欲知后事如何,且看下篇博文)。
博主是一名行走在大神路上的编程小白[手动滑稽],博文属于学习笔记。欢迎批评、建议、指导
MySQL数据库 | 数据库和数据表的基本操作的更多相关文章
- DF学Mysql(二)——数据表的基本操作
1.创建数据表 先使用“USE <数据库名>”指定在哪个数据库中操作 CREATE TABLE <表名> ( 字段1 数据类型 [列级别约束条件] [默认值], 字段2 数据类 ...
- mysql之创建数据库,创建数据表
写在前面 项目中用到mysql数据库,之前也没用过mysql,今天就学下mysql的常用的语法,发现跟sql server的语法极其相似.用起来还是蛮简单的. 一个例子 1.创建一个名为School的 ...
- MySQL 中的数据库名称、数据表名称、字段名称
如何查询Oracle,Sql Server,MySQL 中的数据库名称.数据表名称.字段名称 分类: Database2012-09-24 22:16 7034人阅读 评论(0) 收藏 举报 数据库s ...
- mysql(三) 数据表的基本操作操作
mysql(三) 数据表的基本操作操作 创建表,曾删改查,主键,外键,基本数据类型. 1. 创建表 create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGIN ...
- ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )
//TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...
- 统计各个数据库的各个数据表的总数,然后写入到excel中
1.最近项目基本进入最后阶段了,然后会统计一下各个数据库的各个数据表的数据量,开始使用的报表工具,report-designer,开源的,研究了两天,发现并不是很好使,最后自己下班回去,晚上思考,想着 ...
- ThinkPHP 数据库操作之数据表模型和基础模型 ( Model )
一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: public function te ...
- 孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数
孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 不同类型 ...
- 孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成
孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天经过反复折腾,最终基本上算 ...
随机推荐
- 我的JAVA环境搭建
每次重装系统后的开发环境搭建,总是会花费大量的时间精力,软件下载安装啦,配置修改啦等等,索性把这些流程记录一下,毕竟时间就是金钱. 软件列表 JDK1.8 IntelliJ IDEA Navicat数 ...
- 2020省选模拟训练1 排列(perm)多项式exp+EGF
这道题真的还是简单的一批..... 我当时要是参加考试的话该多好(凭这一道题就能进前 5 了) 十分显然的指数型生成函数. 令 $f[i]$ 表示有 $i$ 个点的答案. 然后显然有 $f[i]=\s ...
- P3206 [HNOI2010]城市建设 [线段树分治+LCT维护动态MST]
Problem 这题呢 就边权会在某一时刻变掉-众所周知LCT不支持删边的qwq- 所以考虑线段树分治- 直接码一发 如果 R+1 这个时间修改 那就当做 [L,R] 插入了一条边- 然后删的边和加的 ...
- Java基础汇总2019
1.事务的ACID性: (1)原子性:要么做,要么都不做.程序操作执行未成功,则所做的更改会被撤销: (2)一致性:比如转账,a转给b一百元,则a的账户少100,b的账户多100,前后数据要一致: ( ...
- elasticsearch 5.5 query 过程 源码分析
(1)请求 transfer to 任意node 节点 标记为coordinate node server入口函数 transportSearchAction doExecute方法 coordin ...
- mysql远程连接失败的两种解决方法
---恢复内容开始--- (这是转载别人的,因为我觉得很有用,每次都是参考这个的第二种方法解决的,不管你听不听得到,先说声谢谢!也记下来方便大家看看) mysql解决远程不能访问的二种方法,需要的朋友 ...
- “公文流转系统 v1.0”
1.项目需求: 河北金力集团是我省机械加工的龙头企业,主要从事矿山机械制造及各种机械零部件加工.企业有3个厂区,主厂区位于省高新技术开发区,3个分厂分别在保定.邢台和唐山.为增加企业的核心竞争力和加强 ...
- IDEA的Debug模式灰色无法运行
1. 检查本地环境是否配置得当,进入项目右键看项目是否可以正常debug运行 2. 如果不可运行,那么选择File--Project Structrue 3. 修改Src文件,如图然后就可以正常使用 ...
- 简单理解Linux系统的挂载是什么鬼
转载自http://c.biancheng.net/view/2859.html Linux系统中“一切皆文件”,所有文件都放置在以根目录为树根的树形目录结构中.在 Linux 看来,任何硬件设备也都 ...
- Yaf学习过程中遇到的问题小记
一.在多模块开发过程中,先写了后台模块,即一开始默认的Index Module,之后新增Frontend,Wap模块,想要直接把Frontend模块设置成默认模块,然而setDefaultModule ...