MySQL的知识点总结(一)
2015-09-18 20:58
766 查看
前言:
一直没有把学习笔记写成网络日志的习惯,一是觉得不大方便;二是觉得查找起来没有纸质的手感(女生的特质吧)。但是呢,近期要准备校招,为了总结大学期间专业课的学习内容和自学的一些知识,所以要开始写网络笔记了。由于个人技术有限,若有错误的地方,请大家指正。
一、关于MySQL数据库的操作
创建、修改、删除数据库
IF NOT EXISTS:在创建数据库前进行判断,只有该数据库目前尚不存在时才执行;在删除数据库的时候,避免删除不存在的数据库时出现MySQL错误信息
二、MySQL表操作
使用数据库之前先执行USE命令。
创建、修改、删除表
auto_increment:设置自增属性,只有整形列才能设置此属性,顺序从1开始。
定义外码时,数据类型和长度必须一样;参照的属性必须是主码。
当一个表中有多个属性作为主码时,必须在字段定义完成后定义主码。
三、表记录的操作
插入、修改、删除记录
向表中插入全新的记录用INSERT语句
替换旧记录用REPLACE语句,可以在插入数据之前将与新记录冲突(如:主键的唯一性)的旧记录删除,从而使新记录能够替换旧记录,正常插入。
修改表记录用UPDATE语句,可以用来修改一个表,也可以用来修改多个表
删除表记录用DELETE语句(还可以用TRANCATE TABLE语句,不过,我好像没用过~)
btw:今天做数据库的题目时,有个题目是查看MySQL表结构的语句,当时只想起decribe table_name;其实总共有三种方法:
describe table_name;
desc table_name; //这里的desc就是describe的简写啦
show create table table_name; //显示创建一个表的create table语句(这个方法好像真没用过,截图如下)
![](http://images2015.cnblogs.com/blog/731099/201509/731099-20150918205528336-1137866720.jpg)
一直没有把学习笔记写成网络日志的习惯,一是觉得不大方便;二是觉得查找起来没有纸质的手感(女生的特质吧)。但是呢,近期要准备校招,为了总结大学期间专业课的学习内容和自学的一些知识,所以要开始写网络笔记了。由于个人技术有限,若有错误的地方,请大家指正。
一、关于MySQL数据库的操作
创建、修改、删除数据库
create database if not exists test; //创建一个名为test的数据库 use test; //使用USE命令指定当前数据库 alter database test //修改数据库test的默认字符集和校对规则 default character set gbk default collate gb2312_chinese_ci; drop database if exists test; //删除数据库test
IF NOT EXISTS:在创建数据库前进行判断,只有该数据库目前尚不存在时才执行;在删除数据库的时候,避免删除不存在的数据库时出现MySQL错误信息
二、MySQL表操作
使用数据库之前先执行USE命令。
创建、修改、删除表
show tables; //该命令可以查看当前数据库中有哪些表 create table student //创建一个名字为student的表 ( 学号 char(6) not null primary key, 姓名 char(8) not null, 性别 tinyint(1) not null default 1, 出生日期 date not null, 照片 blob null, 备注 text null );
auto_increment:设置自增属性,只有整形列才能设置此属性,顺序从1开始。
定义外码时,数据类型和长度必须一样;参照的属性必须是主码。
当一个表中有多个属性作为主码时,必须在字段定义完成后定义主码。
//alter table用于更改原有表的结构 alter table student add 毕业院校 varchar not null after 姓名, //增加毕业院校这一列在姓名的后面 drop column 照片; //删除照片这一列 rename table student to stu; //将student表名更改为stu drop table if exists stu; //删除表stu
三、表记录的操作
插入、修改、删除记录
向表中插入全新的记录用INSERT语句
替换旧记录用REPLACE语句,可以在插入数据之前将与新记录冲突(如:主键的唯一性)的旧记录删除,从而使新记录能够替换旧记录,正常插入。
修改表记录用UPDATE语句,可以用来修改一个表,也可以用来修改多个表
删除表记录用DELETE语句(还可以用TRANCATE TABLE语句,不过,我好像没用过~)
use test insert into student values('081101','王林','山东工商学院',1,'1993-02-08');
replace into student values('081101','张三','武汉大学',0,'1992-01-12');
update student set 总学分 = 总学分 +10; //将student表中的所有学生的总学分增加10 update user,vip //同时对表user和表vip记录进行修改 set user.password='111',vip.password='222' where user.id=vip.id;
use test delete from student //删除test数据库里表student中学分小于60的学生记录 where 总学分<60;
btw:今天做数据库的题目时,有个题目是查看MySQL表结构的语句,当时只想起decribe table_name;其实总共有三种方法:
describe table_name;
desc table_name; //这里的desc就是describe的简写啦
show create table table_name; //显示创建一个表的create table语句(这个方法好像真没用过,截图如下)
![](http://images2015.cnblogs.com/blog/731099/201509/731099-20150918205528336-1137866720.jpg)
![](http://images2015.cnblogs.com/blog/731099/201509/731099-20150918205538773-994609261.jpg)
相关文章推荐
- Mysql 查看具体行排名
- mysql 分区 与分表
- Mac OS X Yosemite 上安装 MySql 5.6.26的几个坑
- MySQL必知必会笔记(六)存储过程 游标 触发器
- WAMP的MySQL 笔记
- mysql 去除空格
- SQL授权语句(MySQL基本语句)
- 数据库帮助类 MySqliteHelper
- MySQL中将.frm,.myd,.myi文件导入数据库
- MySQL:远程访问权限,is not allowed to connect to this MySQL server
- MYSQL函数group_concat的使用
- MYSQL查询优化:管理员的优化措施
- MYSQL查询优化:调度和锁定
- MYSQL查询优化:数据类型与效率
- MYSQL查询优化:使用索引
- MYSQL查询优化:Limit
- MYSQL查询优化(二)
- MYSQL查询优化(一)
- MySQL5.0不能启动服务及无法找到配置的解决方法今天启动Mysql时,无法启动服务,也有很长一
- mysql报错:could not find settings Either the server service or the configuration file could not be fou