MySql数据库的一些基本操作---------------SQL语法
MySql数据库是比较常用的关系型数据库,操作用的是sql语句,下面来说一说MySql的一些基本操作
MySql数据库是一种C/S型的模式,即客户端/服务器端,对应到具体应用上,便是bin目录下的mysql.exe和mysqld.exe,mysql是客户端,mysqld是服务器端。
所以先要启动mysqld.exe服务,然后用mysql.exe登陆。
1.mysql登陆
打开cmd命令窗口,输入登陆命令:
mysql -h主机ip/域名 -P端口 -u用户名 -p密码
在本地登陆的话,一般命令是:mysql [-hlocalhost -P3306] -u用户名 -p密码 [表示可以没有]

一般-p后面不直接加密码,而是直接-p就可以了,下一步就会提示输入密码,是以密文的方式。
2.数据库
1.创建数据库:create database 数据库名字 [数据库选项] []表示可选
例子:create database person charset=utf8; (要以分号结束) //创建一个person数据库,使用字符集utf8
create database person //创建一个person数据库,字符集是默认的
2.查看所有数据库:show databases;
3.查看部分数据库:show databases like '匹配模式' // ('_'表示任意单个字符,’%‘表示任意多个字符,其实就是占位符)
例子:show databases like 'f_le'; //可以匹配的数据库可以是file fole fple fyle......
show databases lke '%s'; //匹配以s结尾的数据库,可以是sys,files,words.....
4.删除数据库:drop 数据库名字;
2.表操作
在进行表操作时,要先选择要操作的数据库,语法: use 要使用的数据库名字;
1.创建表:create table 表名 (字段名 字段类型)
例子:create table student (id int,name varchar(4),age int);//创建一个student表
2.查看所有表:show tables; //查看所有表
show tables like 匹配模式 //查看部分表,与查看数据库一样
3.查看表结构:desc 表名;
4.表字段操作:alter table 表名 add column 新字段 字段类型; //新增一个字段
alter table 表名 change 旧字段名 新字段名 旧字段属性; //改变字段名字
alter table 表名 modify 字段名 新类型; //修改字段的类型
alter table 表名 drop 字段名; //删除字段
5.表重命名:rename table 旧表名 to 新表名;
6.删除表: drop table 表1,表2,....;
3.表内容操作
1.查看表内容:select * from 表名;// “*” 是通配符,表示所有。查看表所有的内容
select (字段名1,字段名2...) from 表名; //查看对应字段的内容
select (字段列表) from 表名 where 条件; //条件查询,内容比较多,以后再说.
例子:select * from student where age=18; /查询所有年龄为18的学生的数据
2.插入:insert into 表名 [字段列表](没写的话,默认在全部字段插入数据) values (),(),(),().....;
例子:insert into student (name,age) values ('张三',18),('李四',20);
3.删除:delete from 表名 where 条件; //如果没写条件的话会把所有数据都删除了(慎用)
例子:delete from student where age=18; //删除所有年龄为18的学生的数据
4.更新(修改):update 表名 set 字段名 = 新的值 where 条件; //不写条件默认全部修改
4.字段类型
1.整型
tinyint //1个字节大小
smallint //2个字节大小
mediumint //3个字节大小
int //四个字节大小
bigint //8个字节大小
2.浮点型
float // 4字节 精确度7位,超过会四舍五入
double //8字节大小 精确度15位,超过会四舍五入
decimal //定点型小数,精确度高
3.字符串类型
char(L) //定长字符 L表示存放的字符个数 (0-255) //定长的意思是无论装入多少个字符,空间都按定义时分配
varchar(L) //变长字符 0-65535 会根据实际存放的字符进行分配空间
text(n) //文本类型,n表示字节数,一般存放字符数超过255都应该用问文本类型
bolb //存放二进制文件的
4.日期时间类型
date //日期, 3字节大小,格式为 yyyy-mm-dd 从 1000-01-01 到 9999-12-12
time // 时间,3字节大小,格式 hh:ii:ss 从 -839:59:59 到 838:59:59
datetime //日期时间,8字节大小 格式 yyyy-mm-dd hh:ii:ss
timestamp //时间戳,会自动更新 格式 yyyy-mm-dd hh:ii:ss
year //年 1900-2155 有两种插入方式 自行百度。
5.enum(枚举)
enum('男’,‘女') //只能取其中之一的值,和C语言的枚举差不多,都是用一个整型数据代表
//比如 ’男' 是1,‘女'是2 在插入数据时可以用1代表男,2代表女
-------------
其实sql语句还有很多用法,需要自己多练,多查,这里只是列举一些常用的基础用法。
MySql还用很多其它高级用法,以及一些基础知识,下一篇再说。
MySql数据库的一些基本操作---------------SQL语法的更多相关文章
- mysql数据库表的基本操作sql语句总结
1,命令行登录命令 mysql -h localhost -u root -p C:\Users\lenovo>mysql -u root -p Enter password: ***** We ...
- mysql用户授权、数据库权限管理、sql语法详解
mysql用户授权.数据库权限管理.sql语法详解 —— NiceCui 某个数据库所有的权限 ALL 后面+ PRIVILEGES SQL 某个数据库 特定的权限SQL mysql 授权语法 SQL ...
- Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句 # python3 # author lizm # datetime 2018-02-01 10:00:00 # -*- co ...
- 面向对语法读取mysql数据库数据例:$db->query($sql)、$result->fetch_array()
前面我们介绍过如何使用面向对象语法连接mysql数据库,今天技术人员继续讲解如何读取数据.虽然与以前面向过程类似,但还是有些不同,需要大家用心了解. echo '面向对象语法连接数据库test db ...
- MySQL数据库 介绍,安装,基本操作
- 数据库介绍: 1.随意存放在一个文件中的数据,数据的格式千差万别 tank|123 jason:123 sean~123 2.软件开发目录规范 - Project: - conf - bin - ...
- MySql数据库基本介绍和基本语法
一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系统中,关系型数据库使用最为 ...
- MySQL数据库(六)-- SQL注入攻击、视图、事物、存储过程、流程控制
一.SQL注入攻击 1.什么是SQL注入攻击 一些了解sql语法的用户,可以输入一些关键字 或合法sql,来导致原始的sql逻辑发生变化,从而跳过登录验证 或者 删除数据库 import pymysq ...
- MySQL数据库(六) —— SQL注入攻击、视图、事物、存储过程、流程控制
SQL注入攻击.视图.事物.存储过程.流程控制 一.SQL注入攻击 1.什么是SQL注入攻击 import pymysql conn = pymysql.Connect( user="roo ...
- MySQL数据库的一些基本操作及注释
--Created by mac on 2017/1/4. -- MySQL数据库 -- ****************** 一. 连接数据库服务器的基础命令 ******************* ...
随机推荐
- 一条SQL语句求每月连续低温时间
近期为某个项目写存储过程做统计.其中有个是这样的: 求每个月至少连续3个小时低于某个温度值的时间(小时). 假设有个全年温度表: CREATE TABLE #t(m INT, h INT ,t DEC ...
- Codeforces Round #332 (Div. 2)C. Day at the Beach 树状数组
C. Day at the Beach One day Squidward, Spongebob and Patrick decided to go to the beach. Unfortuna ...
- JS基础之开篇
JavaScript是解释型语言,无需编译就可以随时运行,这样哪怕语法有错误,没有语法错误的部分还是能正确运行. 1.JavaScript能做什么? 01, javaScript可以进行表单验证 如果 ...
- bzoj1123 [POI2008]BLO——求割点子树相乘
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1123 思路倒是有的,不就是个乘法原理吗,可是不会写...代码能力... 写了一堆麻麻烦烦乱七 ...
- Struts2标签库常用标签
转自:https://blog.csdn.net/q547550831/article/details/53326042
- git 设定全局ignore
创建: 2017/08/08 位置: $HOME/.config/git/ignore git/ignore 要自建 内容 https://github.com/github/gitignore ...
- 脑洞大开加偏执人格——可持久化treap版的Link Cut Tree2
试了一下先上再下的Treap方式,很高兴,代码变短了,但是,跑的变慢了!!!其实慢得不多,5%左右.而且这个版本的写法不容易写错..只要会一般可持久化Treap的人写着都不难...就是相对于(压行的) ...
- MVC简单的解释
MVC (Model-View-Controller,模型视图控制器)是一种软件的设计模式,它最早是由 20 世纪 70 年代的 Smalltalk 语言提出的,即把一个复杂的软件工程分解为三个层 ...
- Android 新浪微博开放平台应用 android签名怎么获得
方法一: 通过命令行,直接生成MD5值 keytool -list -v -keystore keystorefile -storepass 其中keytool为jdk自带工具:keystorefil ...
- 启动Mysql时,提示error 2002 的解决办法
故障描述 启动时提示ERROR 2002(HY000) 启动服务时,提示the server quit without updating PID file. 解决方法一: 1.由于mysql是卸载后重 ...