首先登陆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. iOS"Request failed: unacceptable content-type: text/html"

    接口访问出错了,用浏览器测试,发现可以正常返回数据. 下面是错误信息: 获取服务器响应出错 error=Error Domain=com.alamofire.error.serialization.r ...

  2. .Net字符串替换

    在.Net中,有些地方需要进行字符的替换才能实现一些相关功能,这里是一个简单的字符串替换的方法 //如下,变量strWhere中是通过一些方法获取的sql拼接的条件语句,但在数据库中是多表查询,有同名 ...

  3. sql 事物以及回滚

    第一种: Begin Try    Begin Tran Tran1        insert into t1(Id, c1) values(1,'1')        insert into t1 ...

  4. Python—变量

    1.在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的,不是private变量 2.访问限制: class内部属性可以被外部 ...

  5. hdu 1026(Ignatius and the Princess I)BFS

    Ignatius and the Princess I Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (J ...

  6. Java 的replace和replaceAll的使用

    (1)replace() 方法通过用 newChar 字符替换字符串中出现的所有 oldChar 字符,并返回替换后的新字符串. public String replace(char oldChar, ...

  7. 第二章 centos安装maven

    一.官网下载 apache-maven-3.3.9-bin.tar.gz 注意:需要jdk1.7及以上 二.上传 scp apache-maven-3.3.9-bin.tar.gz root@10.2 ...

  8. MessageDigest消息摘要

    <1>MessageDigest基础 MessageDigest 类为应用程序提供信息摘要算法的功能,如 MD5 或 SHA 算法. MessageDigest 对象开始被初始化.该对象通 ...

  9. C/C++入门基础----指针(1)

    指针其实就是一个变量, 和其他类型的变量一样.在32位计算机上, 指针占用四字节的变量.指针与其他变量的不同就在于它的值是一个内存地址,指向内存的另外一个地方, 指针能够直接访问内存和操作底层的数据, ...

  10. css3中单位px,em,rem,vh,vw,vmin,vmax的区别及浏览器支持情况

    原文地址: http://blog.csdn.net/jyy_12/article/details/42557241 px:绝对单位,页面按精确像素展示 em:相对单位,基准点为父节点字体的大小,如果 ...