用mysql删除数据库语句 java实现验证码功能

目录1.SQL字段数据类型2.检查数据库信息语句。3.SQL语句创建、删除 数据库 数据表向表中添加、删除 记录、查询记录修改表名,添加、修改、删除 字段,添加唯一约束查看、删除、添加 表中的索引扩展功能,字段值自增等4.数据表的高级操作克隆表,将数据表的数据记录生成到新的...

目录

1.SQL字段数据类型

2.检查数据库信息语句。

3.SQL语句

创建、删除 数据库 数据表向表中添加、删除 记录、查询记录修改表名,添加、修改、删除 字段,添加唯一约束查看、删除、添加 表中的索引扩展功能,字段值自增等

4.数据表的高级操作

克隆表,将数据表的数据记录生成到新的表中删除记录后主键记录重头开始自增创建临时表

5.创建外键约束以确保数据的完整性和一致性。

6.MySQL的六大约束

数据库里有数据表,数据表里有一条条记录。

可以使用Navicat等远程连接工具链接数据库,但是数据库需要授权。

SQL字段数据类型

int:整型,默认长度是11float:单精度浮点,4字节32位double:双精度浮点,8字节***位char:不可变长的字符类型,读取速度快,耗空间,长度不足会补空格。varchar:可变长的字符类型,但读取数据比 char 低,容易产生内存碎片text :文本i***ge:图片deci***l(6,2) :定义6个有效长度数字,小数点后面有两位

Char最多可以支持255个字符。如果存储数据的实际长度小于指定长度,char会将空补足到指定长度;如果存储数据的实际长度大于指定长度,Mysql低版本的前255个字符会被截断,高版本会报错。

注意varchar类型:4.0版本下,varchar(20)指20个字节;5.0以上版本,varchar(20),指20个字符。

查看数据库信息语句

首先登陆MySQL,也可以用SQL工具如 Navicat 远程连接,前提是要在Linux Mysql 中用 grant 进行授权,允许远程登录。#授予root用户可以在所有终端远程登录,使用的密码是123456grant all privileges on *.* to 'root'@'%' identified by '123456';#对所有数据库和所有表有操作权限 with grant optiongrant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

Navicat连接参数

为了练习在Linux中操作,以下都是直接在Linux命令框中键入的。

Linux 中登录Mysqlmysql -u root -p密码1.查看当前服务器中的数据库 SHOW DATABASES;2.查看数据库中包含的表USE 数据库名 #注意:数据库名区分大小写SHOW TABLES;3.查看表的结构(设计、字段)DESCRIBE [数据库名.]表名或DESC 表名4. 查看创建表的命令SHOW CREATE TABLE 表名5.查询结果行转列查看 GSELECT * FROM USER_INFOG;6. 查看当前所在数据库select database()

SQL 语句SQL语句

SQL语句用于维护和管理数据库,包括数据查询、访问控制、数据更新、对象管理、备份等功能。

创建和删除数据库表

创建新的数据库

CREATE DATABASE 数据库名;例如:CREATE DATABASE SCHOOL;

在数据库中创建新表

CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);#主键一般选择能代表唯一性的字段不允许取空值(NULL),一个表只能有一个主键。例:USE SCHOOL;CREATE TABLE STUDENT (ID int(10) NOT NULL,NAME varchar(20),AGE int(3),SEX char(2),PRIMARY KEY (ID));

删除表删除表

DROP TABLE [数据库名.]表名;#如不用USE进入库中,则需加上数据库名

删除数据库

DROP DATABASE 数据库名; #会连库中的表一起删除删除操作要小心,删除前记得被备份

向表中添加、删除和查询记录。

#先创建 STARBUCKS 数据库,再创建 USER_INFO 表,添加一些字段CREATE DATABASE STARBUCKS;USE STARBUCKS;DROP TABLE IF EXISTS `USER_INFO`;CREATE TABLE `USER_INFO` ( `ID` int(32) NOT NULL, `NAME` varchar(20) DEFAULT NULL, `TYPE` varchar(32) DEFAULT NULL, `ADD_TIME` varchar(20) DEFAULT NULL, `IS_USED` char(5) DEFAULT NULL, PRIMARY KEY (`ID`) )

