Mysql中用SQL增加、删除字段,修改字段名、字段类型、注释,调整字段顺序总结

2023-11-02

1.增加一个字段

 代码如下

复制代码

//增加一个字段,默认为空
alter table user add COLUMN new1 VARCHAR(20) DEFAULT NULL; 
//
增加一个字段,默认不能为空
alter table user add COLUMN new2 VARCHAR(20) NOT NULL;



2.批量怎加字段

方法一
这里可以使用事务

 代码如下

复制代码


bagin;                                           //事务开始
alter table em_day_data add f_day_house7 int(11);
alter table em_day_data add f_day_house8 int(11);
alter table em_day_data add f_day_house9 int(11);
alter table em_day_data add f_day_house10 int(11);
commit;                                             //
提交事务,事务结束



事务(transaction)是由一系列操作序列构成的程序执行单元,这些操作要么都做,要么都不做,是一个不可分割的工作单位。

方法二 
mysql
批量为表添加多个字段
alter table 表名 add (字段1 类型(长度),字段2 类型(长度),字段3 类型(长度));

 代码如下

复制代码

alter table em_day_data add (f_day_house11 int(11),f_day_house12 int(11),f_day_house13 int(11));



 
3.
删除一个字段

 代码如下

复制代码

//删除一个字段
alter table user DROP COLUMN new2;


 
4.
修改一个字段

 代码如下

复制代码

//修改一个字段的类型
alter table user MODIFY new1 VARCHAR(10);
//
修改一个字段的名称,此时一定要重新指定该字段的类型
alter table user CHANGE new1 new4 int;



5.批量修改字段名称

 代码如下

复制代码

alter table change 修改前字段名  修改后字段名称 int(11) not null,
change
修改前字段名  修改后字段名称 int(11) not null,
change
修改前字段名  修改后字段名称 int(11) not null,
change
修改前字段名  修改后字段名称 int(11) not null,
change
修改前字段名  修改后字段名称 int(11) not null



例子:

 代码如下

复制代码


alter table em_day_data change f_day_house11 f_day_hour11 int(11) not null,
change f_day_house12 f_day_hour12 int(11) not null,
change f_day_house13 f_day_hour13 int(11) not null,
change f_day_house14 f_day_hour14 int(11) not null,
change f_day_house15 f_day_hour15 int(11) not null,
change f_day_house16 f_day_hour16 int(11) not null,
change f_day_house17 f_day_hour17 int(11) not null



6,添加注释

 代码如下

复制代码

// 可以为表添加注释
ALTER TABLE `table_name` COMMENT'注释'; 
//
为字段添加注释,同样适用于修改
ALTER TABLE `table_name` CHANGE `column_name` `column_name` type(longth) UNSIGNED NULL DEFAULT NULL COMMENT '注释'


7,调整字段顺序:

alter table 表名
change 字段名 新字段名 字段类型 默认值 after 字段名(跳到哪个字段之后)
例子:

 

 代码如下

复制代码

alter table appstore_souapp_app_androidmarket;
change getPriceCurrency getPriceCurrency varchar(50)   default null AFTER getPrice;

 

.比如说要判断表A中的字段C是否存在两个方法:    

(1) 直接查表——有点笨,有点常规

IF EXISTS (    

 SELECT 1 FROM SYSOBJECTS T1    

 INNER JOIN SYSCOLUMNS T2 ON T1.ID=T2.ID    

 WHERE T1.NAME='A' AND T2.NAME='C'    

 )    

   PRINT '存在'    

 ELSE    

  PRINT '不存在'    

(2)  直接判断列长度的函数——短小精悍,可谓精典    

IF COL_LENGTH('A', 'C') IS NOT NULL    

  PRINT N'存在'    

ELSE    

        PRINT N'不存在'    

例如:

 

方法一:     

select   *   from   syscolumns   where   id=object_id('表名')   and   name='列名'    

说明:存在则返回此列的一条说明记录,不存在返回空;    

方法二:    

