MySQL起航
以前学php的时候用过MySQL,但是都没有认真地学习,只会在php代码中用几条极其简单SQL语句,以为MySQL就这么点用法,当时还在嘲笑学长们为什么会觉得MySQL难学,真是太尴尬了。好在开了数据库这门课程,让我对数据库产生了新的认识,特别是我们老师讲理论基础的时候讲得特别好,让我觉得建成一个好的数据库真的很难,而使用SQL语句相对来说比较简单,主要是明白原理之后用SQL语句实现而已,最难的还是理解的那一步。
下面的理论课上完之后,第一次上机操作的笔记,浅显易懂,没有一点技术含量,不过用来复习还是不多的。
用的是命令行操作,而非图像化界面。
DOS界面:
\c //终止当前执行操作
↑或者↓切换操作语句
1、创建表
create database [if not exists] db_name;
示例:
mysql> create database gl;
Query OK, 1 row affected (0.00 sec)
2、查看数据库
show databases;
show tables;//显示表
*database,table用复数,分号结尾
示例:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| gbook |
| gl |
| mysql |
| performance_schema |
| test |
+--------------------+
6 rows in set (0.00 sec)
3、选择数据库
use db_name;
*结尾可不加分号
示例:
mysql> use gl;
Database changed
4、创建表
ctreate table table_name(.....);
示例:
mysql> create table [if not exists] Info(
-> sno char(6) not null,
-> sname char(8) not null
-> )engine=innodb;
Query OK, 0 rows affected (0.14 sec)
[]括起来的部分可省略
*用逗号分隔字段,最后一个字段后面不用
*char(6) 表示6个长度的字符(非汉字)
*engine=innodb;表示存储引擎,支持事务处理,速度较慢
5、查看表结构
describe Info;
*describe 用于查看表的结构,可省略为desc
示例:
mysql> desc info;
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| sno | char(6) | NO | | NULL | |
| sname | char(8) | NO | | NULL | |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.01 sec)
6、插入数据
insert into info values (111,'aaa'),(123,'bbb');
insert into info (sno,sname) values (333,'ccc'),(444,'ddd');
7、查看表内容
select * from Info;
示例:
mysql> select * from info;
+--------+-------+
| sno | sname |
+--------+-------+
| 666666 | abcd |
| 111 | aaa |
| 123 | bbb |
| 333 | ccc |
| 444 | ddd |
+--------+-------+
5 rows in set (0.00 sec)
8、修改数据库
mysql> alter database gl
-> default character set gb2312
-> default collate gb2312_chinese_ci;
Query OK, 1 row affected (0.00 sec)
9、删除数据库/表
drop database db_name;
drop table table_name;
示例:
mysql> create database xxx;
Query OK, 1 row affected (0.02 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| gbook |
| gl |
| mysql |
| performance_schema |
| test |
| xxx |
+--------------------+
7 rows in set (0.01 sec)
mysql> drop database xxx;
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| gbook |
| gl |
| mysql |
| performance_schema |
| test |
+--------------------+
6 rows in set (0.00 sec)
这里介绍一个在DOS界面的几个小技巧
因为SQL命令在DOC界面数据命令比较麻烦,毕竟大家都用惯了各种各样的编辑工具(记事本,notepad+,sublime text,editplus...),在DOS还真不习惯,既不会复制粘贴,又不好区分中英标点符号。请参考下面两个技巧:
1、大家可以继续用编辑工具(不能用office word)编写SQL语句,然后在数据库DOS界面单击鼠标右键->‘编辑’->‘粘贴’,不能用ctrl+v,不然你会发现出现了^v。
2、从DOS界面复制到文本中。在DOS界面,单击右键->标记->选定区域->enter(回车)->记事本复制,在DOS界面不要用ctrl+c,否则会失败。
MySQL起航的更多相关文章
- MySQL学习基础 之 起航篇
MySQL 学习来自慕课网<与MySQL的零距离接触> MySQL是一个开源的关系型数据库管理系统 MySQL分为社区版和企业版 MySQL登录和退出相关的命令 参数 描述 -D,--da ...
- Linux实战教学笔记20:初级阶段结束,中级阶段起航
第二十节 第一阶段结束第二阶段起航 标签(空格分隔): Linux实战教学笔记-陈思齐 一,承上 Linux实战教学笔记的基础核心能力阶段也就是第一阶段到此也就告一段落了.如果同学们能基本全都掌握,再 ...
- 【Mysql】索引简介
本文口味:番茄炒蛋,预计阅读:10分钟. 博客又停更了两个月,在这期间,对人生和世界多了许多思考.在人生的不同阶段,会对生活和世界有着不一样的认知,而认知的改变也会直接反应在行为模式之中. 对于生活的 ...
- Hadoop 中利用 mapreduce 读写 mysql 数据
Hadoop 中利用 mapreduce 读写 mysql 数据 有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...
- mysql每秒最多能插入多少条数据 ? 死磕性能压测
前段时间搞优化,最后瓶颈发现都在数据库单点上. 问DBA,给我的写入答案是在1W(机械硬盘)左右. 联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高(SSD硬盘) 但这东西感 ...
- LINUX篇,设置MYSQL远程访问实用版
每次设置root和远程访问都容易出现问题, 总结了个通用方法, 关键在于实用 step1: # mysql -u root mysql mysql> Grant all privileges o ...
- nodejs进阶(6)—连接MySQL数据库
1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...
- MySQL高级知识- MySQL的架构介绍
[TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...
- 闰秒导致MySQL服务器的CPU sys过高
今天,有个哥们碰到一个问题,他有一个从库,只要是启动MySQL,CPU使用率就非常高,其中sys占比也比较高,具体可见下图. 注意:他的生产环境是物理机,单个CPU,4个Core. 于是,他抓取了CP ...
随机推荐
- selenium操作滚动条方法
/*** 滚动条滚到最下方,和滚到指定位置*/@Test(priority =1 ) public void scrollingToBottomo(){ //使用JavaScri ...
- android 事件监听
步骤: 1.获取代表控件对象. 2.定义一个类,实现监听接口. 3.生成监听器对象. 4.为控件绑定监听器对象. XML <LinearLayout xmlns:android="ht ...
- ggplot2.multiplot:将多个图形使用GGPLOT2在同一页上
一页多图 介绍 ggplot2.multiplot是一个易于使用的功能,将多个图形在同一页面上使用R统计软件和GGPLOT2绘图方法.这个功能是从easyGgplot2包. 安装并加载easyGgpl ...
- 关于js执行顺序
http://www.cnblogs.com/sanshi/archive/2011/02/28/1967367.html http://mtnt2008.iteye.com/blog/701981 ...
- 解决T400\T500\W500等安装win10驱动后黑屏问题
T400.W500.T500等机型有双显卡的机型,在安装WIn10后会在驱动后黑屏,但可见启动画面: 原因:没有对应的双显卡驱动程序,导致系统无法正确识别显卡: 解决方法:开机按F1进入Bios,在显 ...
- 学的一点点ps
从C语言的代码中解脱开始学ps,看到色彩鲜明的东西,心里只有那么爽.哈哈.只学习3天,虽然只是一些皮毛,可还是学到了一些以前不知道的东西.让我对ps多了很多兴趣,决定以后要自学更多的ps技能.要给图片 ...
- 一些常用的html/CSS效果---小技巧
我常用的重置样式表reset.css /*===============基础信息================*/ *{border: 0;padding: 0;margin: 0;} table ...
- Java注释@Override
@Override指定方法覆载.它可以强制一个子类必须覆盖父类的方法. package ch14; /** * Created by Jiqing on 2016/12/27. */ public c ...
- TCP/IP协议学习(二) LWIP用户自定义配置文件解析
LWIP协议支持用户配置,可以通过用户裁剪实现最优化配置,LWIP默认包含opts.h作为系统默认配置,不过通过添加lwipopts.h文件并包含在opts.h头文件之前就可以对lwip进行用户裁剪, ...
- React Native 文本输入
TextInput是一个允许用户输入文本的基础组件.它有一个名为onChangeText的属性,此属性接受一个函数,而此函数会在文本变化时被调用.另外还有一个名为onSubmitEditing的属性, ...