mysql 数据库的基本操作语法

推荐数据库关键字段全大写,自定义名小写。

创建数据库  CREATE DATABASE mmp;

创建数据库表则不能为空白字段,最少需要有一个字段

USE mmp; 选择要使用的数据库

CREATE TABLE info (

        id TINYINT PRIMARRY KEY  auto_increment,    //id是字段  为主键 且 自增量

        name VARCHAR(25),    // 变长字符串

        age TINYINT,             // 短整型

       phone CHAR(11)    //定长字符串

);

Boolean-------------> 相当于 TINYINT(1)

查看表结构 DESC info;

增加字段:    ALTER TABLE info ADD phone CHAR(11), ADD address VARCHAR(50);

删除字段:    ALTER TABLE info DROP address;

修改字段类型:    ALTER TABLE info MODIFY age TINYINT  AFTER name;

修改字段名: ALTER TABLE info CHANGE address addr   VARCHAR(40);

修改表名:  RENAME TABLE info TO infomation; 

删除表: DROP TABLE  info;  记录会一行一行被删除

                TRUNCATE TABLE info; 会直接删除表,并按原表结构字段生成一张新空表

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>表数据操作:

添加表数据: INSERT INTO info (name,salary,depart)VALUES ("kevin",15000,"研发部");

                          INSERT INTO info SET name="Kevin",age=23;

删除表数据:DELETE  FROM info WHERE id=7 OR id=8;

修改表数据:UPDATE info SET id=6 WHERE name="lucy";

 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>表间关系

主外键关联:

主键   PRIMARY KEY

外键   FOREIGN KEY

外键是相对主表主键而言的,有外键存在的表是主表的字表;

主外键关联必须满足主外键数据类型一致

添加外键:  ALTER TABLE  xiaodi  ADD CONSTRAINT abc FOREIGN KEY(boss_id) REFERENCES boss(id);

                abc-------------->外键名      boss_id——>字表的字段属性     id--------->主表的主键

删除外键:  ALTER TABLE  xiaodi  DROP FOREIGN KEY abc;

级联操作:删除主表的主键,子表的外键所对应数据自动删除       ON DELETE CASCADE

 1 CREATE DATABASE around;      -- 创建数据库
 2 
 3 CREATE TABLE around.boss     -- 创建数据库表  boss
 4 (id TINYINT PRIMARY KEY auto_increment,
 5 name VARCHAR(30),
 6 age INT,
 7 addr VARCHAR(50)
 8 );
 9 
10 CREATE TABLE around.small    -- 创建数据库表 small
11 (id TINYINT PRIMARY KEY auto_increment,
12 name VARCHAR(30),
13 dg_id TINYINT,
14 CONSTRAINT xd FOREIGN KEY (dg_id) REFERENCES boss (id)      -- 外键
15 ON DELETE CASCADE            --  级联操作 主键删除数据后 自动删除子表关联数据
16 );

 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>表间关联

连接查询:

 1 use around;
 2  create table emp(
 3       emp_id int auto_increment primary key not null,
 4       emp_name varchar(50),
 5       age int,
 6       dept_id int
 7       );
 8 
 9 create table dep(
10        dept_id int,
11        dept_name varchar(100)
12       );
13             
14             
15 insert into emp(emp_name,age,dept_id) values
16         ('A',19,200),
17         ('B',26,201),
18         ('C',30,201),
19         ('D',24,202),
20         ('E',20,200),
21         ('F',38,204);
22                 
23                 
24 insert into dep values
25       (200,'人事部'),
26       (201,'技术部'),
27       (202,'销售部'),
28       (203,'财政部');
29             
30             
31 SELECT emp.emp_name ,dep.dept_name FROM emp INNER JOIN dep ON emp.dept_id=dep.dept_id WHERE emp.emp_name="A";
32 
33 
34 SELECT emp.emp_name,dep.dept_name FROM emp INNER JOIN dep ON emp.dept_id=dep.dept_id WHERE dep.dept_name="技术部";
35 
36 SELECT * FROM emp INNER JOIN dep ON emp.dept_id=dep.dept_id WHERE emp.age>25;
37 
38 SELECT * FROM emp WHERE dept_id IN (SELECT dept_id FROM dep);
39 
40 CREATE TABLE net (SELECT * FROM emp WHERE dept_id IN (SELECT dept_id FROM dep));
原文地址:https://www.cnblogs.com/wen-kang/p/9495580.html