select   count(*)   from   sysobjects   a,syscolumns   b  where a.id=b.id  and  b.name='flag1'  and a.type='u'   and   a.name='T_Pro_ProductClass'    

说明:存在返回1,不存在则返回0    

 

.判断表是否存在、创建表、并加索引:

三、判断存储过程是否存在,并创建存储过程:

 

.判断函数是否存在并创建函数:

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mysql中用SQL增加、删除字段,修改字段名、字段类型、注释,调整字段顺序总结 的相关文章

  • MySQL~数据库的设计

    二 数据库的设计 1 多表之间的关系 1 1 三种分类 一对一 分析 一个人只有一个身份证 一个身份证只能对应一个人 如 人和身份证 一对多 如 部门和员工 分析 一个部门有多个员工 一个员工只对应一个部门 多对多 如 学生和课程 分析 一
  • SQL语句中case、when、then的使用

    使用语法为 select pro id AS id pro title AS title pro name AS name pro ltime AS ltime pro place AS place pro linkman AS linkm
  • MySQL字段约束条件,外键约束条件,表关系

    目录 字符编码与配置文件 统一字符编码 存储引擎 修改存储引擎的方式 自定义选项存储引擎 不同存储引擎产生的表文件有几个 MERGE InnoDB Archive BLACKHOLE blackhole与memory存取数据的特征 Blac
  • 数据库---MySQL的命令行命令(在已创建的表中添加主键、自增、默认值)

    1 MySQL命令行创建一个订单表 mysql gt create table order table gt order id int not null gt price float 10 2 gt user id int 创建成功 效果如
  • MySQL高级学习笔记

    目录 1 MySQL数据库逻辑架构 1 网络连接层 2 服务层 MySQL Server 1 连接池 Connection Pool 2 系统管理和控制工具 Management Services Utilities 3 SQL接口 SQL
  • MySQL——事务和视图

    2023 9 17 本章开始介绍TCL语言 Transaction Control Language 事务控制语言 事务 事务的概念 一个或一组sql语句组成一个执行单元 这个执行单元要么全部执行 要么全部不执行 事务的特性 ACID 原子
  • MySql 简介

    目录 数据存取演变历史 数据库软件应用史 数据库的本质 数据库的分类 1 关系型数据库 关系型数据库有哪些 2 非关系型数据库 非关系型数据库有哪些 MySQL简介 基本使用 系统服务制作 密码相关操作 SQL与NoSQL 数据库的概念 数
  • Java面向对象编程

    如下SQL语句中 可能返回null值 1 select count from t1 2 select max col1 from t1 3 select concat max max col1 from t1 A 1 可能 2 和 3 不可
  • mysql 强制使用索引和强制不使用索引

    前一段面试时问过这个问题 当时不太懂 今天刚好看到这一块的内容就梳理下 首先说个概念 SQL提示 就是在sql中加入我自己的提示来达到我想要的效果 关于索引有三种sql提示 use index index name 希望mysql参考的索引
  • 黑马程序员MySQL-视图SQL笔记

    对应课程地址 视图 准备数据 create database if not exists mydb6 view use mydb6 view create table dept deptno int primary key dname va
  • 数据库的导入导出及授权

    目录 数据库导出 数据库导入 数据库授权 1 忘记root密码 2 创建表时 colume使用的时 mysql 保留字导致报错 数据库导出 1 导出数据库为bname的表结构 其中用户名为root 密码为dbpasswd 生成的脚本名为db
  • MySQL 事务隔离级别,读现象,MVCC

    目录 数据库读现象 事务隔离级别 错误日志 详情参见 MySQL日志管理 JasonJi 博客园 mvcc多版本并发控制 多版本并发控制mvcc multi version concurrency controll 基于多版本的并发控制 在
  • MySQL——命令行客户端的字符集问题

    原因 服务器端认为你的客户端的字符集是utf 8 而实际上你的客户端的字符集是GBK 查看所有字符集 SHOW VARIABLES LIKE character set 解决方案 设置当前连接的客户端字符集 SET NAMES GBK
  • Mysql中having语句与where语句的用法与区别

    分析 回答 我们在写sql语句的时候 经常会使用where语句 很少会用到having 其实在mysql中having子句也是设定条件的语句与where有相似之处但也有区别 having子句在查询过程中慢于聚合语句 sum min max
  • MySQL处理大量数据的一些方法

    一 复刻一张表的数据到另一张表 结构相同 从当前表查询所有数据到快照表 注 快照表只比当前表多一个快照时间字段CKTIME 由于使用框架查询出来之后再插入到快照表会牺牲掉很大性能 所以直接采用sql脚本的方式将数据迁移到快快照表 SQL如下
  • mysql Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’

    mysql Can t connect to local MySQL server through socket var lib mysql mysql sock 今天在linux中安装了mysql但在连接时出现Can t connect
  • MySQL创建用户的三种方法

    前言 mysql创建用户的方法分成三种 INSERT USER表的方法 CREATE USER的方法 GRANT的方法 一 账号名称的构成方式 账号的组成方式 用户名 主机 所以可以出现重复的用户名 跟其他的数据库不一样 用户名 16字符以
  • MySQL数据库之DDL操作

    1 数据库管理系统的一些常用术语 学习数据库首先要清楚数据库的一些常用术语 行 又叫做记录 每一行都是一组相关的数据 列 又叫做字段 每一列都是一组数据类型相同数据 主键 是唯一的 在一张数据表中只有一个主键 且不能为空 外键 主要用于关联
  • 安装MySQL出现Job for mysqld.service failed because the control process exited with error code

    这是因为无法再次初始化 解决办法 rm rf var lib mysql 然后重启service
  • MySQL数据库 DCL

    目录 DCL概述 管理用户 权限控制 DCL概述 DCL英文全称是 Data Control Language 数据控制语言 用来管理数据库用户 控制数据库的访 问权限 管理用户 1 查询用户 select from mysql user

