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数据库 -- ****************** 一. 连接数据库服务器的基础命令 ******************* ...
随机推荐
- MySQL 相邻两条数据相减
<!-- 计算每两次消费的间隔天数 --> SELECT B.MEN_ID,TIMESTAMPDIFF(DAY,B.PRE_DATE,B.CURR_DATE) AS DAYS FROM ( ...
- oc64--协议2@protocol
// // SportProtocol.h // day17 // #import <Foundation/Foundation.h> @protocol SportProtocol &l ...
- Android EditText得到和失去焦点时,自定义处理内容
当android的Edittext得到/失去焦点时,需要自定义一些处理内容时,需要对EditText对象的Focus进行监听处理. 在Activity中,做以下处理: 1.取得EditText对象. ...
- Coursera Algorithms week3 归并排序 练习测验: Merging with smaller auxiliary array
题目原文: Suppose that the subarray a[0] to a[n-1] is sorted and the subarray a[n] to a[2*n-1] is sorted ...
- VBA 字符串处理函数集
转自:http://blog.csdn.net/jyh_jack/article/details/2315345 mid(字符串,从第几个开始,长度) 在[字符串]中[从第几个开始]取出[长度个字符 ...
- GYM 100741A Queries(树状数组)
A. Queries time limit per test 0.25 seconds memory limit per test 64 megabytes input standard input ...
- Springboot统一跨域配置
前言:跨域是什么? 要知道跨域的概念,我们先明确怎样算是同一个域: 同一个域指的是同一协议,同一ip,同一端口 如果这三同中有一者不同就产生了跨域. 在做前后端分离的项目中,通过ajax请求后台端口时 ...
- ubuntu 软件桌面图标创建
sublime text 的安装目录是:/usr/local/sublimetext $cd 桌面 $vim Sublime\ Text.desktop 添加如下内容: [Desktop Entry] ...
- PHP 二维数组排序 可以按指定 键值排序
<?php header("Content-Type:utf-8"); $arr = array( 0 => array( 'name' => '国际原油价格', ...
- File入门及路径名问题
package com.io.file; import java.io.File; /** * @author 王恒 * @datetime 2017年4月20日 下午2:53:29 * @descr ...