热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2_MySQL基础之表的管理

注:App端的代码块区可能会因为内容过多而显示不全,请双击代码块区查看内容!--测试添加和删除字段CREATETABLEuser1(i

注:App端的代码块区可能会因为内容过多而显示不全,请双击代码块区查看内容!

-- 测试添加和删除字段
CREATE TABLE user1(id INT UNSIGNED AUTO_INCREMENT KEY
);-- 添加用户名字段 username VARCHAR(20)
ALTER TABLE user1
ADD username VARCHAR(20);-- 添加密码字段 password CHAR(32) NOT NULL
ALTER TABLE user1
ADD password CHAR(32) NOT NULL;-- 添加邮箱字段email VARCHAR(50) NOT NULL UNIQUE加到username之后
ALTER TABLE user1
ADD email VARCHAR(50) NOT NULL UNIQUE AFTER username;-- 添加测试字段 test TINYINT(1) NOT NULL DEFAULT 0;
ALTER TABLE user1
ADD test TINYINT(1) NOT NULL DEFAULT 0 FIRST;-- 删除测试字段test
ALTER TABLE user1
DROP test;-- 添加age、addr字段,删除email字段
ALTER TABLE user1
ADD age TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
ADD addr VARCHAR(100) NOT NULL DEFAULT '北京',
DROP email;-- 测试添加删除默认值操作
CREATE TABLE user2(id INT UNSIGNED AUTO_INCREMENT KEY,username VARCHAR(20) NOT NULL,age TINYINT UNSIGNED NOT NULL DEFAULT 18,email VARCHAR(50) NOT NULL
);-- 给email字段添加默认值 imooc@qq.com
ALTER TABLE user2
ALTER email SET DEFAULT 'imooc@qq.com';-- 删除age字段的默认值
ALTER TABLE user2
ALTER age DROP DEFAULT;-- 测试修改字段类型和字段属性、字段名称
CREATE TABLE user3(id INT UNSIGNED AUTO_INCREMENT KEY,username VARCHAR(5) NOT NULL UNIQUE,password CHAR(32) NOT NULL,email VARCHAR(10) NOT NULL
);-- 将用户名字段的类型改为20
ALTER TABLE user3
MODIFY username VARCHAR(20) NOT NULL;-- 将密码的长度改为40
ALTER TABLE user3
MODIFY password CHAR(40) NOT NULL;-- 将email字段改为VARCHAR(50) NOT NULL FIRST
ALTER TABLE user3
MODIFY email VARCHAR(50) NOT NULL FIRST;-- 将username 名称改为user
ALTER TABLE user3
CHANGE username user VARCHAR(20);-- 将password 名称改为pwd
ALTER TABLE user3
CHANGE password pwd CHAR(40) NOT NULL;-- 将email改成userEmail 类型改为VARCHAR(100) DEFAULT 'imooc@qq.com';
ALTER TABLE user3
CHANGE email userEmail VARCHAR(100) DEFAULT 'imooc@qq.com';-- 测试添加和删除主键
CREATE TABLE user4(id INT UNSIGNED,username VARCHAR(20) NOT NULL
);-- 添加主键
ALTER TABLE user4
ADD PRIMARY KEY(id);-- 删除主键
ALTER TABLE user4
DROP PRIMARY KEY;-- 当有主键的列同时有自增时如何删除?
CREATE TABLE user5(id INT UNSIGNED AUTO_INCREMENT KEY,username VARCHAR(20) NOT NULL
);-- 删除主键
-- 1.先删除AUTO_INCREMENT
ALTER TABLE user5
MODIFY id INT UNSIGNED;
-- 2.在删除主键
ALTER TABLE user5
DROP PRIMARY KEY;-- 测试添加和删除唯一
CREATE TABLE user6(id INT UNSIGNED AUTO_INCREMENT KEY,username VARCHAR(20) NOT NULL UNIQUE,password CHAR(32) NOT NULL,email VARCHAR(50) NOT NULL UNIQUE
);-- 删除唯一索引 username 和email
ALTER TABLE user6
DROP INDEX username;ALTER TABLE user6
DROP INDEX email;-- 添加唯一索引(不指定索引名称)
ALTER TABLE user6
ADD UNIQUE KEY(username);-- 添加唯一索引(指定索引名称)
ALTER TABLE user6
ADD UNIQUE INDEX uni_email(email);-- 根据索引名称删除唯一索引
ALTER TABLE user6
DROP INDEX uni_email;-- 测试MyISAM存储引擎
CREATE TABLE test_myisam(a INT UNSIGNED,b VARCHAR(20),c CHAR(32)
)ENGINE=MyISAM;-- 定长
CREATE TABLE myisam_1(a CHAR(30),id int
)ENGINE=MyISAM;-- 查看状态
SHOW TABLE STATUS LIKE 'myisam_1'\G-- 动态
CREATE TABLE myisam_2(a VARCHAR(30),id INT
)ENGINE=MyISAM;CREATE TABLE myisam_3(a VARCHAR(30),id INT
)ENGINE=MyISAM ROW_FORMAT=FIXED;


推荐阅读
  • WhenIusepythontoapplythepymysqlmoduletoaddafieldtoatableinthemysqldatabase,itdo ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • SpringBoot uri统一权限管理的实现方法及步骤详解
    本文详细介绍了SpringBoot中实现uri统一权限管理的方法,包括表结构定义、自动统计URI并自动删除脏数据、程序启动加载等步骤。通过该方法可以提高系统的安全性,实现对系统任意接口的权限拦截验证。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • 电话号码的字母组合解题思路和代码示例
    本文介绍了力扣题目《电话号码的字母组合》的解题思路和代码示例。通过使用哈希表和递归求解的方法,可以将给定的电话号码转换为对应的字母组合。详细的解题思路和代码示例可以帮助读者更好地理解和实现该题目。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • ALTERTABLE通过更改、添加、除去列和约束,或者通过启用或禁用约束和触发器来更改表的定义。语法ALTERTABLEtable{[ALTERCOLUMNcolu ... [详细]
  • 本文介绍了iOS数据库Sqlite的SQL语句分类和常见约束关键字。SQL语句分为DDL、DML和DQL三种类型,其中DDL语句用于定义、删除和修改数据表,关键字包括create、drop和alter。常见约束关键字包括if not exists、if exists、primary key、autoincrement、not null和default。此外,还介绍了常见的数据库数据类型,包括integer、text和real。 ... [详细]
author-avatar
易柔宛_968
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有