1.数据库表操作:

  • - 首先启动mysql服务器,在安装mysql的目录下打开cmd窗口,运行mysql:'mysql.exe -hlocalhost -p3306 -uroot -p123456';
  • - 查看所有的数据库: show databases;  -- create database my_database;
  • - use my_database; --> show tables; --> create table class(name varchar(10), room varchar(10))charset utf8; --> show tables like "%s"; -->
  •   查询表的创建语句:show create table my_student; --> 省略冒号的写法:show create table my_student\g     --> 另外一种输出格式:
  •   show create table my_student\G
  • - 给表重命名:rename table student to my_student;
  • - 查看数据表的表结构:desc 表名; -->describe 表名;  --> show columns from 表名;
  • - 给表添加新的字段:alter table my_student add column id int first/after;
  • - 修改字段:修改通常是属性或者数据类型;--> alter table 表名 modify 字段名 数据类型 [属性] [位置]; --> alter table my_student modify number char(10) after id;
  • - 重命名字段:alter table 表名 change 旧字段 新字段 数据类型 [属性] [位置];
  • alter table my_student change gender sex varchar(10) after id;
  • - 删除字段:删除学生表中的年龄字段(age) --> alter table my_student drop age;
  • -- 删除数据表:drop table 1,2,3...   --> drop table class;

2.数据操作

  • insert into my_student values(1, '001', 'J', 'Jin'), (2. '002', 'H', 'Huni');
  • insert into my_student(number, name, sex, id) values ('003', 'Jeny', 'Male', 3), ('004', 'The Shy', 'Femal', 4);
  • 查看数据:select */字段列表 from 表名 [where条件]; --> select * from my_student;  --> select id,number,sex,name from my_student where id = 1;
  • 更新数据:update 表名 set 字段 = 值[where条件];
  • 删除数据:delete form 表名 [where条件];

3.字符集处理

  • 查看所有字符集:show character set;
  • 查看服务器默认的对外处理的字符集:show variables like 'character_set%';
  • 修改服务器认为的客户端数据的字符集为GBK:set character_set_client = GBK;
  • 快捷设置字符集: set names gbk;

4.高级数据新增操作

  • 主键冲突:更新操作 --> insert into 表名[(字段列表,包含主键)] values(值列表) on duplicate key update 字段 = 新值;
  • 主键冲突:替换   --> replace into 表名[字段列表,包含主键] values(值列表);

5.蠕虫复制

  • 复制表结构:create table 表名 like 表名;
  • 如重复制:从已有表中拷贝数据到新表中,可以迅速的让表中的的数据膨胀到一定的数据,来测试表的压力以及效率。
  • insert into 表名 select * from 表名;

