mysql数据表操作&库操作
首先登陆mysql:mysql -uroot -proot -P3306 -h127.0.0.1
查看所有的库:show databases;
进入一个库:use database;
显示所在的库:select database();
开始进行数据表操作:
1,创建数据表:create table user(
id smallint unsigned aotu_crement not null primary key, //id,整型无符号位非空主键
idNum varchar(20) unique key not null,//身份证号,20个变长字符唯一约束非空
username varchar(20) unique key not null,//用户名,20个变长子符唯一约束非空
sex enum('1','2','3') default '3',//性别,枚举类型默认为3
age tinyint unsigned,//年龄,无符号位
salary float(8,2) unsigned,//薪水,浮点型,小数点后最多2位,小数点前最多6位,无符号位
privinceid tinyint ,//省份
foreing key (provinceid) reference provinces (id) on delete cascade //provinces表脑补一下,外键规则见下面
...
);
注:a,自增字段,一定是主键,主键一定非空
b,一个表主键约束只能有一个,但是唯一约束可以有很多
c,枚举类型可为空
d,使用外键时,父表和子表必须使用同一个引擎:InnoDB
e,物理外键只有InnoDB引擎支持,myisam引擎不支持,一般开发不使用foreing key(有逻辑关系,但是没有定义外键约束=》逻辑外键)
e,父表删除或者修改子表外键列匹配行时,on delete的定义为
@cascade,父表删除,子表外键列匹配行删除
@set null,父表删除,子表匹配行外键列置null(该列允许为null)
@restrict,拒绝删除
@no action,mysql中和restrict一样
2,查看数据表创建时的语法:show create table table_name;
3,查看当前库中的表:show tables;
4,查看所有库中的表:show tables from mysql;
5,查看表结构:show columns from table_name;
6,添加字段:alter table table_name add column_name [after column_name | first];
7,删除字段:alter table table_name drop column_name;
8,添加主键约束:alter table table_name add [constraint PK_tablename_id] primary key (column_name);
9,删除主键约束:alter table table_name drop primary key;
10,添加唯一约束:alter table table_name unique(column_name1,column_name2..);
11,删除唯一约束:
a,查询index:show index from table_name;
b,alter table table_name drop index Key_name;
12,添加外键约束:alter table child_table add [constraint FK_tablename_column] foreing key (fid) references father_table (id);
*13,删除外键约束:
a,查看外键约束名称:show create table table_name;
b,删除外键约束:alter table table_name drop foreing key constraint;
14,添加默认约束:alter table table_name alter column set default value;
15,删除默认约束:alter table table_name alter column drop default;
16,修改列定义和位置:alter table table_name modify column_name varchar(50) after column_name;
/*********以下两种慎用**************************************************************************************/
17,修改列名称和定义:alter table table_name change column_name1 column_name2 varchar(100);
18,修改表名称:alter table table_name rename table_name1;
mysql数据表操作&库操作的更多相关文章
- 对Mysql数据表本身进行操作
创建实验环境 mysql> create database test_db; Query OK, 1 row affected (0.00 sec) mysql> use test_db; ...
- mysql数据表的字段操作
CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) DEFAULT NULL, ` ...
- MySQL 数据表操作
MySQL 数据表操作 创建MySQL数据表需要以下信息: -表名: -表字段名: -定义每个表字段: 一.创建数据表 1)mysql> create table table_name (c ...
- mysql(三) 数据表的基本操作操作
mysql(三) 数据表的基本操作操作 创建表,曾删改查,主键,外键,基本数据类型. 1. 创建表 create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGIN ...
- mysql 数据表操作 目录
mysql 数据表操作 存储引擎介绍 mysql 使用存储引擎 mysql 数据表的增删改查 mysql 数据类型 mysql 约束条件
- 设置mysql数据表列自动递增以及数据行插入操作
创建mysql数据表,设置id列递增.主键create table running_log ( id int primary key auto_increment, routename varchar ...
- .NET 使用 MySql.Data.dll 动态库操作MySql的帮助类--MySqlHelper
.NET 使用 MySql.Data.dll 动态库操作MySql的帮助类--MySqlHelper 參考演示样例代码,例如以下所看到的: /// <summary> /// MySql ...
- 用Myisamchk让MySQL数据表更健康
用Myisamchk让MySQL数据表更健康 2011-03-15 09:15 水太深 ITPUB 字号:T | T 为了让MySQL数据库中的数据表“更健康”,就需要对其进行定期体检.在这里笔者推荐 ...
- (转)MySQL数据表中带LIKE的字符匹配查询
MySQL数据表中带LIKE的字符匹配查询 2014年07月15日09:56 百科369 MySQL数据表中带LIKE的字符匹配查询 LIKE关键字可以匹配字符串是否相等. 如果字段的值与指定的 ...
- 设置MySQL数据表主键
设置MySQL数据表主键: 使用“primary key”关键字创建主键数据列.被设置为主键列不允许出现重复的值,很多情况下与“auto_increment”递增数字相结合.如下SQL语句所示: My ...
随机推荐
- 【转】HTML转义字符大全
ISO Latin-1字符集: — 制表符Horizontal tab — 换行Line feed — 回车Carriage Return — Space ! ! — 惊叹号Exclamati ...
- CheckedComboBoxEdit 重置初始化值的方法
CheckedComboBoxEdit ccbgb; ccbgb绑定方式ccbgb .Properties .DataSource =数据集; ccbgb.Properties.DisplayMemb ...
- spring的helloworld
前两天接到了支付宝的电话面试,问了我好多java中的知识,知识姐不看java好多年,这猛一问知道的东西还真是不少啊.趁着现在精力还算是比较旺盛,再把spring重新理一理,为下一次面试做准备. 学习每 ...
- oracle+ibatis 批量插入-支持序列自增
首先请先看我前面一篇帖子了解oracle批量插入的sql:[oracle 批量插入-支持序列自增] 我用的ibatis2.0,sqlMap文件引入的标签如下: <!DOCTYPE sqlMap ...
- frame busting
[frame busting] 参考:http://book.51cto.com/art/201204/330076.htm
- html初学者笔记01
一.Html简介 HTML 是一种标记语言 忽略大小写,语法宽松 使用 HTML 标记和元素,可以: 控制页面和内容的外观 发布联机文档 使用 HTML 文档中插入的链接检索联机信息 创建联机表单,收 ...
- UML类图画法及其之间的几种关系(转)
UML类图画法及其之间的几种关系 最近做重构项目,需要画一下类图,发现类图的画法及其之间的几种关系已经淡忘了很多,所以整理总结一下,有问题的地方大家可以一起讨论下. 文章目录如下: 类图画法 类之间的 ...
- 解决git无法clone提示443以及配置git代理方法
git config --global http.proxy 'socks5://127.0.0.1:1080' 设置完成之后再次clone就会成功了(当然前提是你有s's而且在开启的前提下)
- socket网络通信
1.socket通常也称作"套接字",用于描述IP地址和端口.在internet上的主机一般运行了多个服务软件,同时提供几种服务,每种服务都打开一个socket,并绑定到一个端口上 ...
- python 2.4 与 python 3.0 的比较
转过来,留着日后查看 [转自:]http://hi.baidu.com/autoitcn/blog/item/5f41973294b5fc4fac4b5f77.html python 2.4 与 py ...