当前位置:网站首页 > 编程语言 > 正文

增删改查属于什么功能(增删改查是什么)



经常安装了MySQL,会忘记安装的路径,然后后期需要修改配置文件,很容易找不到地方。如下命令,可以在命令行找到路径:

在Navicat中把已经生成的表逆向成模型

ego笔记:

增删改查

这里是简单的概念性的东西,关于数据库的一些概念

数据库如果要使用的话,必须要先安装它,然后安装完之后还需要卸载它,这些初始步骤都是在老师的博客里面的, 我就不在这里一一总结了,我都会操作,而且已经操作过一遍了,都成功的达到了预期的效果.

这条连接是如何创建临时表.---所谓的临时表就是你把它创建出来了然后它存在于内存里面,内存的特性就是你关机后自清空,所以这里我们关掉了mycql之后它就会被系统自动清理掉.它的存在还是很有必要的.

http://blog.csdn.net/itegel84/article/details/

老师的笔记:

  

数据库的由来:

描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字、图片,图像、声音、语言等,数据由多种表现形式,它们都可以经过数字化后存入计算

在计算机中描述一个事物,就需要抽取这一事物的典型特征,组成一条记录,就相当于文件里的一行内容,如:

单纯的一条记录并没有任何意义,如果我们按逗号作为分隔,依次定义各个字段的意思,相当于定义表的标题

这样我们就可以了解egon,性别为男,年龄18岁,出生于1999年,出生地为山东,2017年考入老男孩计算机系

2 什么是数据库(DataBase,简称DB)

数据库即存放数据的仓库,只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的

过去人们将数据存放在文件柜里,现在数据量庞大,已经不再适用

数据库是长期存放在计算机内、有组织、可共享的数据即可。

数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种 用户共享

========================================================================================================================

我们要进行数据传输的时候只能通过文件来操作,但是文件操作的效率太低了,而且文件只能存在于一台电脑上面,查询或者更改之后只有自己可以看到,别人看不到的,

这样就很麻烦,基于这个考量我们有了数据库的存在,它是可以多用户共享,大家都能看到这个东西,而且你有任何的改变别人也可以直接在自己的电脑上面看到结果.

但是由于数据库的庞大,导致了我们使用的时候要有规范,即数据库语言,通过这一套的规范流程,大家都基于此访问数据库,就完美的达到了想要的效果,实现了效率最大化.

那么就开始来学习数据库语言了.

首先要有库才能有数据,所以我们要先建立库,---create database 库名 这句命令行就是创建库. create就是创建,然后database,就是库,

--------

库的增删改查:

create database 库名 这句命令行就是创建库. 库创建了之后就要基于它进行操作

drop database 库名 删除库,

show databases 显示所有存在的库

use 库名 进入指定的库

然后我们有了库之后就开始在库里面进行操作,最重要的是库里面的表,即Excel表的表,当然了这里并不是Excel,

在库里创建表

---------

create table time (id int primary key not null, d date, t time ,dt datetime);not null 是不能为空,默认不写就是可以为空,

create table 表名(字段名 字段类型 字段类型长度[特殊字段是没有长度的,比如邮箱,比如日期] 是否为主键 是否为空 , 字段名 字段类型 字段类型长度 是否为空 )这里的字段名就是Excel表里面的表头, 然后字段类型就是数据类型,有字符串,数字, 固定长度的字符串,不固定长度的,时间类型的字符串.....数据里面有整数,小数,大整数(bigint,他的长度要比int长,没错,整数都是有上限的,不能够无限大,)等等.

所谓的主键{不能为空,且不能重复,}

还有一种特殊的主键——复合主键。主键不仅可以是表中的一列,也可以由表中的两列或多列来共同标识.[也就是说a和b是复合主键,a,b都不能为空,a可以一样,但同时b不能一样,或者b能一样,但是a不能一样,这样就满足了复合主键的条件]

就是字段里面的唯一的那个字段,也就是说表头里面的其中一个表头是唯一的,在这些条件限制里面,字段名必须要有,而且不能能够有重复的,字段类型也是必须要有的,没有那些必要条件是会报错的.

表的增删改查:

create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] ); #注意: 1. 在同一张表中,字段名是不能相同 2. 宽度和约束条件可选 3. 字段名和类型是必须的

drop table 表名 删除整张表
update 表名 set 字段名2=值2 where 字段1=值1 修改表
delete from 表名 where 字段名=值 删除表里面的其中一条内容,
insert into 表名 (字段名)values(字段对应的值) 新增加的内容,可以增加多个,一般都是多个一起增加,类似于字典里的键对值,如果value就是只增加一个,
show tables 查看该库下面所有的表


