MySql数据库表操作(二)
一、增加表记录:
- insert [into] tab_name (field1,field2....) values (values1,values2....) ,
- (values1,values2....),
- ... ;
- insert tab_name set field=value, field=value,..... ;
二、修改记录:
- update tab_name set field=value where 子句
三、删除表记录:
- delete from tab_name where 子句
- 清空表记录: 1 delete from tab_name
- 2 truncate tab_name (数据量大时推荐使用)
四、查询表记录:
- select * from tab_name : 显示所有的记录的所有字段信息
- select [distinct] filed,filed2,..... from tab_name
- where 子句
- group by 分组 key : 分组条件
- having 子句 : 过滤
- order by
- limit
- 查询 每一个省份的平均工资
- select city,avg(salary) from emp group by city;
- 查询 平均工资大于8000的省份的名称
- select city,avg(salary) from emp group by city having avg(salary) > 8000
多表查询:
- 内连接查询:
- select * from emp inner join dep on emp.dep_id=dep.id;
- 左外连接查询:
- select * from emp left join dep on emp.dep_id=dep.id;
五、完整性约束:
- 主键约束:
- primary key : 非空(not null )且 唯一 (unique)
- 外键约束(关联字段):
- FOREIGN KEY (字段) REFERENCES dep(字段)
六、表关系:
- 表与表的关系(两张表)
- 一对多
- 将关联字段设置在多的表中
- CREATE TABLE emp(
- id INT PRIMARY KEY ,
- name VARCHAR (20),
- dep_id INT ,
- FOREIGN KEY (dep_id) REFERENCES dep(id)
- )
- 多对多
- 借助第三张表实现的
- CREATE TABLE STUDENT2TEACHER(
- id INT PRIMARY KEY auto_increment,
- studnet_id INT ,
- teacher_id INT ,
- FOREIGN KEY (studnet_id) REFERENCES student(id),
- FOREIGN KEY (teacher_id) REFERENCES teacher(id),
- )
- 一对一
- 将关联字段设为Unique
- CREATE TABLE author(
- id INT PRIMARY KEY ,
- name VARCHAR (20),
- authorDetial_id INT unique,
- FOREIGN KEY (dep_id) REFERENCES dep(id)
- )
MySql数据库表操作(二)的更多相关文章
- Database学习 - mysql 数据库 表操作
mysql 数据库 表操作 创建数据表 基本语法格式: 创建数据表: create table 表名( 字段名 datatype 约束, 字段名 datatype 约束, ...... ) 修改表名 ...
- MySQL数据库-表操作-SQL语句(二)
1. MySQL多表查询 1.1 外键约束 为了消除多张表查询出现的笛卡尔积的现象,MySQL在建表并进行多表之间的关键查询可以使用外键关联查询. 外键:从表1(sub)的某列引用(ref)另外一个表 ...
- MySQL数据库——表操作
I.表操作 一.创建表 基本语法如下: create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGINE=InnoDB DEFAULT CHARSET=utf8: ...
- MySQL数据库-表操作-SQL语句(一)
1. 数据库操作与存储引擎 1.1 数据库和数据库对象 数据库对象:存储,管理和使用数据的不同结构形式,如:表.视图.存储过程.函数.触发器.事件等. 数据库:存储数据库对象的容器. 数据库分两种 ...
- Mysql 数据库表操作
☞ 创建表CREATE TABLE `数据库`.`表` ( `id` INT( 11 ) NOT NULL AUTO_INCREMENT COMMENT '注释',`type_name` VARCHA ...
- mysql数据库表操作-表的主键索引和普通索引
数据库索引就象书的目录一样,如果在字段上建立了索引,那么以索引列为查询条件时可以加快查询数据的速度.查询数据库,按主键查询是最快的,每个表只能有一个主键列,但是可以有多个普通索引列,主键列要求列的所有 ...
- mysql数据库 --表操作
一.表与表之间建关系 (1) 将所有的数据放在一张表内的弊端 表的组织结构不清晰 浪费存储时间 可扩展性极差 ---> 类似于将所有的代码写入到一个py文件中 -->解耦部分 (2) 如何 ...
- 数据库 MySQL 之 表操作、存储引擎
数据库 MySQL 之 表操作.存储引擎 浏览目录 创建(复制) 删除 修改 查询 存储引擎介绍 一.创建(复制) 1.语法: 1 2 3 4 5 CREATE TABLE 表名( 字段名1 ...
- MySQL数据库表的数据插入、修改、删除、查询操作及实例应用
一.MySQL数据库表的数据插入.修改.删除和查询 CREATE DATABASE db0504; USE db0504; CREATE TABLE student ( sno ) NOT NULL ...
随机推荐
- js 的date的format时间,获取当前时间,前一天的日期
Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.getMonth() + ...
- 遇到问题---hosts不起作用问题的解决方法
c:\WINDOWS\system32\drivers\etc\hosts 文件的作用是添加 域名解析 定向 比如添加 127.0.0.1 www.baidu.com 那我们访问www.baidu. ...
- ssh生成私钥
指定证书类型为rsa ssh-keygen.exe -t rsa https://www.cnblogs.com/pixy/p/4722381.html
- SwingBench 字符模式压测最佳实践
之前写过<使用SwingBench 对Oracle RAC DB性能 压力测试>,使用的是最基础直观的图形模式,已经可以满足大多数需求. 但是在有些场景下,图形模式可能本身消耗资源过大,尤 ...
- ssh简单入门级案例教程
准备工作:struts2.3.34+spring4.2.2+hibernate3.3.2 导入需要的开发包: struts开发包---注意:javassist-3.18.1-GA.jar包与hiber ...
- Python全栈-数据库介绍与基本操作
.数据库管理软件的由来 数据库的产生是为了解决数据的永久储存.数据安全.以及对方对外服务时能够实现并发服务等效果.例如解决前面所学的Scoket编程中,在不考虑硬件问题的基础上,服务端服务多个客户端时 ...
- Mvcpager以下各节已定义,但尚未为布局页“~/Views/Shared/_Layout.cshtml”呈现:“Scripts”。
解决办法如下: 1.在_Layout.cshtml布局body内,添加section,Scripts.Render和RenderSection标签示例代码如下: <body class=&quo ...
- 斯坦福大学自然语言处理第四课“语言模型(Language Modeling)”
http://52opencourse.com/111/斯坦福大学自然语言处理第四课-语言模型(language-modeling) 一.课程介绍 斯坦福大学于2012年3月在Coursera启动了在 ...
- tomcat的JVM调优
1.error场景 Tomcat 长期运行过程遇到Caused by: java.lang.OutOfMemoryError: PermGen space或java.lang.OutOfMemoryE ...
- Python: 字典dict: zip()
problem: 怎样在数据字典中执行一些计算操作(比如求最小值.最大值.排序等等)? answer: eg1: 考虑下面的股票名和价格映射字典: prices = {'ACME': 45.23,'A ...