一些重要的SQL 命令
CREATE DATABASE - 创建新数据库
CREATE TABLE - 创建新表
ALTER DATABASE - 修改数据库
ALTER TABLE - 变更(改变)数据库表
SELECT - 从数据库中提取数据
UPDATE - 更新数据库中的数据
DELETE - 从数据库中删除数据
INSERT INTO - 向数据库中插入新数据
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引
MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。
SQL 语句可以单行或多行书写,以分号结尾。
注释:单行注释: – 注释内容 或 #注释内容(MySQL 特有) ;多行注释: /* 注释 */
SQL语句分类 :
- DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等。
- DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据)。
- DCL(Data Control Language):数据控制语言,用来定义访问权限和安全级别。
- DQL(Data Query Language):数据查询语言,用来查询记录(数据)。
数据库
1. 查看现有数据库
SHOW DATABASES;
2. 新建数据库
CREATE DATABASE <数据库名>;
CREATE DATABASE IF NOT EXISTS 数据库名称;创建数据库(判断,如果不存在则创建)
3. 选择数据库
USE <数据库名>;
**4. 从
.sql
文件引入SQL语句**
SOURCE <.sql文件路径>;
5. 删除数据库
DROP DATABASE <数据库名>;
表
1. 查询表
查询当前数据库下所有表名称
SHOW TABLES;
查询表结构
DESC 表名称;
2.创建表
CREATE TABLE 表名 (
字段名1 数据类型1,
字段名2 数据类型2,
…
字段名n 数据类型n
);
举个例子:
create table tb_user (
id int,
username varchar(20),
password varchar(32)
);
注意:最后一行末尾,不能加逗号
3.删除表
删除表
DROP TABLE 表名;
删除表时判断表是否存在
DROP TABLE IF EXISTS 表名;
4.修改表
修改表名
ALTER TABLE 表名 RENAME TO 新的表名;
-- 将表名student修改为stu
alter table student rename to stu;
添加一列
ALTER TABLE 表名 ADD 列名 数据类型;
-- 给stu表添加一列address,该字段类型是varchar(50)
alter table stu add address varchar(50);
修改数据类型
ALTER TABLE 表名 MODIFY 列名 新数据类型;
-- 将stu表中的address字段的类型改为 char(50)
alter table stu modify address char(50);
修改列名和数据类型
ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型;
-- 将stu表中的address字段名改为 addr,类型改为varchar(50)
alter table stu change address addr varchar(50);
删除列
ALTER TABLE 表名 DROP 列名;
-- 将stu表中的addr字段 删除
alter table stu drop addr;
数据操作语言
1.添加数据
给指定列添加数据
INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…);
给全部列添加数据
INSERT INTO 表名 VALUES(值1,值2,…);
批量添加数据
INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)…;
INSERT INTO 表名 VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)…;
2.修改数据
修改表数据
UPDATE 表名 SET 列名1=值1,列名2=值2,… [WHERE 条件] ;
update stu set sex = '女' where name = '张三';
3.删除数据
删除数据
DELETE FROM 表名 [WHERE 条件] ;
-- 删除张三记录
delete from stu where name = '张三';
常见SQL语句
查询前10条数据
select * from 表名 order by id(主键)limit 10
查询第11条到第15条数据
select * from 表名 limit 10,5
查询表中的各个字段信息
select * from all_tab_columns where table_name='CS_CSSCODEDEF_DICT';
show databases; #显示当前所有的数据库
alter database test1222 character set utf8; #修改当前数据库的字符编码为utf8
drop table table_name; #删除某个表;
show tables; #显示当前的库中所有的数据表;
desc student; #查看数据表student中的所有字段;
alter table student add company varchar(50); #为student表增加一个字段;
#一次添加多条数据:
insert into student(id,`name`,age,address) values (4,'曹操',27,'北京海淀'),(5,'周瑜',28,'北京朝阳'),(6,'赵云',30,'北京大兴');
update student set age=24,address="河北保定" where id=1; #更新某条数据
update student set age=age+5; #将所有的年龄都加5岁;
# ---------------------------------
delete from student where `name`="zhangsan"; #删除表中的某个字段;
#对比:
drop table table_name; #删除某个表;
其他命令
进入mysql管理命令行的命令?
Mysql -uroot -p 回车 密码
showdatabases;
显示当前 mysql 服务器中有哪些数据库
show create database mysql;
显示创建数据库的 sql 语句
show create table user;
显示创建表的 sql 语句
desc user;
查询 user 表的结构
explain select * from user;
获取 select 相关信息
show processlist;
显示哪些线程正在运行
SHOW VARIABLES;
显示系统变量和值
SHOW VARIABLES like ’ %conn% ’
显示系统变量名包含 conn 的值
LEFT JOIN
SELECT A.id,A.class FROM A LEFT JOIN B ONA.cid=B.id
版权归原作者 逝缘~ 所有, 如有侵权,请联系我们删除。