第一篇博文,一个小小的纪念仪式^-^

以下正文

一、数据库的基本操作

--数据库的操作

  --连接数据库
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数据库 | 数据库和数据表的基本操作的更多相关文章

  1. DF学Mysql(二)——数据表的基本操作

    1.创建数据表 先使用“USE <数据库名>”指定在哪个数据库中操作 CREATE TABLE <表名> ( 字段1 数据类型 [列级别约束条件] [默认值], 字段2 数据类 ...

  2. mysql之创建数据库,创建数据表

    写在前面 项目中用到mysql数据库,之前也没用过mysql,今天就学下mysql的常用的语法,发现跟sql server的语法极其相似.用起来还是蛮简单的. 一个例子 1.创建一个名为School的 ...

  3. MySQL 中的数据库名称、数据表名称、字段名称

    如何查询Oracle,Sql Server,MySQL 中的数据库名称.数据表名称.字段名称 分类: Database2012-09-24 22:16 7034人阅读 评论(0) 收藏 举报 数据库s ...

  4. mysql(三) 数据表的基本操作操作

    mysql(三) 数据表的基本操作操作 创建表,曾删改查,主键,外键,基本数据类型. 1. 创建表 create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGIN ...

  5. ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )

    //TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...

  6. 统计各个数据库的各个数据表的总数,然后写入到excel中

    1.最近项目基本进入最后阶段了,然后会统计一下各个数据库的各个数据表的数据量,开始使用的报表工具,report-designer,开源的,研究了两天,发现并不是很好使,最后自己下班回去,晚上思考,想着 ...

  7. ThinkPHP 数据库操作之数据表模型和基础模型 ( Model )

    一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: public function te ...

  8. 孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数

    孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 不同类型 ...

  9. 孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成

    孤荷凌寒自学python第四十八天通用同一数据库中复制数据表函数最终完成 (完整学习过程屏幕记录视频地址在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 今天经过反复折腾,最终基本上算 ...

随机推荐

  1. ESXI | ESXI6.7如何在网页端添加用户并且赋予不同的权限

    一.首先添加一个用户 管理---用户---安全和用户 添加的新用户会显示在下面 二.给添加上的用户赋予对应权限(我这里演示赋予的是只读权限) 主机---操作---权限 三.测试登录 当用只赋予了只读权 ...

  2. thinkphp 5.0 后台数据修改

    html代码 <table class="easyui-datagrid" data-options="singleSelect:true,collapsible: ...

  3. gulp常用插件之gulp-notify使用

    更多gulp常用插件使用请访问:gulp常用插件汇总 gulp-notify这是一款gulp通知插件. 更多使用文档请点击访问gulp-notify工具官网. 安装 一键安装不多解释 npm inst ...

  4. python的for循环的神奇之处

    python的for循环太神奇了: 你可以编写这样的语句: for i in range(10) : j= i**2 print(j) 你也可以编写这样的语句: with open('/path/to ...

  5. 按钮控制彩灯实验 CSU - 1770 树状数组 差分变单点修改

    #include<iostream> #include<algorithm> #include<cstring> using namespace std; ; in ...

  6. MST Unification CodeForces - 1108F

    #include<iostream> #include<cstring> #include<algorithm> using namespace std; ; in ...

  7. C++野指针的存在方式和误区

    1. char* x;这样的一定是野指针,指针声明时要直接初始化!或者置null也行! 2. int main() { char *x=new char; delete x; cout<< ...

  8. Ueditor1.4.3.3 asp UTF-8版文件缺失修改方法

    前几天在做一个项目中需要用富文本编辑器,最终选定用Ueditor编辑器,从官网下载源码(http://ueditor.baidu.com/website/download.html),按照文档创建de ...

  9. Uva 1609 Feel Good

    题面:给出长度为n的数列,然后算出其区间和乘区间最小数所能得到的最大值,并且输出区间 样例输入: 6 3 1 6 4 5 2 样例输出: 60 3 5 原题链接:https://vjudge.net/ ...

  10. 2017-9-15Opencv 杂

    Mat::at()的具体含义.指的是三通道.(0),(1),(2)分别表示BGR: Vector<Mat>结构的使用.将Mat类型的数据转化成了具有多个单通道的容器? 灰度图的具体含义.和 ...