数据库基本操作—表(一)

news/2024/7/24 11:31:47 标签: Mysql, 创建表

一、创建表


表是数据库存储数据的基本单位。个一个表包含若干字段或记录;

语法:

CREATE TABLE 表名( 属性名  数据类型 [完整性约束条件],
	属性名 数据类型 [完整性约束条件],
	......
	属性名 数据表格 [完整性约束条件]
)
约束条件说明
Primary Key属性为该表的主键,可以唯一的标识对应的记录
Forgign Key属性为该表的外键,与某表的主键关联
Not Null属性不能为空
Unique属性的值是唯一的
Auto_Increment属性的值自动增加
Default属性设置为默认值

例如:
(1) 创建一个图书类别表:t_bookType

Create Table t_bookType (
	id Int Primary Key Auto_Increment,	// 设置了两个约束条件
	bookTypeName VarChar(20),
	bookTypeDesc VarChar(200)
);

(2) 创建图书表:t_book

Create Table t_book (
	id Int Primary Key Auto_Increment, // 设置主键、自动递增
	bookName VarChar(20),
	author VarChar(10),
	price Decimal(6,2),
	bookTypeId Int,
	Constraint `fk` From Key(`bookTypeId`) References `t_bookType`(`id`)
);

Decimal 是代表数值的精确度。详细介绍

二、查看表结构


 - 查看基本表结构: Describe(DESC) 表名;
 - 查看表详细结构: Show Create Table 表名;

三、修改表


 - 修改表名: Alter Table 旧表名 Renmae to/as 新表名;
 - 修改字段: Alter Table 表名 Change 旧属性名 新属性名 新数据类型
 - 增加字段: Alter Table 表名 Add 属性名 1 数据类型 [完整性约束条件] [FIRST | AFTER 属性名 2]
 - 删除字段: Alter Table 表名 Drop 属性名

四、删除表


 - 删除表: Drop Table 表名;

五、数据操作


(1)插入数据
  • 给表的所有字段插入数据
Insert Into 表名 Values (1,值 2,值 3...,值 n);
  • 给表的指定字段插入数据
Insert Into 表名(属性 1,属性 2...,属性 n) Values (1,值 2,值 3...,值 n);
  • 同时插入多条记录
Insert Into 表名 [(属性列表)] Values (取值列表 1),(取值列表 2)...,(取值列表 n);

(2)更新数据

Update 表名 Set 属性名 1=取值 1,属性名 2=取值 2, ..., 属性名 n=取值 n Where 条件表达式;

(3)删除数据

Delete From 表名 [Where 条件表达式]

http://www.niftyadmin.cn/n/1431392.html

相关文章

数据库基本操作—查询(二)

一、单表查询 (1)查询所有的字段 Select 字段 1, 字段 2, 字段 3,...From 表名; Select * From 表名;(2)查询指定字段 Select 字段 1, 字段 2, 字段 3,...From 表名;(3)Where条件查询 Select 字段 1, 字…

文本换行符/空格符怎么在HTML中进行转换?

问题来啦: 从数据库中取到的text文本段落,段落里面的换行符无法直接在HTML中显示,如下: 而数据库中的段落是正常: 解决处理后正常换行: 解决方案: (1)因为数据库文本…

vue渲染列表时报错 [Vue warn]: Avoid using non-primitive value as key, use string/number

进入页面报错&#xff0c;如下&#xff1a; 原代码&#xff0c;如下&#xff1a; <li v-for"item in this.new_list[0]" :key"item"><el-container><el-header><div class"title">{{item.title}}</div></el-…

Vue路由跳转伴随传递参数

路由传参的4种方法 方法1、使用 $router.push 拼接参数传参 this.$router.push(/editCardetail?editTypeadd)方法2、直接在 <route-link> 标签中传递参数 <!-- 方式 1 --> <router-link :to"{ name:home, params:{name:1} }"> Just Go! </ro…

HTML中 符号 的 解码 与 转码

1.用正则表达式实现 html 转码 htmlEncodeByRegExp(str) { var s "";if(str.length 0) return "";s str.replace(/&/g,"&amp;");s s.replace(/</g,"<");s s.replace(/>/g,">");s s.replace(/ /g…

关于axios进行跨域请求时的问题处理

跨域问题 报错1&#xff08;接口文件未处理跨域&#xff09; 说明&#xff1a;这个错误是 “已被CORS策略阻止&#xff1a;请求的资源上不存在“访问控制允许源”头。” 解决方法&#xff1a; 在接口文件头部加这一句&#xff1a;header(Access-Control-Allow-Origin:*); php…

解决右侧出现滚动条页面抖动的问题

在页面内容没有占满屏幕时右侧不会出现滚动条&#xff0c;当再加载内容时页面会出现右侧滚动条&#xff0c;页面宽度由于是auto&#xff0c;整个页面会向左移动 解决办法&#xff1a; html {overflow-x: hidden;overflow-y: auto;}body {width: 100vw;overflow: hidden;paddin…

技巧:如何在不刷新页面的情况下获取cookie/localStorage的值?

引言 故事的背景&#xff1a;在一个页面内&#xff0c;通过路由给在同一个页面的组件传递参数。显然可以通过 Vue路由跳转伴随传递参数 这篇文章的多种方式进行传值。 路由传递参数的文件&#xff1a;label.vue <router-link to/Home/label/label_show v-for"(item,i…