SQL概念
structured query language:结构话查询语言,定义了所有操作关系型数据数据库的规则。每一个数据库操作的方式存在不一样的地方,称为方言
SQL通用语法
1、SQL语句可以单行或多行书写,以分号结尾 2、可使用空格或缩进来增强语句的可读性 3、Mysql数据库的sql语句不区分大小写,关键字建议使用大写 4、有3中注释: 单行注释:-- 注释内容 或 # 注释内容(mysql特有) 多行注释:/注释/
SQL分类
1)DDL(Data Definition language)数据定义语言 用来定义数据库对象:数据库,表,列等。关键字:create、drop、alter等 2)DML(Data Manipulaton language)数据操作语言 用来对数据库中表的数据进行增删改。关键字:insert,delete,update等 3)DQL(Data Query language)数据查询语言 用来查询数据库中表的记录(数据),关键字:select,where等 4)DCL(Data Control language)数据控制语言(了解) 用来定义数据库的访问权限和安全级别,及创建用户。关键字:GRANT,REVOKE等
Mysql 目录结构
1、MySQL安装目录 配置文件 my.ini 2、MySQL数据目录 几个概念: 数据库:文件夹 表:文件 数据
打开mysql: os 命令:d: (进入D盘) cd Program Files\MySQL\MySQL Server 5.5 (进入到Program Files\MySQL\MySQL Server 5.5 文件夹) mysql -uroot -proot (打开MySQL)
DDL:操作数据库、表
操作数据库:CRUD
1、C(create):创建
- 创建数据库:create database 数据库名称;
- 创建数据库,判断不存在,再创建:create database if not exsits 数据库名称;
- 创建数据库,并指定字符集:create database 数据库名称 character set 字符集名;
- 练习:创建database 数据库名称 判断是否存在,并指定字符集 gbk
create database if not exsits db1 character set gbk; 2、R(Retrive):查询 - 查询所有数据库的名称:show databases;
- 查询某个数据库的字符集:查询某个数据库的创建语句:show create database 数据据名称
3、U(update):修改 - 修改数据库的字符集
alter database 数据库名称 character set 字符集名称; 4、D(Delete):删除 *删除数据库:drop database 数据库名称 判断数据库存在,存在再删除:drop database if exists 数据库名称 5、使用数据库 - 查询当前正在使用的数据库名称:select database();
- 使用数据库:use 数据库名称;
操作表
1、C(Create):创建 1)语法: create table 表名( 列名1 数据类型1, 列名2 数据类型2, … 列名n 数据类型n, );
- (1)int:整数类型 age int
- (2)double:小数类型 score double(5,2)
- (3)data:日期 只包含年月日 yyyy-MM-dd
- (4)datatime:日期 包含年月日时分秒 yyyy-MM-dd HH:mm:ss
- (5)timestamp:时间戳类型 年月日时分秒 yyyy-MM-dd HH:mm:ss
如果将来不给这个字段赋值,或赋值null,则默认使用当前的系统时间,来自动赋值 - (6)varchar:字符串 name varchar(20):姓名最大20个字符
eg:创建一个表: create table student( id int, name varchar(32), age int, score double(4,1), birthday date, insert_time timestamp ); use student; – 用student这张表 desc student; – 查询表的结构 create table stu like student; – 复制student表 drop table if exists stu; – 删除stu表 2、R(Retrive):查询
- 查询某个数据库中所有表的名称:show tables
- 查询表结构:desc 表名
3、U(Update):修改
- (1)、修改表名
alter table 表名rename to 新的表名; alter table student rename to stu; - (2)、修改表的字符集
alter table 表名 character set 字符集名称; alter table stu character set utf-8; - (3)、添加一列
alter table 表名 add 列名 数据类型; alter table stu add gender varchar(10); desc stu; - (4)、修改列名称 类型
alter table 表名 change 列名 新列名 新数据类型 alter table stu change gender sex varchar(11); alter table stu modify sex varchar(11); - (5)、删除 列
alter table 表名 drop 列名; alter table stu drop sex; 4、D(Delete):删除
- drop table 表名;
- drop table if exists 表名;
|