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 ...
随机推荐
- SpringBoot Actuator & SpringBoot Admin
SpringBoot Actuator提供了很多监控和管理你的spring boot应用的HTTP或者JMX端点,并且你可以有选择地开启和关闭部分功能. 当你的spring boot应用中引入依赖之后 ...
- 301. Remove Invalid Parentheses去除不符合匹配规则的括号
[抄题]: Remove the minimum number of invalid parentheses in order to make the input string valid. Retu ...
- Android代码速查,写给新手的朋友们[转]
原文地址:http://www.open-open.com/lib/view/open1397286499090.html 0 android 创建按钮 Button button = new But ...
- p2598 [ZJOI2009]狼和羊的故事
传送门 分析 起点向狼连边,羊向终点连边,边权均为inf 每个点向它四联通的点连边权萎1的边 跑最小割即可 代码 #include<iostream> #include<cstdio ...
- C#中 Thread,Task,Async/Await,IAsyncResult 的那些事儿![转载]
说起异步,Thread,Task,async/await,IAsyncResult 这些东西肯定是绕不开的,今天就来依次聊聊他们 1.线程(Thread) 多线程的意义在于一个应用程序中,有多个执行部 ...
- 关于解决百度sitemap1.0一直提示校验中问题
实际原因是php设置问题,各个版本对应的设置有些不一样. php版本改成就好了. 修复方法:在插件里找到插件:\baidusubmit\inc.找到sitemap.php,查找curl_setopt( ...
- Memcache+Cookie替代Session解决方案(MVC版)
阅读目录 开始 通过IHttpModule注册过滤管道方式 通过BaseController 关于滑动过期 两种方式 回到顶部 通过IHttpModule注册过滤管道方式 具体实现如下: 声明一个类C ...
- Discovering Gold LightOJ - 1030 (概率dp)
You are in a cave, a long cave! The cave can be represented by a 1 x N grid. Each cell of the cave c ...
- thinkjs 框架图
- javascript高级程序设计读书笔记----引用类型
Array类型. ECMAScript数组的每一项可以保存任何类型的数据. 数组大小是可以动态调整的. 创建数组第一种基本方式方式: 使用Array构造函数 var colors = new ...