下载地址 http://www.mysql.com/downloads/mysql/

端口号:3306 用户名:root 密码:自定义

连接到MySQL服务器 >mysql -uroot -proot [-h127.0.0.1]

断开连接 >exit 或者>quit

命令

显示MySQL中所有的数据库 > show databases;

切换到mydb数据库 > use mydb;

查看数据库中所有的表 > show tables;

查看表结构 > desc t_user;

查看数据库版本和时间 > select version(),now();

创建数据库 >create database mydb;

数据类型(整型)

数据类型 无符号范围 有符号范围
TINYINT 0~255 -128~127
SMALLINT 0~65535 -32768~32767
MEDIUMINT 0~16777215 -8388608~8388607
INT(Integer) 0~4294967295 -2147483648~2147483647
BIGINT 0~18446744073709551 615 -9223372036854775808~9223372036854775807

数据类型(浮点型)

数据类型 无符号范围 有符号范围
FLOAT 0,(1.175 494 351 E-38,3.402 823 466 E+38) -3.402 823 466 E+38,1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38)
DOUBLE (1.797 693 134 862 315 7 E+308,2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)
DECIMAL(M,D)    

 数据类型(字符型)

数据类型 大小 用途
CHAR 0-255字节 定长字符串
VARCHAR 0-255字节 变长字符串
TINYTEXT 0-255字节  短文本字符串
TEXT 0-65 535字节 长文本数据
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据
LONGTEXT 0-4 294 967 295字节 极大文本数据

 数据类型(日期时间型)

类型 范围 格式
DATE 1000-01-01~9999-12-31 YYYY-MM-DD
TIME -838:59:59~838:59:59 HH:MM:SS
DATETIME 1000-01-01 00:00:00~9999-12-31 23:59:59 YYYY-MM-DD HH:MM:SS
TIMESTAMP 1970-01-01 00:00:00~2037年 YYYY-MM-DD HH:MM:SS

创建表:

create table stu(
id int auto_increment,
stuname varchar(20) not null,
classid int not null,
primary key(id)
);

create table cls(
id int auto_increment,
clsname varchar(20) not null,
primary key(id)
);

添加数据:

insert into stu (stuname,classid)values('lyl',2),('fj',2);

insert into cls (clsname)values('java'),('c++');

主键 • 在设计表时总是要定义表的主键 • 表的主键设计策略 • 任意两行都不具备相同的主键值 • 每行都必须具有一个主键值(主键不允许Null列) • 主键和业务无关,不更改,不重用 • 主键可以是一个列或者是多个列的组合 • 使用PRIMARY KEY(XXX)来声明一个主键列 • 如果使用多个列作为主键则需要如下声明:PRIMARY KEY(XXX,XXX)

主键自动增长 AUTO_INCREMENT • 用来标示一个自动增长列 • 一个表中只允许有一个自动增长列 >create table t_student ( id int auto_increment, … );

删除表 > drop table t_student;

非null约束 stuname varchar(20) not null

默认约束 stuaddress varchar(100) default '郑州'

唯一约束 stuname varchar(20) not null unique

更改表

添加一列 >alter table t_student add tel char(20);

删除一列 >alter table t_student drop column tel;

添加唯一约束 >alter table t_student add constraint uk_username unique(usercode);

添加主键约束 >alter table t_user add constraint pk_t_user_id primary key t_user(id);

添加默认约束 >alter table t_user alter password set default '123456';

添加非null约束 >alter table t_teacher modify column uname varchar(20) not null;

重命名表 >rename table t_student to t_stu

导出数据库 >mysqldump -hlocalhost -uroot -proot mydb>C:/a.sql

批量导入SQL脚本 >source C:/a.sql

运算符

逻辑运算符 • = 等于 • <>,!= 不等于 • < 小于 • > 大于 • <= 小于等于 • >= 大于等于 • between 在指定的两个值之间

关系运算符 • and • or • not

update >update t_student set stuname = 'Alex',age = '26' [where id = 1];

where • where stuname = 'tom' • where stuname = 'tom' or stuname = 'alex' • where id > 1 and id < 3 • where id != 23 • where id = 12 or id = 34 • where id in (12,34) • where id between 12 and 34 • where password is null • where password is not null

delete >delete from t_student [where id = 1];

truncate >truncate table t_student; TRUNCATE TABLE用于删除表中的所有记录,但该语句不能包含WHERE语句,该操作运行速度比 DELETE语句快

创建外键 >alter table t_user add schoolid int; >alter table t_user add constraint fk_student_cus foreign key(schoolid) references t_school(id);

删除外键 > alter table t_user drop foreign key fk_student_cus

基本查询 查询所有的列 >SELECT * FROM vendors;

查询指定的列 >SELECT vend_id,vend_name,vend_address,vend_city FROM vendors;