向表中添加记录

INSERT INTO 表名(字段1,字段2[,...]) VALUES(字段1的值,字段2的值,...);例:#一条一条全字段添加INSERT INTO USER_INFO(ID,NAME,TYPE,ADD_TIME,IS_USED) VALUES (1001, '咖啡机', '机器齐全', '2021-06-22', 'D0001');INSERT INTO USER_INFO VALUES (1002, '奶茶机', '设备', '2021-06-23', 'D0001');#或一条命令添加多条INSERT INTO USER_INFO (ID,NAME,TYPE,ADD_TIME,IS_USED) VALUES (1003, '牛奶', '食品', '2021-06-24', 'D0002'),(1004, '包装机', '设备', '2021-06-20', 'D0001'),(1005, '糖块', '食品', '2021-06-25', 'D0001'),(1006, '吸管', '设备', '2021-06-20', 'D0001'),(1007, '奶油', '食品', '2021-06-25', 'D0002');

SELECT查询语句

SELECT 字段名1,字段名2[,...] FROM 表名 [WHERE 条件表达式];#从0行开始共几行SELECT * FROM 表名 limit 行数 #根据行数范围取记录数SELECT * FROM 表名 limit 开始行数(不包括),从开始行数开始的共几行

UPDATE 更新
注意WHERE 加更新的条件,不然会更新所有更新更新
注意WHERE plus更新的条件,否则全部更新。

UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] [WHERE 条件表达式];如 UPDATE USER_INFO SET TYPE='仪器' WHERE ID=1001;

删除记录
注意WHERE加上删除记录的条件,否则会删除所有记录。

DELETE FROM 表名 [WHERE 条件表达式];例:delete from class2 where id=4;

修改表名,添加、修改和删除字段,以及添加唯一约束。

修改表名

ALTER TABLE 旧表名 RENAME 新表名;例:ALTER TABLE USER_INFO RENAME USER_MESG;SHOW TABLES;1234


向表中添加一个字段

ALTER TABLE 表名 ADD 字段名 varchar(50) default '默认值';#default 表示此字段设置默认值;可与 NOT NULL 配合使用,默认值立即生效例:ALTER TABLE USER_MESG ADD STATUS VARCHAR(20) DEFAULT '在用';

删除表中的字段

ALTER TABLE 表名 DROP 字段名;

修改字段(列)名称并添加唯一键约束

ALTER TABLE 表名 CHANGE 旧列名 新列名 数据类型 [unique key];例:ALTER TABLE USER_MESG CHANGE NAME DEV_NAME VARCHAR(30) UNIQUE KEY;#验证唯一键约束,添加重名的约束字段INSERT INTO USER_MESG VALUES (1008,'牛奶','饮料','2021-06-28','D0001','已过期');#触发唯一键约束,新增失败UNIQUE KEY 唯一键:可以用有空值,不能出现重复值,也不能为 NULL,

查看、删除、添加 表中的索引查看、删除和添加表中的索引。

#查看表有哪些索引 SHOW INDEXES FROM 表名;

分别添加和移除唯一键约束

#给字段 DEV_NAM 增加唯一键约束ALTER TABLE USER_MESG ADD UNIQUE INDEX (DEV_NAME);#给字段 DEV_NAM 去除唯一键约束#查看索引表中,字段 DEV_NAME 对应的 索引名 Key_name,根据索引名删除索引ALTER TABLE USER_MESG DROP INDEX 索引名;

扩展功能,字段值自增等扩展功能、字段值的自增量等。

