mysql基础操作学习笔记(一)
1前期准备:
SQL语言包涵以下4个部分:
(1)数据定义语言(DDL):包括DROP, CREATE, ALTER等语句
(2)数据操纵语言(DML):包括INSERT, UPDATE, DELETE等语句
(3)数据查询语言(DQL): 包括SELECT等语句
(4)数据控制语言(DCL): 包括GRANT, REVOKE, COMMIT, ROLLBACK等语句
1.1登录mysql
安装mysql后有两种方式登录数据库:
(1)从Windows命令行登录
a. 开始-》运行-》cmd ,打开DOS窗口,输入以下命令并按Enter键确认,如图:
(当前mysql安装目录的bin目录下)


b.通过如下命令连接MySQL数据库,命令如下:
mysql -h hostname -u usename -p
其中mysql为命令,-h 后面的参数是服务器的主机地址,这边客户端和服务器在同一台机器上,所以输入localhost或者IP地址为127.0.0.1, -u后面跟登录数据库的用户名称,在这边为root, -p后面是用户登录密码。
c.输入如下命令:
mysql -h localhost -u root -p
再输入密码,即可登录,如图:

(2)使用MySQL Command Line Client 登录
开始-》所以程序 ,找到MySQL 5.7 Command Line Client, 输入密码,如图:

2数据库基本操作:
2.1数据库定义语言(DDL)(一)
在mysql中,最基础的是数据表,对表的操作包括:创建数据表、查看数据表以及如同excel的操作修改表名、修改属性名及顺序等等。
2.1.1 数据库定义语言主要有:CREATE, DROP, ALTER, 下面也不说废话了,直接上代码:
a. 定义一个数据库:
CREATE DATABASE database_name; (database_name为要创建的数据库名称)
b. 删除数据库:
DROP DATABASE database_name;
c.创建表:
CREATE TABLE <表名>
(
字段名1,数据类型[列级别约束条件] [默认值],
字段名1,数据类型[列级别约束条件] [默认值],
...
[表级别约束条件]
);
2.1.2约束
一般来说,对于表来说有些列需要唯一的标识表中的一行记录(也就是实体完整性);以及两个表间的联系,如学生表(学号,专业号,课程号,课程)和课程表(课程号,课程,老师)之间,学生表中的课程号和课程表中的课程号之间的联系是,学生表中的课程号必须是课程表里面的值,要不然就是空值(参照完整性);或者表中的有些列中的值不能为空,或者必须不同等要求,我们都有相应的关键字来表示:PRIMARY KEY, FOREIGN KEY, NOT NULL, UNIQUE.
a.主键约束:
PRIMARY KEY [字段1,字段2....]
b.外键约束:
[CONSTRAINT <外键名>] FOREIGN KEY 字段名1...
REFERENCES <主表名> 主键名1...
c.非空约束:
字段名 数据类型 NOT NULL
d.唯一性约束:
字段名 数据类型 UNIQUE
e.默认约束:
字段名 数据类型 DEFAULT 默认值
f.属性自动增加:
字段名 数据类型 AUTO_INCREMENT
2.1.3查看表的结构
建好数据表之后我们可以查看数据表结构,以确认表的定义十分正确:
a.查看表结构:
DESC 表名;
b.查看表详细结构:
SHOW CREATE TABLE <表名\G>;
2.1.4下面是对表的具体操作:
a.修改表名:
ALTER TABLE <旧表名> RENAME <新表名>;
b.修改字段的数据类型:
ALTER TABLE <表名> MODIFY <字段名> <数据类型>
c.修改字段名:
ALTER TABLE <表名> CHANCE <旧字段名> <新字段名> <新数据类型>;
d.添加字段:
ALTER TABLE <表名> ADD <新字段名> <数据类型>
[约束条件] [FIRST| AFTER 已存在字段名];
e.删除字段:
ALTER TABLE <表名> DROP <字段名>;
f.修改字段的排列位置:
ALTER TABLE <表名> MODIFY <字段1> <数据类型> FIRST|AFTER <字段2>;
g.删除表:
删除没有被关联的表:
DROP TABLE [IF EXISTS] 表1,表2,...,表n;
删除被其他表关联的主表:
先删除从表的外键约束:
ALTER TABLE <从表名> DROP FOREIGN KEY <外键名>;
删除主表:
DROP TABLE 表名 ;
mysql基础操作学习笔记(一)的更多相关文章
- mysql基础操作学习笔记(2)----索引
为什么要创建索引? 在此本人也带着相同的疑问,能够解释的仅仅是:为了减少数据库查询时所需要的速度.如果正常查询和索引查询所需时间相差很多倍时我们自然是需要索引的了. 想要知道结果,只能等我学得 ...
- Mysql高级操作学习笔记:索引结构、树的区别、索引优缺点、创建索引原则(我们对哪种数据创建索引)、索引分类、Sql性能分析、索引使用、索引失效、索引设计原则
Mysql高级操作 索引概述: 索引是高效获取数据的数据结构 索引结构: B+Tree() Hash(不支持范围查询,精准匹配效率极高) 树的区别: 二叉树:可能产生不平衡,顺序数据可能会出现链表结构 ...
- MySQL基础操作&&常用的SQL技巧&&SQL语句优化
基础操作 一:MySQL基础操作 1:MySQL表复制 复制表结构 + 复制表数据 create table t3 like t ...
- MYSQL 基础操作
1.MySQL基础操作 一:MySQL基础操作 1:MySQL表复制 复制表结构 + 复制表数据 create table t3 like t1; --创建一个和t1一样的表,用like(表结构也一样 ...
- MYSQL视图的学习笔记
MYSQL视图的学习笔记,学至Tarena金牌讲师,金色晨曦科技公司技术总监沙利穆 课程笔记的综合. 视图及图形化工具 1. 视图的定义 视图就是从一个或多个表中,导出来的表,是一个虚 ...
- mySQl数据库的学习笔记
mySQl数据库的学习笔记... ------------------ Dos命令--先在记事本中写.然后再粘贴到Dos中去 -------------------------------- mySQ ...
- Objective-c基础知识学习笔记
Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...
- MYSQL基础操作
MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...
- 【MySQL】MySQL基础操作语句
mysql基础操作语句,包括数据库的增.删.切换,以及表的增.删.改.查.复制. 创建数据库 mysql> create database tem; 使用数据库 mysql> use te ...
随机推荐
- Ros学习——Movebase源码解读
1.总体框架 goal global planner-------global_costmap<——map server amcl local planner---------local_cos ...
- 开启Windows8里面的Hyper-V虚拟机功能
首先了解下什么是Hyper-V?也就是虚拟化技术,允许终端用户在同一台机器上运行多个操作系统,支持32位和64位系统,可以直接在Windows 8上创建自己的虚拟机.开启Hyper-V虚拟机需要更多的 ...
- yii2.0 报错Cookievalidationkey Must Be Configured With A Secret Key
'components' => [ 'request' => [ // !!! insert a secret key in the following (if it is empty) ...
- redis 面试题2
使用过Redis分布式锁么,它是什么回事? 先拿setnx来争抢锁,抢到之后,再用expire给锁加一个过期时间防止锁忘记了释放. 这时候对方会告诉你说你回答得不错,然后接着问如果在setnx之后执行 ...
- RedHat 6 下配置网卡IP地址,Virtual Linux下配置网卡IP
经常用到,自己Mark一下,顺带给需要的人参考. 1.配置文件修改 $ vi /etc/sysconfig/network-scripts/ifcfg-eth0 内容: DEVICE="et ...
- png 深度图像 转为 点云(opencv2)
https://github.com/kruglov-dmitry/pnd2pcd_batch
- PHP发红包程序限制红包的大小
我们先来分析下规律. 设定总金额为10元,有N个人随机领取: N=1 第一个 则红包金额=X元: N=2 第二个 为保证第二个红包可以正常发出,第一个红包金额=0.01至9.99之间的某个随机数. 第 ...
- SQL虚拟数字辅助表
虚拟数字辅助表是一个整数序列,可以用来完成多种不同的任务,如生成日期跟时间值序列,及分裂值列表.要用查询逻辑产生一个大的整数序列,可以使用交叉连接(cross join). 交叉联接(cross jo ...
- 前端实用软件: Markdown工具之---Typora实用技巧(总结)
Typora是一款超简洁的markdown编辑器,具有如下特点: 完全免费,目前已支持中文 跨平台,支持windows,mac,linux 支持数学公式输入,图片插入 极其简洁,无多余功能 界面所见即 ...
- 在word上写博客直接发到CSDN
目前大部分的博客作者在写博客这件事情上都会遇到以下3个痛点:1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.2.发布到博客或公众号平台 ...