首先登陆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数据表操作&库操作的更多相关文章

  1. 对Mysql数据表本身进行操作

    创建实验环境 mysql> create database test_db; Query OK, 1 row affected (0.00 sec) mysql> use test_db; ...

  2. mysql数据表的字段操作

    CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) DEFAULT NULL, ` ...

  3. MySQL 数据表操作

    MySQL 数据表操作 创建MySQL数据表需要以下信息: -表名: -表字段名: -定义每个表字段: 一.创建数据表 1)mysql> create  table  table_name (c ...

  4. mysql(三) 数据表的基本操作操作

    mysql(三) 数据表的基本操作操作 创建表,曾删改查,主键,外键,基本数据类型. 1. 创建表 create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGIN ...

  5. mysql 数据表操作 目录

    mysql 数据表操作 存储引擎介绍 mysql 使用存储引擎 mysql 数据表的增删改查 mysql 数据类型 mysql 约束条件

  6. 设置mysql数据表列自动递增以及数据行插入操作

    创建mysql数据表,设置id列递增.主键create table running_log ( id int primary key auto_increment, routename varchar ...

  7. .NET 使用 MySql.Data.dll 动态库操作MySql的帮助类--MySqlHelper

    .NET 使用 MySql.Data.dll 动态库操作MySql的帮助类--MySqlHelper 參考演示样例代码,例如以下所看到的: /// <summary> /// MySql ...

  8. 用Myisamchk让MySQL数据表更健康

    用Myisamchk让MySQL数据表更健康 2011-03-15 09:15 水太深 ITPUB 字号:T | T 为了让MySQL数据库中的数据表“更健康”,就需要对其进行定期体检.在这里笔者推荐 ...

  9. (转)MySQL数据表中带LIKE的字符匹配查询

    MySQL数据表中带LIKE的字符匹配查询 2014年07月15日09:56    百科369 MySQL数据表中带LIKE的字符匹配查询 LIKE关键字可以匹配字符串是否相等. 如果字段的值与指定的 ...

  10. 设置MySQL数据表主键

    设置MySQL数据表主键: 使用“primary key”关键字创建主键数据列.被设置为主键列不允许出现重复的值,很多情况下与“auto_increment”递增数字相结合.如下SQL语句所示: My ...

随机推荐

  1. awk的涂鸦

    awk太牛了,博大精深,学不透,学了不用,又忘. 所以花了一天,自己总结了基础,以后就当字典查(容易忘).有不对的地方,忘大家指出. [ganzl@cmdb ~]$ more /etc/passwd ...

  2. Net分布式系统之三:Keepalived+LVS+Nginx负载均衡之高可用

    上一篇写了nginx负载均衡,此篇实现高可用(HA).系统整体设计是采用Nginx做负载均衡,若出现Nginx单机故障,则导致整个系统无法正常运行.针对系统架构设计的高可用要求,我们需要解决Nginx ...

  3. IT蓝豹--RecyclerView加载不同view实现效果

    本项目由开发者:黄洞洞精心为初学者编辑RecyclerView的使用方法. RecyclerView加载不同view实现效果,支持加载多个view,并且支持用volley获取数据, 项目主要介绍: 初 ...

  4. ZipFile解压文件不改变压缩包内文件修改日期的方法

    本文参考http://stackoverflow.com/questions/9813243/extract-files-from-zip-file-and-retain-mod-date-pytho ...

  5. VFP 祺佑三层开发框架快速开发 演示DEMO

    祺佑三层开发框架快速开发  演示DEMO单表增删查改 链接:http://pan.baidu.com/s/1ntHXTXn 密码:wiwb 主从分离更新链接:http://pan.baidu.com/ ...

  6. Python 监控nginx服务是否正常

    Python 监控nginx服务是否正常 #!/usr/bin/env python import os, sys, time from time import strftime while True ...

  7. Linux下如何查看系统启动时间和运行时间

    1.uptime命令输出:16:11:40 up 59 days, 4:21, 2 users, load average: 0.00, 0.01, 0.002.查看/proc/uptime文件计算系 ...

  8. spring 异常记录

    1.异常: java.lang.IllegalArgumentException: No converter found for return value of type: class java.ut ...

  9. 运用String类实现一个模拟用户登录程序

    package Test; import java.util.Scanner; // 模拟用户登录程序 // 思路: // 1.用两个String类分别接收用户名和密码 // 2.判断输入的用户名和密 ...

  10. 使用id名称和name直接获取元素

    我们知道一些第三方的js库对如何快速选取html中的元素做了一些简化,貌似十分高深莫测,其实也不然.而且js本身自带了对于特殊元素的简便选取的方法,下面就为大家简单介绍下. 在html中,一般最直接的 ...