mysql修改字段默认值_Mysql 修改字段默认值

mysql修改字段默认值_Mysql 修改字段默认值环境描述 MySQL5 7 13 问题描述 建表的时候 users info 表的 role id 字段没有默认值 后期发现注册的时候 需要提供给用户一个默认角色 也就是给 role id 字段一个默认值 当前 users info 表的 role id 在创建表的时候 没有设置默认值 数据库自动设置为空 原先建表语句 role id 字段 修改字段默认值 role id 默认值设置为 1mysql gt alte

环境描述:

MySQL 5.7.13

ebd37416d97292a91d0f4ad2e6218426.png

问题描述:

建表的时候,users_info表的role_id字段没有默认值,后期发现注册的时候,需要提供给用户一个默认角色,也就是给role_id字段一个默认值。

当前users_info表的role_id 在创建表的时候,没有设置默认值,数据库自动设置为空。

1e1787b65112fd6637506c567a596886.png

原先建表语句:role_id字段。

c18b22ca13f107758576dac1215511aa.png

修改字段默认值:role_id默认值设置为:1

mysql> alter table users_info alter column role_id set default 1;

测试:

mysql> insert into users_info(username,passwd,phone_number,email) values(‘赵六’,md5(”),”,’@.com’);

5bd8b4881394852d87ace04320d6010a.png

修改字段默认值语法:

alter table 表名 alter column 字段名 drop default; (若本身存在默认值,则先删除)

alter table 表名 alter column 字段名 set default 默认值;(若本身不存在则可以直接设定)

测试代码:

–由于users_info表创建的时候,添加了外键约束,所以,小伙伴们测试的话,建议先建个角色表roles

CREATE TABLE roles(

role_id smallint unsigned primary key auto_increment, #角色id

role_name varchar(20) not null unique #角色名称

)ENGINE=InnoDB DEFAULT CHARSET=utf8;

— 创建用户信息表 role_id字段没设默认值