use school;CREATE TABLE IF NOT EXISTS AREA_INFO ( -> AREA_ID int(4) ZEROFILL PRIMARY KEY AUTO_INCREMENT, #指定主键的另一种方式-> AREA_NAME VARCHAR(20) NOT NULL UNIQUE KEY,-> IS_USED CHAR(5) NOT NULL);#---------------命令解释--------------------------------#if not exists:表示检测要创建的表是否已存在,如果不存在就继续创建#int(4) zerofill:表示若数值不满4位数,则前面用“0”填充,例0001#auto_increment:表示此字段为自增长字段,即每条记录自动递增1,默认从1开始递增;自增长字段数据不可以重复;#自增长字段必须是主键;字段类型必须是 int 类型,如添加的记录数据没有指定此字段的值且添加失败也会自动递增一次#unique key:表示此字段唯一键约束,此字段数据不可以重复;一张表中只能有一个主键, 但是一张表中可以有多个唯一键#not null:表示此字段不允许为NULL

数据表高级操作高级数据表操作

克隆该表,并将数据表的数据记录生成到一个新表中。

方法1:使用like

#先克隆表结构#在插入所有数据CREATE TABLE AREA_CLONE1 LIKE AREA_INFO; #通过 LIKE 方法,*** AREA_INFO 表结构生成 AREA_CLONE1 表INSERT INTO AREA_CLONE1 SELECT * FROM AREA_INFO;

如果两张表结构一样,可将一张表的查询结果集返回给 另一张表INSERT INTO 表1 SELECT * FROM 表2

方法二:直接克隆如果两个表具有相同的结构,则一个表的查询结果集可以返回给另一个表INSERT INTO TABLE 1 SELECT * FROM TABLE 2方法2:直接克隆

#直接将源表的查询结果给创建的新表CREATE TABLE 克隆表名(SELECT * FROM 源表名);SHOW CREATE TABLE 克隆表名G;#获取数据表的表结构、索引等信息

注意:直接克隆不能***主键、自动增长、约束、索引等的配置。原始表的。可以用LIKE。

删除记录后,主键记录开始增加。

DELETE FROM 表名;#DELETE清空表后,返回的结果内有删除的记录条目;DELETE工作时是一行一行的删除记录数据的;如果表中有自增长字段,使用DELETE FROM 删除所有记录后,再次新添加的记录会从原来最大的记录 ID 后面继续自增写入记录。truncate table 表名;#TRUNCATE 清空表后,没有返回被删除的条目;TRUNCATE 工作时是将表结构按原样重新建立,因此在速度上 TRUNCATE 会比 DELETE 清空表快;使用 TRUNCATE TABLE 清空表内数据后,ID 会从 1 开始重新记录。#相当于直接格式化表

创建临时表

临时表是在当前连接中生效的表。

临时表创建成功之后,使用

SHOW TABLES

命令是看不到创建的临时表的;临时表会在连接退出后被销毁。 如果在退出连接之前,也可以可执行增删改查等操作,比如使用 DROP TABLE 语句手动直接删除临时表。CREATE TEMPORARY TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);例:CREATE TEMPORARY TABLE TEM_TABLE (ID int(4) PRIMARY KEY, REMARK VARCHAR(20));INSERT INTO TEM_TABLE VALUES(1001,'临时表');SELECT * from TEM_TABLE;

执行 quit 退出连接后,再次登录,就操作不了临时表了

创建外键约束,保证数据的完整性和一致性退出连接,重新登录,不能操作临时表。创建外键约束以确保数据的完整性和一致性。

外键的定义:如果同一个属性字段X 在表一中是主键,而在表二中不是主键,则字段X称为表二的外键。主键表和外键表的理解:(1)以公共关键字作主键的表为主键表(父表、主表)(2)以公共关键字作外键的表为外键表(从表、外表)注意:1. 与外键关联的主表的字段必须设置为主键。2. 要求从表不能是临时表,主从表的字段具备相同的数据类型、字符长度和约束。#创建主表HOBBY CREATE TABLE HOBBY (HOBID int(4),HOBNAME VARCHAR(50));#创建从表HOBBY_DETAIL CREATE TABLE HOBBY_DETAIL (ID int(4) PRIMARY KEY AUTO_INCREMENT,NAME VARCHAR(10),AGE int(3),HOBID int(4));#为主表HOBBY 添加一个主键约束。主键名建议以“PK_”开头。ALTER TABLE HOBBY ADD CONSTRAINT PK_HOBID PRIMARY KEY (HOBID);#为从表HOBBY_DETAIL 表添加外键,并将 HOBBY_DETAIL 表的 hobid 字段和 HOBBY 表的 hobid 字段建立外键关联。#外键名建议以“FK_”开头。ALTER TABLE HOBBY_DETAIL ADD CONSTRAINT FK_HOB FOREIGN KEY (HOBID) REFERENCES HOBBY (HOBID);DESC HOBBY_DETAIL ;#插入新的数据记录时,要先主表再从表INSERT INTO HOBBY VALUES(1,'Football');INSERT INTO HOBBY_DETAIL VALUES(1,'Messi',32,1);

