SQL 1 数据库 表的操作
数据库:是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。一句话就是存储数据的仓库
数据库的分类:网络数据库、层级数据库、关系结构数据库。
倘若按照数据库的存储介质来分:关系型数据库(存储在磁盘中)、非关系子型数据库(存储在内存中)
关系模型的组成:
1、关系数据结构:指数据以什么方式来存储,是一种二维表的形式存储
2、关系操作集合:如何来关联和管理对应的存储数据。SQL指令
3、关系完整性约束:数据内部有对应的关联关系,以及数据与数据之间也有对应的关联关系
表内关系:对应的具体列智能存放在对应的数据(不能乱放)
表间约束:自然界实体都是有对应的关联关系(外键)
典型关系数据库:
小型关系数据库:Microsoft Access、SQLite
中型关系数据库:SQL Sever 、Mysql
大型关系数据库:Oracle、DB2
SQL分类:
1、数据查询语言(DQL:data query language)
专门用于查询数据:代表指令为select 、show
2、数据操作语句(DML:data Manipulation language)
专门用于写数据:代表指令:insert、update、delete
3、事务处理语言(TPL)
专门用于事务安全处理:transaction
4、数据控制语言(DCL)
专门用于权限管理:代表指令为grant、revoke
5、数据定义语言(DDL)
专门用于结构管理:代表指令create 、 drop(alter)
启动和停止Mysql服务:
命令行方式:
net start mysql 开启服务
net stop mysql 关闭服务
登录和退出Mysql系统:
登录:
1、 找到mysql.exe(通过cmd控制台:如果在安装的时候指定了mysql.exe所在的路径为环境变量,就可以直接访问;如果没有,那么就必须进入到mysql.exe所在路径)
2、 输入对应的服务器地址:-h:host -h[IP地址/域名]
3、 输入服务器中Mysql监听的端口: -P:port –P:3306
4、 输入用户名:-u:username -u:root
5、 输入密码:-p:password –p:root
连接认证基本语法:
Mysql.exe/mysql -h主机地址 -P端口 -u用户名 -p密码
注意事项
1、 通常端口都可以默认:mysql坚挺的端口通常都是3306
2、 密码的输入可以先输入-p,直接换行,然后再以密文方式输入密码
退出:
断开与服务器的连接:通常Mysql提供的服务器数量有限,一旦客户端用完,建议就应该断开连接。
建议方式:使用SQL提供的指令
Exit; //exit带分号
\q; //quit缩写
Quit:
数据库中常用的几个关键字
Row:行
Column:列(field)
数据库的基本操作
1、创建数据库
基本语法:create database 数据库名称 [库选项] ;
库选项:数据库的相关属性
字符集:charset 字符集,代表着当前数据库下的所有表存储的数据默认指定的字符集(如果当前不指定,那么采用DBMS默认的)
校对集:collate 校对集
Create database 数据库名字 charset 字符集名称;
2、显示数据库
显示全部基本语法:show databases;
显示部分基本语法 show databases like ‘匹配模式’;
_:匹配当前位置单个字符
%:匹配指定位置多个字符
3、显示数据库创建语句
基本语法 show create database 数据库名字;
4、选择数据库
基本语法 use 数据库名字;
5、修改数据库
修改数据库字符集(库选项):字符集和校对集
基本语法 alter database 数据库名称 charset = 字符集;
6、删除数据库
基本语法: drop database 数据库名字;
删除虽简单,但是切记要做好安全操作:确保里面数据没有问题。(重要)
删除数据库之后:对应的存储数据的文件夹也会被删除(opt文件也被删除)
数据表的基本操作
1、创建数据表(要有数据库)
普通创建表
基本语法:create table 表名(字段名 字段类型 [字段属性], 字段名 字段类型 [字段属性],…) [表选项]
赋值已有表结构
基本语法:create table 新表名 like 表名; //只要使用数据库.表名,就可以在任何数据库下访问其他数据库的表名
从已经存在的表复制一份(只复制结构:如果表中有数据不复制)
2、显示数据表
显示所有表 show tables;
匹配显示表 show tables like ‘匹配模式’;
显示表结构 本质含义:显示表中所包含的字段信息(名字,类型,属性等)
Describe 表名
Desc 表名
show columns from 表名
显示创建表语句 查看数据表创建时的语句:此语句看到的结果已经不是用户之前自己输入的。
show create table 表名;
Mysql中有多种语句结束符
;与\g所表示的效果是一样的,都是字段在上排横着,下面跟对应的数据
\G字段在左侧竖着,数据在右侧横着
3、设置表属性
表属性指的就是表选项:engine,charset和collate
基本语法:alter table 表名 表选项 [=] 值;
4、修改表结构
修改表名 rename table 旧表名 to 新表名;
修改表选项 alter table 表名 表选项 [=] 新值
新增字段 alter table 表名 add [column] 新字段名 列类型 [列属性] [位置first/after 字段名]
字段位置:字段想要存放的位置
First:在某某之前(最前面),第一个字段
After 字段名:放在某个具体的字段之后(默认的)
修改字段名:alter table 表名 change 旧字段名 新字段名 字段类型 [列属性] [新位置]
修改字段类型(属性):alter table 表名 modify 字段名 新类型 [新属性] [新位置]
删除字段:alter table 表名 drop 字段名
删除表结构
基础语法:drop table 表名[,表名2…],可以同时删除多个数据表
数据基础操作
1、插入操作 本质含义:将数据以SQL的形式存储到指定的数据表(字段)里面
基本语法:向表中指定字段插入数据
Insert into 表名[(字段列表)] values(对应字段列表)
2、查询操作
查询表中全部数据:select * from 表名; //*表示匹配所有的字段
查询表中部分字段:select 字段列表 from 表名; //字段列表使用逗号“,”隔开
简单条件查询数据:select 字段列表/* from 表名 where 字段名 = 值; //mysql中没有==符号
3、删除操作
基本语法:delete from 表名 [where 条件]; //如果没有where条件:意味着系统会自动删除该表所有数据(慎用)
4、更新操作 更新:将数据进行修改(通常是修改部分字段数据)
基本语法:update 表名 set 字段名 = 新值 [where 条件];//如果没有where条件,那么所有的表中对应的那个字段都会被修改成统一值。
字符集:
Mysql.exe如果告知Mysqld.exe对应的字符集类型为gbk? set names gbk;
快捷方式:set names 字符集
SQL 1 数据库 表的操作的更多相关文章
- SQL SERVER 数据库表同步复制 笔记
SQL SERVER 数据库表同步复制 笔记 同步复制可运行在不同版本的SQL Server服务之间 环境模拟需要两台数据库192.168.1.1(发布),192.168.1.10(订阅) 1.在发布 ...
- 修改SQL Server数据库表的创建时间最简单最直接有效的方法
说明:这篇文章是几年前我发布在网易博客当中的原创文章,但由于网易博客现在要停止运营了,所以我就把这篇文章搬了过来,因为这种操作方式是通用的,即使是对现在最新的SQL Server数据库里面的操作也是一 ...
- 千万级SQL Server数据库表分区的实现
千万级SQL Server数据库表分区的实现 2010-09-10 13:37 佚名 数据库 字号:T | T 一般在千万级的数据压力下,分区是一种比较好的提升性能方法.本文将介绍SQL Server ...
- 对于超大型SQL SERVER数据库执行DBCC操作
原文:对于超大型SQL SERVER数据库执行DBCC操作 对于数据库维护,主要使用DBCC CHECKDB来实现,以下是对大型数据库的使用说明,小型数据库一般直接使用就可以了: 1.2008(200 ...
- EF Core中,通过实体类向SQL Server数据库表中插入数据后,实体对象是如何得到数据库表中的默认值的
我们使用EF Core的实体类向SQL Server数据库表中插入数据后,如果数据库表中有自增列或默认值列,那么EF Core的实体对象也会返回插入到数据库表中的默认值. 下面我们通过例子来展示,EF ...
- 第二百七十八节,MySQL数据库-表内容操作
MySQL数据库-表内容操作 1.表内容增加 insert into 表 (列名,列名...) values (值,值,值...); 添加表内容添加一条数据 insert into 表 (列名,列名. ...
- MySQL数据库(3)_MySQL数据库表记录操作语句
附: MYSQL5.7版本sql_mode=only_full_group_by问题 .查询当前sql_mode: select @@sql_mode .查询出来的值为: set @@sql_mode ...
- SQL Server 数据库表的管理
上一篇文章简单梳理了一下SQL Server数据库的安装和基本操作,这篇文章主要讲述一下数据库表的管理 一.数据库的创建 有关数据库的创建有两种方式,一种是通过视图创建,第二种就是通过T-SQL语句来 ...
- SQL Server 数据库的鼠标操作
在数据库中一些操作用鼠标进行可视化操作更方便快捷 一 SQL Server 开启 任务栏——任务管理器——服务——MSSQLSERVER 开启 我的电脑——控制面板——管理工具——服务——MSSQLS ...
随机推荐
- COUNT 和 IFNULL函数
用COUNT函数: mysql> SELECT count(one) FROM tb_test;+------------+| count(http://www.amjmh.com/v/BIBR ...
- scrapy-splash常用设置
# Splash服务器地址 SPLASH_URL = 'http://localhost:8050' # 开启Splash的两个下载中间件并调整HttpCompressionMiddleware的次序 ...
- EF2:Entity Mysql Sample
1)概念 Entity Framework: 全称ADO.NET Entity Framework,是微软开发的基于ADO.NET的ORM(Object/Relational Mapping)框架.百 ...
- 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_07 Collections工具类_3_Collections集合工具类的方法
第二个参数传递了一个匿名内部类.结果就出现了下面的代码 源码里面有Compare方法,对比两个参数 要重写比较的方法 对对象进行排序 创建学生类.对学生类进行排序 重写Person的ToString方 ...
- jmeter之分布式压测
很多性能大牛说一台机器的压测其实不准确,于是搜索网上的分布式压测练习了一番 目录 1.环境准备 2.控制机和压测机配置 3.执行分布式压测 1.环境准备 1.1准备一台windows作为控制机(mas ...
- 类HashSet
/* * Collection * * List * 有序(存储顺序和取出顺序一致),可以重复 * * Set * 无序(存储顺序和取出顺序不一致),唯一 * * */ import java.uti ...
- BIN转换成HEX格式及HEX转换成BIN的两个函数接口
unsigned char HEX2BYTE(unsigned char hex_ch) { ') { '; } if (hex_ch >= 'a' && hex_ch < ...
- OpenResty json 删除转义符
OpenResty 中删除 json 中的转义符 cjson 在 encode 时 “/” 会自动添加转义符 “\”: 在 decode 时也会自动将转义符去掉.工作中有个特殊需求,需要手工删除转义 ...
- Java 基础-类与面向对象
类 Object 类(java.lang.Object)是所有 Java 类的直接或间接父类. 成员方法及变长参数 方法定义: [public | protected | private] [stat ...
- Zuul网关过滤器中转发头信息不起作用
大家应该都知道在做Zuul网关过滤的时候,如果不在网关过滤时转发头信息,经过网关时头信息就会丢失. 但我用 addZuulRequestHeader转发头信息时,却不起作用,在子服务的controll ...