江门网站设计价格,枞阳做网站的,福州市城乡建设发展总公司网站,网站推广 2015谷歌SQL语句 一.数据库的基础1.1 什么是数据库1.2 基本使用1.2.1 连接服务器1.2.2 使用案例 1.2 SQL分类 二.库的操作2.1 创建数据库2.2 创建数据库示例2.3 字符集和校验规则2.3.1 查看系统默认字符集以及校验规则2.3.2查看数据库支持的字符集2.3.3查看数据库支持的字符集校验规则2… SQL语句 一.数据库的基础1.1 什么是数据库1.2 基本使用1.2.1 连接服务器1.2.2 使用案例 1.2 SQL分类 二.库的操作2.1 创建数据库2.2 创建数据库示例2.3 字符集和校验规则2.3.1 查看系统默认字符集以及校验规则2.3.2查看数据库支持的字符集2.3.3查看数据库支持的字符集校验规则2.3.4 校验规则对数据库的影响 2.4 操纵数据库2.4.1 查看数据库2.4.2 显示创建语句示例 2.4.3 修改数据库2.4.4 数据库删除2.4.5 查看连接情况 三.表的操作3.1 创建表3.2 创建表案例3.3 查看表结构3.3 修改表3.4删除表 一.数据库的基础
1.1 什么是数据库
文件保存数据有以下几个缺点
文件的安全性问题文件不利于数据查询和管理文件不利于存储海量数据文件在程序中控制不方便
数据库存储介质
磁盘内存 为了解决上述问题专家们设计出更加利于管理数据的东西——数据库它能更有效的管理数据。 1.2 基本使用
1.2.1 连接服务器
输入
mysql -h 127.0.0.1 -P 3306 -u root -p输出
Enter password: ****
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.21-log MySQL Community Server (GPL)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type help; or \h for help. Type \c to clear the current input statement.
mysql注意如果没有写 -h 127.0.0.1默认是连接本地如果没有写 -P 3306 默认是连接3306端口 1.2.2 使用案例
创建数据库
create database helloword1;则表示创建成功
使用数据库
use helloword1;创建数据库表
create table student(
id int, //名字 类型
name varchar(32),
gender varchar(2)
);表中插入数据
insert into student (id, name, gender) values (1, 张三, 男);
insert into student (id, name, gender) values (2, 李四, 女);
insert into student (id, name, gender) values (3, 王五, 男);表中查询数据
select * from student;1.2 SQL分类
DDL【data definition language】 数据定义语言用来维护存储数据的结构代表指令: create, drop, alterDML【data manipulation language】 数据操纵语言用来对数据进行操作 代表指令 insertdeleteupdate DML中又单独分了一个DQL数据查询语言代表指令 select DCL【Data Control Language】 数据控制语言主要负责权限管理和事务 代表指令 grantrevokecommit
二.库的操作
2.1 创建数据库
语法 CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,create_specification] ...] create_specification: [DEFAULT] CHARACTER SET charset_name [DEFAULT] COLLATE collation_name 说明
大写的表示关键字[] 是可选项CHARACTER SET: 指定数据库采用的字符集COLLATE: 指定数据库字符集的校验规则
2.2 创建数据库示例
创建名为zy1的数据库
create database zy1;当我们创建数据库没有指定字符集和校验规则时系统使用默认字符集utf8校验规则是utf8_ general_ ci 创建一个使用utf8字符集的 zy2 数据库
create database zy2 charsetutf8;创建一个使用utf字符集并带校对规则的 zy3 数据库
create database zy3 charsetutf8 collate utf8_general_ci;2.3 字符集和校验规则
2.3.1 查看系统默认字符集以及校验规则
show variables like character_set_database;
show variables like collation_database;2.3.2查看数据库支持的字符集
show charset;2.3.3查看数据库支持的字符集校验规则
show collation;字符集主要是控制用什么语言。比如utf8就可以使用中文。 2.3.4 校验规则对数据库的影响
不区分大小写
创建一个数据库校验规则使用utf8-general——ci
create database test1 collate utf8_general_ci;use test1;create table person(name varchar(20));insert into person values(a);
insert into person values(A);
insert into person values(b);
insert into person values(B);区分大小写 创建一个数据库校验规则使用utf8_ bin[区分大小写]
create database test2 collate utf8_bin;use test2create table person(name varchar(20));insert into person values(a);
insert into person values(A);
insert into person values(b);
insert into person values(B);不区分大小写的查询及结果
mysql use test1;
mysql select * from person where namea;
------
| name |
------
| a |
| A |
------
2 rows in set (0.01 sec)区分大小写的查询以及结果
mysql use test2;
mysql select * from person where namea;
------
| name |
------
| a |
------
2 rows in set (0.01 sec)不区分大小写排序以及结果
mysql use test1;
mysql select * from person order by name;
------
| name |
------
| a |
| A |
| b |
| B |
------区分大小写排序以及结果
mysql use test2;
mysql select * from person order by name;
------
| name |
------
| A |
| B |
| a |
| b |
------2.4 操纵数据库
2.4.1 查看数据库
show databases;2.4.2 显示创建语句
show create database 数据库名示例 MySQL 建议我们关键字使用大写但是不是必须的。数据库名字的反引号 ,是为了防止使用的数据库名刚好是关键字/*!40100 default… */ 这个不是注释表示当前mysql版本大于4.01版本就执行这句话 2.4.3 修改数据库
语法
ALTER DATABASE db_name 对数据库的修改主要指的是修改数据库的字符集校验规则 将 zy1 数据库字符集改成 gbk
alter database zy1 charsetgbk;2.4.4 数据库删除
DROP DATABASE [IF EXISTS] db_ name;执行删除之后的结果:
数据库内部看不到对应的数据库对应的数据库文件夹被删除级联删除里面的数据表全部被删
当前的数据库有 使用drop命令删除后
drop database d1; 2.4.5 查看连接情况
语法
show processlist三.表的操作
3.1 创建表
语法
CREATE TABLE table_name (
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;说明
field 表示列名datatype 表示列的类型character set 字符集如果没有指定字符集则以所在数据库的字符集为准collate 校验规则如果没有指定校验规则则以所在数据库的校验规则为准
3.2 创建表案例
create table users (
id int,
name varchar(20) comment 用户名,
password char(32) comment 密码是,
birthday date comment 生日
) character set utf8 engine MyISAM;说明
不同的存储引擎创建表的文件不一样 users 表存储引擎是 MyISAM 在数据目中有三个不同的文件分别是 users.frm表结构users.MYD表数据users.MYI表索引
create table users (
id int,
name varchar(20) comment 用户名,
password char(32) comment 密码是32位的md5值,
birthday date comment 生日
)3.3 查看表结构
desc 表名;3.3 修改表
经常修改某个表的结构比如字段名字字段大小字段类型表的字符集类型表的存储引擎等等。我们还有需求添加字段删除字段等等。这时我们就需要修改表。
ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column
datatype]...);
ALTER TABLE tablename MODIfy (column datatype [DEFAULT expr][,column
datatype]...);
ALTER TABLE tablename DROP (column)举例
在user表中添加一条记录
insert into user values(1,c,33,1290-9-3);在users表添加一个字段用于保存图片路径 alter table user add access varchar(100) comment 图片路径 after birthday;插入新字段后对原来表中的数据没有影响
修改id将其长度改成60
alter table user modify id varchar(60);删除password列
alter table user drop password;修改表名为userzy
alter table user rename to zy;to可以省略 将name列修改为XM
alter table zy change name XM varchar(60);3.4删除表
语法格式
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...示例
drop table zy;