-- 删除数据 自增长id被占用
-- 清楚所有数据并重置id 1 truncate table name;
-- 主键(唯一) id int primary key;
-- 主键内容不能重复,不能为空 create table test(
id int primary key auto_increment, -- auto_increment 自增长
name varchar(10) not null,
age char(5)
);
-- 删除 主键 有自增长需要先删除自增长 通过change改变该字段的自增长属性
alter table student change id id int not null;
alter table test drop primary key;
-- 复合主键 create table test(
id int;
name varchar(10) not null,
age char(5) null,
primary key(id,name,age)
); -- 只要是张表 都有id字段 通常只要存在id字段 ,那么基本上是主键 -- 自增 配合主键id使用 auto_increment
create table test(
id int primary key auto_increment;
name varchar(10) not null,
age char(5) null,
); -- 唯一键 unique key
-- 表里没有主键时,设置唯一键会显示主键的标志 PRI,但他本质还是唯一键
-- 删除唯一键
alter table test drop index `name`; -- name为字段名字
create table test(
name varchar(10) unique key , -- name 不能重复 要求唯一了
age char(5)
); create table test(
name varchar(10), -- name 不能重复 要求唯一了
age char(5),
unique key 'uni_name'(name)
);
-- 外键 foreign key 关联两张表的
-- 外键删除
alter table foreign_key drop foreign key `外键名`; -- 外键名通过查看建表过程
外键的几种模式
* `restrict` 默认
* `cascade` 级联
* 父表更新 子表更新 父表删除 子表删除
* `set null` 置空
* 父表更新 子表置空 父表删除 子表置空 (前提 支持为空)
create database test;
use test; create table student(
id int primary key auto_increment,
name varchar(20) not null,
gender char(15) not null
); create table course(
id int primary key auto_increment,
name varchar(20)
); insert into student(name,gender) values('Which','male');
insert into student(name,gender) values('Tuple','male');
insert into student(name,gender) values('Rose','female'); insert into course values(1,'Python');
insert into course values(2,'Web');
insert into course values(3,'Java'); create table mark(
id int,
stu_id int,
course_id int,
score int not null,
primary key(id,stu_id,course_id),
constraint FK_ha foreign key(id) references course(id), -- 设置外键的名字
foreign key(course_id) references student(id)
);
-- 外键名字通过 show create table mark; 查看 insert into mark values(1,1,1,99);
insert into mark values(2,1,2,98);
insert into mark values(3,2,1,60);
insert into mark values(3,3,2,99);
mysql> select * from student;
+----+-------+--------+
| id | name | gender |
+----+-------+--------+
| 1 | Which | male |
| 2 | Tuple | male |
| 3 | Rose | female |
+----+-------+--------+
3 rows in set (0.00 sec) mysql> select * from course;
+----+--------+
| id | name |
+----+--------+
| 1 | Python |
| 2 | Web |
| 3 | Java |
+----+--------+
3 rows in set (0.00 sec) mysql> select * from mark;
+----+--------+-----------+-------+
| id | stu_id | course_id | score |
+----+--------+-----------+-------+
| 1 | 1 | 1 | 99 |
| 2 | 1 | 2 | 98 |
| 3 | 2 | 1 | 60 |
| 3 | 3 | 2 | 99 |
+----+--------+-----------+-------+
4 rows in set (0.00 sec)
msq_table's methods2的更多相关文章
-
msq_table's methods
-- 查看有哪些用户 host: % 代表任意地址都可以登录 host: localhost 代表仅本地可以连接select host,user from mysql.user; -- 建库 crea ...
-
DIV+CSS中标签dl dt dd常用的用法
转自:http://smallpig301.blog.163.com/blog/static/9986093201010262499229/ < dl>< /dl>用来创建一个 ...
-
Java的反射机制(Reflection)
反射机制 指可以在运动时加载.探知.使用编译期间完全未知的类 程序在运行状态中,可以动态加载一个只有名称的类,对于任意一个已加载的类,都能够获取这个类的属性和方法:对于任意一个对象可以调用它的任意一个 ...
-
Java反射机制详解
Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反 ...
-
C# 对象深度拷贝
转载 using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using ...
-
java反射之Class.getMethod与getDeclaredMethods()区别
Class对象的getMethods和getDeclaredMethods都是获取类对象的方法.但是又有所不同.废话不多说, 先看demo package com.westward; public c ...
-
java反射快速入门(一)
本文会从以下几个方面讲起 ① 反射的简单解释 ② java反射的API接口 及 demo ③ 反射的优缺点.应用场景 一.什么是反射? java反射:在程序运行中动态获取类的信息,及动态调用对象的方法 ...
-
如何实现SQL事务的提交,又不对外进行污染(2)
紧接着上文,这里主要记录事务操作,实现多实体的功能 在SqlTran类中添加方法如下: 1.两个不同实体类型的事务方法: /// <summary> /// 执行事务(事务中不同实体) / ...
-
Java反射探索研究(转)
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankakay 摘要:本文详细深入讲解是Java中反射的机制,并介绍了如何通过反射来生成对象.调用函数.取得 ...
随机推荐
-
bean标签
bean的uri的路径 bean标签是属于struts中的标签,使用要在 Struts 1.3 Libraries中 struts-taglib-1.3.8.jar 中META-INFtld ...
-
hibernate 超级牛x的公共类
想法,能支持in查询和 =查询的 公共方法,类似下面实现 用 泛型 实现 参数 getList(String[] params,Object[] values){} for(int i=0;i< ...
-
NET Portability Analyzer
NET Portability Analyzer 分析迁移dotnet core 大多数开发人员更喜欢一次性编写好业务逻辑代码,以后再重用这些代码.与构建不同的应用以面向多个平台相比,这种方法更加容易 ...
-
php随机抽奖
貌似有些不合理,麻烦大家帮忙指正指正!谢谢~ <?php header("content-type:text/html;charset=utf-8"); function g ...
-
PHP删除HTMl标签
/** * 取出html标签 * * @access public * @param string str * @return string * */ function deletehtml($str ...
-
z-index 解析
很多人对z-index的认识仅止于:z-index是控制元素在页面中的堆叠顺序,z-index值高的元素显示在z-index值低的前面.而其中的原因才很少有人去深究,直到自己在实际项目中碰到由于z-i ...
-
hdu1027
#include<iostream> #include<cstdio> #include<algorithm> using namespace std; const ...
-
关于pandas精度控制
最近使用pandas处理一批数据,数据中包含几个columns,它们的数据精度,例如 3.25165,1451684684168.0,0.23 处理完之后保存csv时发现,1451684684168. ...
-
去掉 Warning:$HADOOP_HOME is deprecated
修改配置文件/etc/profile,增加环境变量HADOOP_HOME_WARN_SUPPRESS=1, 保存退出,再次启动hadoop,就不会出现警告信息了
-
数据特征分析:3.统计分析 &; 帕累托分析
1.统计分析 统计指标对定量数据进行统计描述,常从集中趋势和离中趋势两个方面进行分析 集中趋势度量 / 离中趋势度量 One.集中趋势度量 指一组数据向某一中心靠拢的倾向,核心在于寻找数据的代表值或中 ...