例如:
表里面的字段的增删改查:

语法:
1. 修改表名
ALTER TABLE 表名 RENAME 新表名;

2. 增加字段
ALTER TABLE 表名 ADD 字段名 数据类型 完整性约束条件,

3. 删除字段
ALTER TABLE 表名 DROP 字段名;

4. 修改字段
ALTER TABLE 表名 MODIFY 字段名 数据类型 完整性约束条件; 这里是修改字段的约束条件,比如把int改成char
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型 完整性约束条; 这里是改变字段名,比如把id字段改成sex字段

  alter table attendance change afternoon afternoon_on enum('1','0');

字段的一些操作示例:

示例:
1. 修改存储引擎
mysql> alter table service
-> engine=innodb;

2. 添加字段
mysql> alter table student10
-> add name varchar(20) not null,
-> add age int(3) not null default 22;

mysql> alter table student10
-> add stu_num varchar(10) not null after name; //添加name字段之后

3. 删除字段
mysql> alter table student10
-> drop sex;

4. 修改字段类型modify
mysql> alter table student10
-> modify age int(3);
mysql> alter table student10
-> modify id int(11) not null primary key auto_increment; //修改为主键

5. 增加约束(针对已有的主键增加auto_increment)
mysql> alter table student10 modify id int(11) not null primary key auto_increment;
ERROR 1068 (42000): Multiple primary key defined

mysql> alter table student10 modify id int(11) not null auto_increment;
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0

6. 对已经存在的表增加复合主键
mysql> alter table service2
-> add primary key(host_ip,port);

7. 增加主键(在已有字段里面增加主键)
mysql> alter table student1
-> modify name varchar(10) not null primary key;

7.1增加外键(在已有字段里面增加外键)

mysql> alter table schedule add constraint attend_id

-> foreign key(atd_id)references attendance(attend_id) on delete cascade on update cascade;

alter table 表名
add constraint 外键名称 foreign key (字段)
references 关系表名 (关系表内字段)

8. 增加主键和自动增长(在已有的字段里面增加主键)
mysql> alter table student1
-> modify id int not null primary key auto_increment;

9. 删除主键
a. 删除自增约束
mysql> alter table student10 modify id int(11) not null;

b. 删除主键
mysql> alter table student10
-> drop primary key;

复制表:

只复制表结构
mysql> select * from service where 1=2; //条件为假,查不到任何记录
Empty set (0.00 sec)

用如下表格做示例

用select * 复制结果对比 仔细看key和extra这两列信息

用like命令复制结果对比

这里是插入更新操作:

示例博客地址

ON DUPLICATE KEY UPDATE

向数据库中插入一条数据,如果插入的这条数据中的联合主键已经存在了,就执行update后面的更新操作,否则就执行insert操作.

测试代码:先创建表格,然后插入数据,再使用这个语句看执行效果.

DROP TABLE IF EXISTS `mRowUpdate`;
CREATE TABLE `mRowUpdate` (
`id` int(11) NOT NULL,
`value` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB;

一行语句插入多条数据:

INSERT INTO `mRowUpdate` VALUE ('11', '1sss');

INSERT INTO mRowUpdate(id,`value`) VALUES(3, 'SuperMan') ON DUPLICATE KEY UPDATE `value`='SuperMan';

最后执行结果就是insert的最后一条数据,'9999'变成了SuperMan.

这里就是结果

这种操作一般适用于多行数据插入更新.

到此这篇增删改查属于什么功能(增删改查是什么)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 换国内ip的加速器(什么加速器可以改变ip到国外)2025-01-27 07:45:10
  • yum的安装命令(yum的安装命令是什么)2025-01-27 07:45:10
  • 游戏的分类有哪些互斥类型(游戏分为哪几种类型)2025-01-27 07:45:10
  • k8s版本(k8s版本区别)2025-01-27 07:45:10
  • pdf怎么删除某一页面(pdf怎么删除指定的页面)2025-01-27 07:45:10
  • gps定位器虚拟模拟器(gps定位器虚拟模拟器怎么用)2025-01-27 07:45:10
  • aw是什么意思的缩写(aw是什么意思?)2025-01-27 07:45:10
  • 博图程序块密码破解(博途程序块取消密码)2025-01-27 07:45:10
  • nat类型 检测(nat类型检测在线)2025-01-27 07:45:10
  • autokit打不开(autokitapp)2025-01-27 07:45:10
  • 全屏图片