随机推荐

  • JS子窗口向父窗口传值

    方法一 用模式窗口 returnValue是javascript中html的window对象的属性 目的是返回窗口值 当用window showModalDialog函数打开一个IE的模式窗口 模式窗口就是子窗口 打开后不能操作父窗口 只能
  • 斐波那契数列求和——C语言(小白版)

    斐波那契数列求和 C语言 小白版 题目要求 斐波那契数列 1 1 2 3 5 8 13 21 34 不难发现当n gt 2时 an an 1 an 2 要求 当屏幕输入n n gt 2 时 输出前n项以及前n项的和 注意 我们不使用递归 也
  • 使用Qt创建模拟时钟

    main cpp include
  • Java的数据结构之枚举、向量、栈、字典

    Java工具包提供了强大的数据结构 在Java中的数据结构主要包括以下几种接口和类 枚举 Enumeration 位集合 BitSet 向量 Vector 栈 Stack 字典 Dictionary 哈希表 Hashtable 属性 Pro
  • Java Character 类

    Character 类用于对单个字符进行操作 Character 类在对象中包装一个基本类型 char 的值 实例 char ch a Unicode 字符表示形式 char uniChar u039A 字符数组 char charArra
  • 实战演习(五)——人脸识别(CNN)简单演练

    笔者是一个痴迷于挖掘数据中的价值的学习人 希望在平日的工作学习中 挖掘数据的价值 找寻数据的秘密 笔者认为 数据的价值不仅仅只体现在企业中 个人也可以体会到数据的魅力 用技术力量探索行为密码 让大数据助跑每一个人 欢迎直筒们关注我的公众号
  • 运输层协议概述

    紫色代表一级目录 粉红代表二级目录 蓝色代表三级目录 红色代表关键字 橙色代表说明 运输层协议概述 进程之间的通信 从通信的角度看 运输层向它上面的应用层提供通信服务 它属于面向通信部分的最高层 从信息处理的角度看 运输层是用户功能中的最低
  • 【陈工笔记】# LaTeX中,单元格数据居中方式 #

    良好的习惯 才不会让努力白白浪费 第一种方式 使用 p 1 5cm lt centering 指定单元格大小并设置对齐 其中p 1 5cm 指定大小 lt centering 指定对齐方式 使用 lt centering 时 需引入宏包 u
  • 点云学习---入门

    1 点云数据格式 常见的点云格式包括 las 用于激光雷达点云及其他任何三维xyz元组 是一种用于交换三维点数据的公共文件格式 文件主要由4部分组成 包括公共头块 包含版本号 缩放因子 偏移值 时间 范围等 变长记录 包含变长类型数据 坐标
  • Windows环境Mycat数据库分库分表中间件部署

    Windows环境Mycat数据库分库分表中间件部署 标签 数据库中间件mycat分布式集群 2016 08 23 00 17 957人阅读 评论 0 收藏 举报 分类 分布式开发技术 12 版权声明 本文为博主原创文章 未经博主允许不得转
  • 基于hadoop的电影推荐系统的实现

    1 设计任务 通过编写代码 设计一个基于Hadoop的电影推荐系统 通过此推荐系统的编写 掌握在Hadoop平台上的文件操作 数据处理的技能 工程文件放在百度网盘了 运行run py即可启动程序 由于代码年份久远 我已尽量打了注释 大家可以
  • mysql wait_timeout=_Mysql的wait_timeout解决_MySQL

    bitsCN com Mysql的wait timeout解决 问题 ssh mysql项目 数据源为dbcp 隔夜后访问会出现下列错误 1 Could not open Hibernate Session for transaction
  • Mac系统下vscode快捷键打开控制台?

    调试控制台 command shift Y 终端 control
  • 『PyQt5-Qt Designer篇』| 09 Qt Designer中分割线和间隔如何使用?

    09 Qt Designer中分割线和间隔如何使用 1 间隔 1 1 水平间隔 1 2 垂直间隔 2 分割线 2 1 水平线 2 2 垂直线 3 保存并执行 1 间隔 间隔有水平间隔和垂直间隔 1 1 水平间隔 拖动4个按钮 并设置为水平布
  • 分布式架构知识体系必读

    1 问题 1 何为分布式何为微服务 2 为什么需要分布式 3 分布式核心理论基础 节点 网络 时间 顺序 一致性 4 分布式是系统有哪些设计模式 5 分布式有哪些类型 6 如何实现分布式 2 关键词 节点 时间 一致性 CAP ACID B
  • MFC入门基础(十)静态文本框()、编辑框(Edit Control)

    一 静态文本框的使用 1 如何动态创建静态文本框 不是使用对话框模板进行拖动 而是手动代码进行创建 先看下 函数Create CStatic类的方法Create virtual BOOL Create LPCTSTR lpszText 静态
  • 实战:Springboot集成Sentinel实现流量控制、熔断降级、负载保护

    文章目录 前言 知识积累 流量控制 负载保护 熔断降级 官方文档 实战演练 部署sentinel dashboard 直接jar包部署 docker compose编排 springboot集成sentinel 基础架构搭建 sentine
  • 【RPA技术】UI分析器与可视化树:解决界面元素获取难题

    一般人在使用计算机的时候 都是在和操作系统的图形界面打交道 图形界面各有各的特色 当我们用鼠标点击时 其实鼠标下面都是一个小的图形部件 我们把这些图形部件称为 界面元素 在UiBot中 界面元素的作用 就是作为 有目标 的命令中的目标使用
  • CTF show WEB13

    题目地址 http ctf show 进入题目是个文件上传的题目 尝试了一番文件上传漏洞利用的方法后 没有啥突破 可能有啥隐藏的目录 尝试源码泄露利用的方法 在输入upload php bak时成功下载下来源码 bak文件是备份文件 这里列
  • Mysql中用SQL增加、删除字段,修改字段名、字段类型、注释,调整字段顺序总结

    1 增加一个字段 代码如下 复制代码 增加一个字段 默认为空alter table user add COLUMN new1 VARCHAR 20 DEFAULT NULL 增加一个字段 默认不能为空alter table user add