MySql数据库学习笔记(1)
MySql数据库
下载地址
https://dev.mysql.com/downloads/mysql/5.1.html#downloads
连接到本机上的MYSQL
mysql -u root -p
创建数据库
命令:create database ;
create database Myschool;查看数据库
命令:show databases;创建表
ERROR 1046 (3D000): No database selected //未选中数据库
Database changed
mysql> use Myschool;
Database changed
mysql> create table subject
-> (SubjectNo int primary key,
-> SubjectName varchar(50),
-> ClassHour int,
-> GreadID int);查看所有表;
mysql> show tables;查看创建表结构
mysql> show create table Subject;删除数据库
命令:drop database
例如:删除名为 xhkdb的数据库
mysql> drop database Myschool;
数据类型:
varchar(5)-->变长;
char(5)-->定长;
Can't connect to MySQL server on localhost \没有启动MySQL服务
创建Student表格
mysql> create table Student
(StudentNo int(4) not null comment'学号',
LoginPwd varchar(20),
StudentName varchar(20) comment'学生姓名',
Sex tinyint(1) comment'性别,取值0或者1',
GradeID int(11) comment '年级编号',
Phone varchar(50) not null comment '联系电话允许为空',
Adress varchar(255) not null comment '地址允许为空',
BornDate datetime comment '出生时间',
Email varchar(50) comment '邮箱账号允许为空',
IdentityCard varchar(18) comment '身份证号码');
SHOW ENGINES
显示存储引擎的状态信息。对于检查一个存储引擎是否被支持,或者对于查看默认引擎是什么,本语句十分有用。
mysql> show engines;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
| MyISAM | YES | MyISAM storage engine | NO | NO | NO |
| CSV | YES | CSV storage engine | NO | NO | NO |
| ARCHIVE | YES | Archive storage engine | NO | NO | NO |
| PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
| FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
MyISAM :节约空间及相应速度
InnoDB:安全性,事务处理及多用户操作数据表
mysql> show variables like 'datadir';
+---------------+---------------------------------------------+
| Variable_name | Value |
+---------------+---------------------------------------------+
| datadir | C:\ProgramData\MySQL\MySQL Server 5.7\Data |
+---------------+---------------------------------------------+
修改表结构:
添加字段
mysql> alter table Student add CollegeMajor varchar(50);
语法:ALTER TABLE table_name ADD field_name field_type;查看表结构:
语法:desc tabl_name;
mysql> describe Student;
或: mysql> desc Student;
+--------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+-------+
| StudentNo | int(4) | NO | | NULL | |
| LoginPwd | varchar(20) | YES | | NULL | |
| StudentName | varchar(20) | YES | | NULL | |
| Sex | tinyint(1) | YES | | NULL | |
| GradeID | int(11) | YES | | NULL | |
| Phone | varchar(50) | NO | | NULL | |
| Adress | varchar(255) | NO | | NULL | |
| BornDate | datetime | YES | | NULL | |
| Email | varchar(50) | YES | | NULL | |
| IdentityCard | varchar(18) | YES | | NULL | |
| CollegeMajor | varchar(50) | YES | | NULL | |
+--------------+--------------+------+-----+---------+-------+修改表名;
mysql> alter table t_test rename tbl_test;修改列名;
mysql> alter table Student change CollegeMajor2 Interest varchar(255);修改列属性;
mysql> alter table Student Modify Adress char(255);删除列;
mysql> alter table Student drop is_deleted;删除表;
mysql> drop table t_test;MySQL数据库管理
DML:数据操作语言,用于操作数据库对象包含的数据
包括:- INSERT ;
- UPDATE ;
DELETE ;
DML
insert
- mysql> insert into Grade(GradeId,GradeName) value(1,'大一');
- mysql> insert into Grade value(2,'大二');
- mysql> insert into Grade value(3,'大三'),(4,'大四');
mysql> insert into Grade(GradeName)
-> select GradeName from Grade ;修改字段为自动增长
mysql> alter table Grade modify GradeID int auto_increment;修改表编码
mysql> alter table Grade charset=utf8;
base 查询:
mysql> select * from Grade;
+---------+-----------+
| GradeID | GradeName |
+---------+-----------+
| 1 | 大一 |
+---------+-----------+
update
mysql> update Grade set GradeName ='二年级' where GradeID=2;
mysql> update Grade set GradeName = '二二级' where GradeID =6 or GradeID = 13;
mysql> insert into Subject(SubjectName,ClassHour,GreadID) value ('高等数学-1',120,1),('高等数学-2',110,2),('高等数学-3',100,3),('高等数学-4',130,4);
mysql> update subject set ClassHour = ClassHour-10 where classhour >110 and GreadID =1;
mysql> select * from subject;
+-----------+-------------+-----------+---------+
| SubjectNo | SubjectName | ClassHour | GreadID |
+-----------+-------------+-----------+---------+
| 1 | 高等数学-1 | 110 | 1 |
| 2 | 高等数学-2 | 110 | 2 |
| 3 | 高等数学-1 | 110 | 1 |
| 4 | 高等数学-2 | 110 | 2 |
| 5 | 高等数学-3 | 100 | 3 |
| 6 | 高等数学-4 | 130 | 4 |
+-----------+-------------+-----------+---------+
ERROR 1093 (HY000): You can't specify target table 'subject' for update in FROM clause
select ClassHour from subject where SubjectNo = 6
update subject set ClassHour =
(select ClassHour from
(select ClassHour from subject
where subjectNO =6) as ch ) //as ch 作为临时表
where SubjectNo =1;
MySql数据库学习笔记(1)的更多相关文章
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- Mysql数据库学习笔记之数据库索引(index)
什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...
- MYSQL数据库学习笔记1
MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...
- MySQL数据库学习笔记<一>
MySQL基本概念以及简单操作 一.MySQL MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系 ...
- MySQL数据库学习笔记(四)----MySQL聚合函数、控制流程函数(含navicat软件的介绍)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(三)----基本的SQL语句
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- mysql 数据库学习笔记一
一.navicat的引入: (第三方可视化的客户端,方便MySQL数据库的管理和维护)安装网址:https://www.navicat.com.cn/ NavicatTM是一套快速.可靠并价格相宜的数 ...
随机推荐
- ImageMagick - 设置透明带 AlphaChannel 的 png 图片的透明度
学习和使用ImageMagick也有几年时间了,其实对 ImageMagick 的了解还仅仅是皮毛吧. 最近在写代码的时候,遇到一个调整透明png图片透明度的问题: 当1张png图片,有些区域是透明的 ...
- JDBC查询MySQL中的表
在数据库test里先创建表school,内容如下 创建接口对象:Statement stmt=con.createStatement(); //创建语句(Statement)ResultSet res ...
- 为什么fork()2次会避免产生僵尸进程
什么是僵尸进程:用fork()创建子进程后,子进程已终止但父进程没有对它进行善后处理,那么子进程的进程描述符就一直保存在内存中,子进程就是僵尸进程. 怎么产生僵尸进程: 1.父进程没有SIGCHLD信 ...
- 9.Django Admin编写
##Admin功能添加 ##效果图 ##添加时间日期 添加新的字段后需要重新数据移值操作 修改models.py auto_now是自定设置日期为当前日期 修改日期:null=True
- win7,win10系统激活工具下载
1.关于激活win10: 工具下载地址:链接:https://pan.baidu.com/s/1ZqYbXnp7P8EhE8m0BvVMBA 密码:gklw 这个工具可以激活office,win10 ...
- 一键开启MacOS HiDPI
完整文件下载:一键开启MacOS HiDPI 引言 作为一个黑苹果用户,追求黑果的体验是当然的,当各个硬件都驱动完善后,要做的就是细节的优化了,毕竟装上是拿来用的,可不能因为体验差苦了自己啊.机器毕竟 ...
- python德国信用评分卡建模(附代码AAA推荐)
欢迎关注博主主页,学习python视频资源,还有大量免费python经典文章 python信用评分卡建模视频系列教程(附代码) 博主录制 https://study.163.com/course/i ...
- flume常见异常汇总以及解决方案
flume常见异常汇总以及解决方案 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 实际生产环境中,我用flume将kafka的数据定期的往hdfs集群中上传数据,也遇到过一系列的坑 ...
- weblogic创建控制台启动脚本以及创建服务器
一.创建控制台脚本 二.创建认证文件 通过上面创建的脚本进行启动的时候,会因为密码问题导致起不来,因为在startWebLogic.sh文件中,没有配置用户名和密码.而且通过上面创建的脚本,启动的时候 ...
- vue报错:/node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js?
vue项目中报这样的错误:./node_modules/babel-loader/lib!./node_modules/vue-loader/lib/selector.js? 大部分是因为文件的路径有 ...