SQL--数据表--基本操作
表操作
表与字段是密不可分的.
新增数据表
Create table [if not exists] 表名(字段名字 数据类型,字段名字 数据类型 --最后一行不需要逗号) [表选项] ;
if not exists: 如果表明不存在,那么就创建,否则不执行创建代码:检查功能
表选项:控制表的表现
字符集:charset/character set 具体字符集; -- 保证表中数据存储的字符集
校对集:collate 具体校对集;
存储引擎:engine 具体的存储引擎(innodb 和 myisam)

任何一个表的设计都必须指定数据库.
方案1:显示的指定表所属的数据库
Create table 数据库名.表名(); -- 将当前数据表创建到指定的数据库下

方案2:隐式的指定表所属数据库:先计入到某个数据库环境,然后这样创建的表自动归属到某个指定的数据库.
进入数据库环境:use 数据库名字;

当创建数据表的SQL指令执行之后,到底发生了什么?
1. 指定数据库下已经存在对应的表
2. 在数据库对应的文件夹下,会产生对应表的结构文件(跟存储引擎有关系)

查看数据表
数据库能查看的方式,表都可以查看.
1. 查看所有表:show tables ;

2. 查看部分表:模糊匹配:show tables like 'patten' ;

3. 查看表的创建语句 : show create table 表名 ;


4. 查看表结构:查看表中的字段信息
desc/describe/show columns 表名 ;

修改数据表
表本身存在,还包含字段:表的修改分为两个部分:修改表本身和修改字段
修改表本身
表本身可以修改:表名 和 表选项
修改表名:rename table 老表名 to 新表名 ;

修改表选项:字符集,校对集和存储引擎
alter table 表名 表选项 [=] 值 ;

修改字段
字段操作很多:新增,修改,重名 ,删除
新增字段
alter table 表名 add [column] 字段名 数据类型 [列属性] [位置]
位置:字段名可以存放表中的任意位置
first:第一个位置
after:在哪个字段之后:after 字段名;默认的是在最后一个字段之后


修改字段 : 修改通常是修改属性或者数据类型
alter table 表名 modify 字段名 数据类型 [属性] [位置] ;

重命名字段
alter table 表名 change 旧字段名 新字段名 数据类型 [属性] [位置] ;

删除字段
alter table 表名 drop 字段名;

小心:如果表中已经存在数据,那么删除字段会清空该字段的所有数据(不可逆)
删除数据表
Drop table 表名1,表名2....; -- 可以一次性删除多张表

当删除数据表的指令之后发生了什么?
1. 在表空间中,没有了指定的表(数据也没有了)
2. 在数据对应的文件夹下,表对应的文件(与存储引擎有关)也会被删除
SQL--数据表--基本操作的更多相关文章
- MySQL:数据表基本操作
数据表基本操作 注意点: 1.数据表中已经有数据时,轻易修改数据类型,有可能因为不同的数据类型的数据在机器 中存储的方式及长度并不相同,修改数据类型可能会影响到数据表中已有的数据类型. 2. 数据表 ...
- asp.net 查询sql数据表的网页模板
最近因为工作需求,要制作一个网页模板,主要是用于快速开发,可以查询Sql数据表信息的模板, 昨天做好了,这个只是一个Demo,但是功能已经齐全了, 开发新的网站时,需要新增一个xml,复制粘贴网页的前 ...
- MySQL系列:数据表基本操作(2)
1. 指定数据库 mysql> use portal; 2. 数据库表基本操作 2.1 查看数据表 mysql> show tables; +------------------+ | T ...
- 关于SQL 数据表中的密码加密
首先,都知道一个字节(byte)等于八位二进制数.在数据表中将密码字段设置为binary类型,再结合哈希散列运算可以实现密码加密. 下面介绍下binary 和 varbinary: binary 和 ...
- MySQL 5.6学习笔记(数据表基本操作)
1. 创建数据表 1.1 最基本的语法 CREATE TABLE tbl_name (col_name column_definition,...) [table_options] -column_d ...
- MySQL学习(一) 数据表基本操作
创建数据库:create database db_name 查看数据库结构:show create database db_name 删除数据库:drop database db_name 查看数据库 ...
- mysql学习——数据表基本操作1
选择数据库 创建数据表 包括字段名和数据类型两部分 查看数据表 使用主键约束 主键又称主码,能够唯一的表示表中的一条记录,分为单字段主键与多字段联合主键 单字段主键 定义主键的两种方式: 1.在最后指 ...
- sql数据表的设计思路
好的表结构分的比较细致,个人理解大概主要分为主表.明细.历史记录表.中间表,辅助表结构应该分为:类型表.状态表.统计表.统计明细表等.为了一个功能加那么多表实在是多余,如果写一个非常复杂的业务逻辑还是 ...
- 查找SQL数据表或视图中的字段属性信息
一.只支持表,非常牛逼的 SELECT a.name,(case when (SELECT count(*) FROM sysobjects WHERE (name in (SELECT name F ...
- qt: 获取sql数据表的所有的字段;
1. mysql 数据库: 转载: https://www.cnblogs.com/fuqia/p/8994080.html mysql安装成功后可以看到已经存在mysql.information_s ...
随机推荐
- java学习进度
上周日玩的比较high,忘记写进度报告,今天补上.通过这些天的学习,我对java有了初步的认识,java和c有很多的不同和相同之处,然后就是java的代码在记事本里写,等慢慢深入之后又可以用eclip ...
- 宽度优先搜索BFS(Breadth-First-Search)
Breadth-First-Search 1. 与DFS的异同 相同点:搜索所有可能的状态. 不同点:搜索顺序. 2. BFS总是先搜索距离初始状态近的状态,它是按照:开始状态->只需一次转移就 ...
- unitest 测试集 实例
-->baidy.py #coding=utf-8from selenium import webdriverfrom selenium.webdriver.common.by import B ...
- Jamie and Tree CodeForces - 916E (换根)
大意: n节点树, 每个点有权值, 三种操作: 1,换根. 2, lca(u,v)的子树权值全部增加x. 3, 查询子树权值和. 先不考虑换根, 考虑子树x加v的贡献 (1)对fa[x]到根的树链贡献 ...
- Linux下查看相应端口的进程
1)查找被占用的端口:netstat -tln | grep 7777 2)查看被占用端口的PID:lsof -i:7777 3)禁用使用kill -9 PID来禁用端口进程
- 谈一谈HashMap类2
1.由一个小案例引出本博文的讨论 public class Demo1 { public static void main(String[] args) throws Exception { Stud ...
- 【Java】【7】枚举类
用处:规范了参数的形式,更简洁易懂 实例: //消息类型 public enum MessageTypeEnum { AdminReward(1, "官方消息"), StoreRe ...
- SQLServer清空表
TRUNCATE TABLE TABLE_NAME 这个不记日志. delete table table_name 这个记日志 drop table table_name 删除表 TRUNCATE 语 ...
- C++ string::size_type
从逻辑上讲,size()成员函数应该似乎返回整型数值,但事实上,size操作返回是string::size_type类型的值.string类类型和其他许多库类型都定义了一些配套类型(companion ...
- docker 安装nginx、php-fpm
运行环境: 创建目录: mkdir -p /Users/sui/docker/nginx/conf.d && mkdir /Users/sui/www && cd /U ...