6.查询操作

  • select [select选项] 字段列表[字段别名]/* from 数据源 [where条件子句][group by 字句][having子句][order by子句][limit子句];

7.外键

  • 创建表之后添加外键:alter table 表名 add [constraint 外键名称] foreign key(外键字段) references 父表(主键字段);
  • alter table my_foreign2 add constraint id foreign key(c_id) references my_student(student_id);
  • 删除外键:alter table 表名 drop foreign key 外键名称;
  • 外键的作用:
    • 对子表的约束:子表的数据进行写操作(增和改)的时候,如果对应的外键在父表找不到对应的匹配,那么操作会失败(以此来约束子表的操作)。
    • 对父表的约束:父表数据进行写操作(删除和修改,都必须涉及到主键本身),如果对应的主键在子表中已经被数据所引用,那么久不允许操作。
  • 外键条件:
    • 外键要存在,首先必须保证表的存储引擎是innodb(默认的存储引擎),如果不是,那么外键可以创建成功,但是没有约束效果。
    • 外键字段的字段类型(列类型)必须与父类的主键类型完全一致,否则创建失败。
    • 一张表中的外键名字不能重复。
    • 增加外键的字段(数据已经存在),必须保证数据与父表主键要求对应。  

Windows下mysql的基础操作的更多相关文章

  1. Windows下MySQL的常用操作

    1.MySQL关闭与重启 1.MYSQL服务 我的电脑——(右键)管理——服务与应用程序——服务——MYSQL——开启(停止.重启动) 2.如果你没安装系统服务,可在命令行模式定位到mysql下的bi ...

  2. [学习笔记]Linux下mysql的基础操作

    命令 #查看版本 mysql --version   #进入mysql 命令 mysql -u root -p mysql -u root@localhost (没有密码的情况)   #创建数据库 c ...

  3. 【已解决】Windows下 MySQL大小写敏感 解决方案及分析

    Windows下 MySQL大小写敏感配置 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-3-27 最近在window ...

  4. Windows下MYSQL自动备份批处理

    windows下MYSQL自动备份批处理 2011-05-04 09:16:45|  分类: mysql|举报|字号 订阅     按系统时间进行备份 注意mysql安装路径中如果有空格.就要把,.b ...

  5. windows下mysql配置

    windows下mysql配置   忙活了大半天,总算配置好了,本文献给windows下没试用过Mysql的小白,勿喷 http://blog.csdn.net/z1074907546/article ...

  6. (转)Windows下MySQL :GUI安装和使用(MySQL GUI tools)

    原文:http://blog.csdn.net/dahunbi/article/details/52970815 MySQL GUI Tools是MySQL官方提供的图形化管理工具,功能很强大,值得推 ...

  7. Windows下MySQL多实例运行(转)

    关键字:Windows下MySQL多实例运行 阅读前注意事项: 1.有的版本的data目录不直接放在mysql安装目录下,有可能在:C:\ProgramData\MySQL\MySQL Server ...

  8. Windows下MySQL配置及安全加固总结

    Windows下MySQL配置及安全加固总结 在网管的实际使用过程中,MySQL数据库在安装后的配置及安全加固内容,在客户中逐渐要求越来越高.从反馈的问题看,一般都是由第三方软件公司的软件扫描整个系统 ...

  9. Windows 下MySQL zip 安装

    主要步骤: 1.下载解压到安装的文件夹 2.配置环境路径 3.配置my.ini文件,设置程序路径和数据存储路径 4.以管理员身份启动Mysqld install(提示sevice安装成功) 5.启动M ...

随机推荐

  1. vue中mixins的使用方法和注意点(详2)(异步请求的情况)

    当混合里面包含异步请求函数,而我们又需要在组件中使用异步请求函数的返回值时,我们会取不到此返回值,如下: mixin中 组件中 控制台 解决方案:不要返回结果而是直接返回异步函数 mixin中 组件中 ...

  2. Template模式C++实现

    #include <iostream> using namespace std; class AbstractClass { public: void TemplateMethod() { ...

  3. 14.6 kafka

    14.6 kafka 为什么用消息队列 举例 比如在一个企业里,技术老大接到boss的任务,技术老大把这个任务拆分成多个小任务,完成所有的小任务就算搞定整个任务了. 那么在执行这些小任务的时候,可能有 ...

  4. python3.x 基础八:socket网络编程

    Socket socket就是一直以来说的“套接字”,用于描述:ip:端口,是通信链的句柄,客户端通过这个句柄进行请求和响应 普通文件的操作顺序:打开-读写-关闭,针对的是文件 socket是特殊的文 ...

  5. PAT-1080 Graduate Admission (结构体排序)

    1080. Graduate Admission It is said that in 2013, there were about 100 graduate schools ready to pro ...

  6. 【原创】CentOS 7搭建多实例MySQL8(想要几个搞几个)

    起因 最近项目上开始重构,可能会用到主从加读写分离的情况,就想先在本地搭一个出来试试效果,结果百度一搜出来一大堆,然而自己去踩坑的没几个,绝大多数都是去抄的别人的内容,关键是实际应用中还会出错,浏览器 ...

  7. CSS 伪选择器 focus-within 介绍

    CSS中的 :focus-within 伪选择器可有点"不寻常",尽管它的名称看上去很简单,而且相当直观.但它的解释是:选择一个包含具有:focus 的任何子元素的元素.有点绕是不 ...

  8. JVM调优总结(五)-典型配置举例

    以下配置主要针对分代垃圾回收算法而言. 堆大小设置 年轻代的设置很关键 JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理 ...

  9. JVM调优总结(四)-分代垃圾回收详述

    为什么要分代 分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的.因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率. 在Java程序运行的过程中,会产生大量的对象, ...

  10. 学习使用pyquery解析器爬小说

    一.背景:个人喜欢在网上看小说,但是,在浏览器中阅读小说不是很方便,喜欢找到小说的txt版下载到手机上阅读,但是有些小说不太好找txt版本,考虑自己从网页上爬一爬,自己搞定小说的txt版本.正好学习一 ...