#删数数据记录时,要先从表再主表,也就是说删除主键表时必须先删除其他与之关联的表。DROP TABLES HOBBY_DETAIL ;DROP TABLES HOBBY ;#查看和删除外键约束SHOW CREATE TABLE HOBBY_DETAIL ;ALTER TABLES HOBBY_DETAIL DROP foreign key FK_HOB ; #FK_HOB 是之前添加的外键名ALTER TABLES HOBBY_DETAIL DROP key FK_HOB ;DESC HOBBY_DETAIL ;

去除外键后就可以删除表了移除外键后,可以删除该表。

DROP TABLES HOBBY _ DETAIL

掉桌子的爱好;

MySQL的六大约束

主键约束(pri***ry key)外键约束(foreign key)非空约束(not null)唯一性约束(unique [key|index])默认值约束(default)自增约束(auto_increment)

关键列值的含义:

如果键是 PRI,则列是主键或多列主键中的列之一。如果键是 UNI,则该列是唯一索引的第一列。(唯一索引允许多个空值,但可以通过检查NULL字段来判断该列是否允许空。)如果键为 MUL,则该列是非唯一索引的第一列,其中允许在列中多次出现给定值。

本文来自永远太远投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/550178.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 05-16
下一篇 05-16

相关推荐

  • 优美语句摘抄大全

    摘抄的优美语句 1春天的雨是柔和的,只见春雨在竹枝竹叶上跳动着那雨时而直线滑落,时而随风飘洒,留下如烟如雾如纱如丝的倩影,飞溅的雨花仿佛是琴铉上跳动的音符,奏出优美的旋律 2秋天的阳光,覆盖了春季的“温暖”;优美的句子摘抄 在日常学习工作和生活中,许多人都接触

    2023-07-27 00:47:01
    159 0
  • updateset多条数据 使用update语句修改表中数据

    摘要今天就简单介绍一下select语句的流程,update语句的执行过程以及涉及到的两阶段提交协议,仅供参考。Redlog(唯一重做日志(innodb引擎,它循环写入,空之间的间隔总会用完。比如配置一组4个文件,每个文件大小为4GB,可以记录总共4GB的操作)是物理日志,记录“某个数据页发

    2023-07-26 16:30:01
    235 0
  • sqlserver数据库还原语句 sql数据库备份和恢复步骤

    1。了解数据库备份和事务日志备份数据库备份和日志备份是数据库维护的日常工作。备份的目的是将数据库和事务日志文件还原到最近的时间点,以便在数据库出现故障或损坏时将损失降至最低。2。数据库备份[手动数据库备份]A.鼠标右键选择要备份的数据库-任务-备份。描述:完整完整

    2023-07-23 23:44:01
    541 0
  • 高级讽刺人虚伪的句子 讽刺人的经典语句,霸气毒辣

    第一,你有无数个备胎,感情不断,不是因为你有魅力,而是因为你便宜又百搭。第二,毕竟这不是一个***爱的社会。你最好克制一下。第三,脸是人体最神奇的部分。对有些人来说,可大可小,可厚可薄,甚至可有可无。第四,每个人出生时都是原始的。可悲的是,很多人逐渐成为了海

    2023-07-19 21:56:01
    1044 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信