CREATE TABLE `users_info` (

`user_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,

`username` varchar(20) NOT NULL,

`passwd` char(60) NOT NULL,

`phone_number` varchar(11) DEFAULT NULL,

`email` varchar(60) DEFAULT NULL,

`role_id` smallint(5) unsigned,

`create_time` datetime NOT NULL default now(),

PRIMARY KEY (`user_id`),

UNIQUE KEY `username` (`username`),

KEY `fk_role_id` (`role_id`),

CONSTRAINT `fk_role_id` FOREIGN KEY (`role_id`) REFERENCES `roles` (`role_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

— 插入几条测试数据

insert into roles(role_name) values(‘初始注册角色’);

insert into users(username,passwd,phone_number,email) values(‘张三’,md5(”),”,’@.com’)

SQL修改字段默认值、获取字段默认值

一.SQL修改字段默认值 alter table 表名 drop constraint 约束名字 说明:删除表的字段的原有约束 alter table 表名 add constraint 约束名字 D …

Sqlserver添加加字段、删除字段、修改字段类型、修改字段名、修改字段默认值

参考:https://www.cnblogs.com/pangpanghuan/p/6432331.html 初始化表: –.添加字段 –1.1.为null alter table DataTab …

mysql删除、修改字段默认值

alter table表名alter column字段名drop default; (若本身存在默认值,则先删除) alter table 表名 alter column 字段名 set defaul …

MYSQL SQL 语句修改字段默认值

alter table tablename alter column drop default; (若本身存在默认值,则先删除) alter table tablename alter column …

sql 修改字段默认值

1.查出该字段的约束名称 SELECT c.name FROM sysconstraints a INNER JOIN syscolumns b on a.colid=b.colid INNER JO …

sql的基本用法——-修改字段默认值和属性

修改表中已有的字段属性 ALTER TABLE 表名 ALTER COLUMN 字段名 varchar(500) –sqlserver建表表时设置字段的默认值 create table 表(id i …

mysql字段默认值不生效的问题解决(上)

在项目中使用mybatis做为持久层框架,mysql数据库.项目上线前,DBA要求我们将每张数据库表中的字段都设置默认值和not null.之前项目中有一些insert语句是将表中所有字段都列出来,然 …

mysql修改字段的语句写法

http://www.111cn.net/database/mysql/50678.htm 下面为您介绍的sql语句都是mysql修改字段操作中的一些常用语句,如果您是一个刚刚接触mysql数据库的新 …

mysql设置datetime默认值为now

mysql设置datetime默认值为now MYSQL-TIMESTAMP数据类型的默认值与自动更新问题 http://blog.csdn.net/scogeek/article/details/5 …

随机推荐

javascript判断对象

var assert = require(‘chai’).assert; describe(‘Array’, function() { describe(‘#indexOf()’, function( …

CodeForces 450B 矩阵

A – Jzzhu and Sequences Time Limit:1000MS     Memory Limit:KB     64bit IO Format:%I64d & …

C#一些知识点:委托和事件的区别

在C#中,委托和事件是比较容易混淆的两个知识点,本篇博客就记录一下委托和事件之间的区别. 定义上的区别 委托:委托实际上是一个类,用来表示一个函数,可以理解为C++中的函数指针. 事件:事件是一个修饰 …

JS控制文本框中的密码显示/隐藏功能

[荐]JS控制文本框中的密码显示/隐藏功能_网页代码站(www.6a8a.com)

struts2.5框架使用通配符指定方法(常见错误)

在学习struts框架时经常会使用到通配符调用方法,如下:

Machine Learning and Data Mining Lecture 1

Machine Learning and Data Mining Lecture 1 1. The learning problem – Outline     1.1 Example of mach …

以太坊中的账户、交易、Gas和区块Gas Limit等概念

什么是账户 以太坊账户与我们所知的账户概念有一定相似之处,却又有很大的区别,更不同于比特币中UTXO. 账户分两类: – 外部拥有账户(EOA),也就是普通账户 – 合约账户 普通账户 所谓的普通账户 …

重识linux-linux的账号与用户组

重识linux-linux的账号与用户组 1 账号 每个登录linux系统的用户都有 uid和gid uid就是用户ID,gid就是组ID 在系统上存账号信息的文件是 /etc/passwd 存密码相 …

MySQL表名大小写设置

1 简介    在MySQL中,数据库对应数据目录中的目录.数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于存储引擎).因此,所使用操作系统的大小写敏感性决定了数据库名和表名的大小 …

Java学习(正则表达式、Date类、DateFormat类、Calendar类)

一.正则表达式 1.概念:英语:Regular Expression,在代码中常简写为regex.正则表达式,是一个字符串,使用单个字符串来描述.用来定义匹配规则,匹配一系列符合某个句法规则的字符串. …

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/229691.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午4:06
下一篇 2026年3月16日 下午4:07


相关推荐

  • linux的rpm卸载,linux rpm卸载参数

    linux的rpm卸载,linux rpm卸载参数linuxrpm 卸载参数本站整理发布时间 2009 03 1015 38 48 作者 jb51 net 我要评论 rpm 卸载参数 test 卸载测试 nodeps 不检查依赖 noscripts 不执行脚本程序 notriggers 不执行触发程序 justdb 仅修改数据库 force 强制 RPM 卸载软件包 并不是简单地将原来安装的文

    2026年3月18日
    2
  • php常用数据结构

    php常用数据结构

    2021年10月10日
    61
  • IDEA汉化之2021版本

    IDEA汉化之2021版本打开最新版本的IDEA后在浏览器直接进入Chinese(Simplified)LanguagePack/中文语言包-IntelliJIDEs|JetBrains,右上角,IDEA中会出现弹窗,直接起飞!

    2022年5月29日
    113
  • ubuntu修改hosts文件_host文件怎么添加地址

    ubuntu修改hosts文件_host文件怎么添加地址ubuntu下修改host文件有些时候,我们需要让某些域名指向本地,来实现调试,下面介绍下ubuntu下修改host实现域名指向本地的方法。Ubuntu系统的Hosts只需修改/etc/hosts文件,在目录中还有一个hosts.conf文件,刚开始还以为只需要修改这个就可以了,结果发现是需要修改hosts。修改完之后要重启网络。打开host文件sudovim

    2022年10月9日
    4
  • python对文件重命名快捷键_Pycharm快捷键配置详细整理

    python对文件重命名快捷键_Pycharm快捷键配置详细整理1 主题毫无疑问 Pycharm 是一个具有强大快捷键系统的 IDE 这就意味着你在 Pycharm 中的任何操作 例如打开一个文件 切换编辑区域等 都可以通过快捷键来实现 使用快捷键不仅能提高操作速度 看起来也会非常酷 然和 如果你已经习惯使用一些快捷键方案 你的手指就会习以为常 改变起来就比较困难 这部分教程即是介绍如何根据你的习惯来量身定制 Pycharm 快捷键设置 使你用起来得心应手 对于基本的快捷键

    2026年3月27日
    2
  • MySQL安装配置教程(超详细!)

    MySQL安装配置教程(超详细!)Windows下有两种安装MySQL的方式:图形界面安装(.msi文件)免安装版(.zip压缩文件)MySQL下载官网:http://www.mysql.com也可前往百度网盘提取(两种安装方式文件都有):链接:https://pan.baidu.com/s/1NMRUu_E098h4ErzSXTUKgA提取码:3tfb一、MySQL免安装版配置教程http://c.biancheng.net/view/2412.html二、MySQL图形界面安装(一)安装MySQL1.打开安

    2022年5月31日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号