如果查询时需要显示表中的所有列,尽量避免使用通配符(*),而要采用写出所有列名的方式进行查询, 因为采用通配符查询会降低程序的查询性能

mysql数据库基本操作的更多相关文章

  1. day39 mysql数据库基本操作

    什么是数据库 用来存储数据的仓库 数据库可以在硬盘及内存中存储数据 主要学习硬盘中存储数据,因为内存中的数据总有一天会丢失 数据库与文件存储数据区别 (公司的开发是综合内容的) 数据库本质也是通过文件 ...

  2. (三)mysql数据库基本操作

    (1)SQL语句:结构化查询语句 DDL语句 数据定义语言:数据库丶表丶视图丶索引丶存储过程丶函数丶create drop alter DML语句 数据库操作语言:插入数据insert,删除数据del ...

  3. mysql数据库基本操作sql语言

    mysql的启动与关闭 启动 /etc/init.d/mysql start 多实例使用自建脚本启动 2种关闭数据库方法 mysqladmin -uroot -p密码 shutdown #优雅关闭/e ...

  4. Django/MySql数据库基本操作&ORM操作

    数据库配置: #第一步在settings里面 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'dbna ...

  5. Mysql数据库基本操作 (一)

    1.使用mysql数据库的必备要素 a. 安装MySQL服务端 b. 安装MySQL客户端 c. [客户端]连接[服务端] d. [客户端]发送命令给[服务端MySQL]服务的接受命令并执行相应操作( ...

  6. mysql数据库基本操作以及获取数据库强大帮助文档

    MySQL数据库强大帮助文档 mysql 中help等价于\h或者? mysql> ? create database;(查看创建数据库的语法) mysql> ? drop databas ...

  7. MySQL数据库 基本操作语句

    操作MySQL数据库 1.创建数据库 create database 数据库名: 2.查看数据库 show databases: 3.选择指定数据库 use 数据库名: 4.删除数据库 drop da ...

  8. MySQL数据库基本操作以及SQL语句

    连接mysql的语法 mysql -u用户名 -p密码 [-h主机名] [-P端口号] 在一个mysql服务器中, 可以有多个mysql数据库(本质是一个文件夹) 在一个mysql数据库中, 可以有多 ...

  9. MySQL数据库基本操作(四)

    在进行查询之前,我们要先建好关系表,并往数据表中插入些数据.为查询操作做好准备. 五张关系表的创建: #创建并进入数据库: mysql> CREATE DATABASE `info`; Quer ...

随机推荐

  1. java线程学习第一天__低配版的卖面包机

    package Thread;import javax.xml.bind.ValidationEvent;class snacks{    private int  SaledSnacks=0;   ...

  2. asp.net中http接口的开发

    第一篇博客,如有不足请大家多多谅解. 最近一段时间主导着一个app的开发.所有功能都交给后台接口进行处理.采用http,传输的数据类型为json. http接口是一种基于基于TCP.http服务的ap ...

  3. 关于slmgr命令

    需要管理员的权限运行.这个命令可以用来卸载系统的序列号.使系统处于未激活状态.

  4. html、css简述面试题

    hTML, HTTP,web综合问题 1.前端需要注意哪些SEO 合理的title.description.keywords:搜索对着三项的权重逐个减小,title值强调重点即可,重要关键词出现不要超 ...

  5. Java基于TCP的Socket编程练习

    环境:Notpad ++ 6.0 + JDK 6.0.31 问题:使用套接字编写客户-服务器程序,实现客户-服务器交互计算.客户将三角形3个边的长度发给服务器,服务器把计算出的三角形的面积返回给客户. ...

  6. aspnetcore.webapi实践k8s健康探测机制 - kubernetes

    1.浅析k8s两种健康检查机制 Liveness k8s通过liveness来探测微服务的存活性,判断什么时候该重启容器实现自愈.比如访问 Web 服务器时显示 500 内部错误,可能是系统超载,也可 ...

  7. 快速排序及优化(Java实现)

    普通快速排序 找一个基准值base,然后一趟排序后让base左边的数都小于base,base右边的数都大于等于base.再分为两个子数组的排序.如此递归下去. public class QuickSo ...

  8. 【Saltstack】Saltstack简单说明

    [Saltstack] Saltstack是一个服务器集中管理中心平台,可以帮助管理员轻松的对若干台服务器进行统一操作.类似的工具还有Ansible,Puppet,func等等.相比于这些工具,sal ...

  9. ansible自动化运维

    ansible 系统架构 ansible简介 ansible是新出现的自动化运维工具,ansible是一个配置管理和应用部署工具,基于Python开发,集合了众多运维工具(puppet.cfengin ...

  10. http的CA证书安装(也就是https)

    近几年随着安全意识的提高,https流行起来,很多小伙伴不太了解https是什么,其实http和https并没有区别,简单的来说,https就是将http通信进行了加密和解密的一个过程.加上谷歌浏览器 ...