1.mysql彻底卸载
彻底卸载需要注意注册表和关闭服务,同时还要卸载programdata当中相关文件。
2.mysql无法在cmd中运行
在环境变量中的系统变量中设置path变量,地址为mysql的bin目录。
3.登陆命令
mysql -uroot -p
mysql --port=3309 --host=127.0.0.1 --user=root --password=hxj980417
4.mysql -u root -p 始终报ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
解决方案:mysql -u root -P 3309 -h localhost -p;P表示端口,h为host.
5.推出
exit,quit
6.cmd去ping数据库端口
telnet 127.0.0.1 3309
7.mysql的目录结构
8.sql=structured query language(结构化查询语言)
定义了操作所有关系型数据库的规则。
9.sql语言不区分大小写,关键字建议大写;
10.sql注释语句格式:-- "注释语句";多行注释:/* ...*/;#
11.四种语言的用途
12.crud的四种用法
1.create/retrieve/update/delete
查:retrieve:
1.创建一个字符集为utf-8的databases:create database 数据库名 CHARACTER SET utf8 COLLATE utf8_general_ci;
2.查看是否创建成功:show database 数据库名。
3.创建数据库:create databse if not exists 数据库名;
4.修改数据库字符集:alter database 数据库名 character set 字符集名称;
5.删除数据库名称:drop database 数据库名称;/drop database if exists 数据库名称;
6.查询正在使用的数据库名称:select database ();
7.使用数据库:use 数据库名称;
8.查询某个数据库表名称:show tables;
9.desc 表名:查看表结构;
创建:create:1.创建表:
1.语法:
create table 表名{
列名1 数据类型1,
列名2 数据类型2,
....
列名n 数据类型n
};
tips:最后一列不要加,.
2.数据类型:1.timestamp时间戳类型:自动赋值系统时间。
2.varchar:字符串类型
3.创建副本:create table 表名 like 原表名;
update:改:alter table student rename stu;
2.show create table 表名;//显示表
3.修改列名称:alter table 表名 change 列名 新列名 新数据类型;alter table 表名 modify 新类名 新数据类型;
4.增加列名称:alter table 表名 add 新列名 新数据类型;
DML语言:增删改表中的数据
1.insert into 表名 (列名)values (具体值);注意:列名和值要一一对应;表名后不定义列名则默认给所有列添加值。
DQL语言:*查询表中的数据:
1.select*from 表名;
*删除表中的数据:
2.delete from 表名[where 条件] --不推荐使用
truncate table 表名;(推荐使用)
*修改数据:update stu set 列名=值 where 条件
注意:如果不加条件将会把数据全部修改。
去除重复的结果集:select distinct address from 表名;
计算总分并修改总分字段:SELECT NAME,math,english,math+IFNULL(english,0) total FROM student3;
*基础查询补充:
*条件查询:1.<>与=皆为判断是否相等。
2.查询:SELECT *FROM student3 WHERE age>=20;
SELECT *FROM student3 WHERE age BETWEEN 20 AND 30; -- 查询20至30之间的学生。
SELECT * FROM student3 WHERE age=18 OR age=22 OR age=20;
SELECT * FROM student3 WHERE age IN(18,22,25); -- 查询三个年龄的人。
null值不能使用=、(!=)来判断,应该使用关键字is。
*模糊查询(关键字like):实例:SELECT * FROM student3 WHERE NAME LIKE '马%'; -- 姓马
SELECT * FROM student3 WHERE NAME LIKE '_化%'; -- 查询第二个字为化的数据。
补充: