MySQL数据库操作语句(补充1)(cmd环境运行)
一.字符串类型
enum枚举类型
- /*
- 也叫做枚举类型,类似于单选!
- 如果某个字段的值只能从某几个确定的值中进行选择,一般就使用enum类型,
在定义的时候需要将该字段所有可能的选项都罗列出来:- */
- create table test_enum(
- gender enum('male','female','secret');
- );
- -- 而在插入数据的时候,只能在规定的选项中的进行选择:
- insert into test_enum values('male');
- insert into test_enum values('female');
-- 数据库中实际存储的其实是整型数据!
- -- 插入female
- insert into test_gender values(2);
text
在实际的开发中,自由输入区一般都用text类型,比如新闻正文,博客正文等!
- create table news(
- news_id int(11) primary key auto_increment ,
- content text
- );
set
- /*
- 也叫做集合类型,类似于多选项!
- 如果一个字段的值只能是某个或某几个选项的值,最好使用set类型
- 同enum类型一样,在定义的时候也需要把所有可能的选项都罗列出来:
- */
- create table zifu(
- hobby set('sleep','eat','study','php','LOL','WOW')
- );
- insert into zifu values('sleep,php,LOL');
其实,多选项实际存储的也是整型数据:
- -- 选择sleep 和php 1+8= 9
- insert into zifu values(9);
二.列属性
null和not null
默认情况下,字段都是可以为空的,也就是该属性的缺省值为null
- -- not null 不能为空 unsigned非特殊字符
- create table stu(
- name varchar(20) not null,
- age tinyint unsigned
- );
default
自定义默认值属性,也叫做default约束,通常就是配合not null属性一起使用,也就是说某个字段不允许为空,但是如果用户没有给该字段插入数据,就用默认值去填充!
- create table user_my(
- id int primay key auto_increment
- name varchar(32) unique key default '我是没有设置唯一键内容的name'
- );
- -- 当然,也可以直接插入default关键字,意思就是插入默认值:
- insert into user_my values(23,default);
primary key
1.设置主键之后就不能添加重复的主键的值了
2.主键会自动增加非空约束
定义主键方法有2:
- -- 1.直接在字段的后面进行设置
- create table stu(
- id int unique primary key auto_increment
- );
- -- 2.定义完字段后再定义主键
- create table stu(
- id int unique auto_increment,
- primary key(id)
- );
注意:
如果某个主键是一个组合主键,就只能使用第二种方式!
- create table tea(
- tea_name varchar(20),
- class_id tinyint unsigned,
- day_num tinyint unsigned,
- -- 定义组合主键
- primary key(tea_name,class_id)
- );
unique key
- -- 1.直接在字段后面加unique
- create table stu(
- id int unsigned primary key auto_increament,
- stu_id int unsigned unique key,
- tel char(11) unique key
- );
- -- 2.先定义字段,后设置unique key
- create table stu(
- id int unsigned primary key auto_increament,
- stu_id int unsigned ,
- tel char(11) ,
- -- 定义两个唯一键
- unique key(stu_id,tel)
- );
auto_increment
- /*
- 自动增长属性,或者叫做自动增长约束!
- 作用是每次插入记录的时候,为某个字段的值自动加1
- 注意:使用这个属性是有条件的!!!
- 第一, 该字段必须为整型
- 第二, 该字段必须存在索引(主键或唯一键)
- 典型的,我们就是在ID主键上增加auto_increment属性!
- 当我们把主键设置为自动增长之后,主键可以直接用null来进行填充!这里不是真的把主键设置为NULL,而是启动了自动增长机制!
- */
- create table stu(
- -- 设置id字段为主键,并自动增长
- id int unsigned primary key auto_increment,
- );
- insert into stu values(null);
- -- 设置从100开始自动增长
- create table stu(
- id int unsigned primary key auto_increment,
- name varchar(20),
- )auto_increment 100; -- 设置自动增长从100开始
重置自动增长机制
- /*
- 剖析一下truncate的语法意义:
- 1, 把原表先drop掉!
- 2, 按原表的表结构重新创建一个新表,名字和原表一样的!
- 所以,truncate语句是DDL,而delete from是属于DML!
- 所以:使用delete from语句删除所有的记录,不能重置自动增长机制!
- */
- truncate table 表名;
- truncate 表名;
comment
- /*
- 是指在创建表的时候,对字段的备注,注意与普通注释符的区别:
- 普通注释符不属于语句的一部分,而comment属于!!
- */
- create table stu(
- id int unsigned primary key auto_increment comment '设置id字段为主键,并自动增长'
- name varchar(20) comment '学生的姓名'
- );
MySQL数据库操作语句(补充1)(cmd环境运行)的更多相关文章
- (转载)常用的Mysql数据库操作语句大全
打开CMD,进入数据库命令:mysql -hlocalhost -uroot -p 退出数据库:exit 用户管理: 1.新建用户: >CREATE USER name IDENTIFIED B ...
- MySQL数据库操作语句(cmd环境运行)
一.开启MySQL服务器 1, 通过windows提供的服务管理器来完成 windows键+R 输入: services.msc 2.在本地服务中打开其服务 3.在DOC命令行下 net stop ...
- Mysql 数据库 操作语句
mysql 格式语句规范 如何登陆你的数据库? 举例! 如果你的是 编译安装的花 那就得去编译安装后的那个目录中去,我的是安装到/usr/local/mysql 下登陆数据库:cd /usr/loca ...
- Mysql数据库操作语句总结(三)
最近一段时间重新学习一下mysql命令行的用法, 这里简单记录一下 参考文章: https://www.cnblogs.com/bluealine/p/7832219.html 个人使用的是mysql ...
- 常用的Mysql数据库操作语句大全
一.用户管理: 1.新建用户: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2.更改密码: >SET PASSWORD FOR name=PAS ...
- 常用Mysql数据库操作语句
用户管理: 1.新建用户: 语法msyql>CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明: username - 你将创建 ...
- mysql数据库操作语句整合
查看版本:select version();显示当前时间:select now(); 注意:在语句结尾要使用分号; 远程连接 一般在公司开发中,可能会将数据库统一搭建在一台服务器上,所有开发人员共用一 ...
- 零、常用的Mysql数据库操作语句大全
零.用户管理: 1.新建用户: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2.更改密码: >SET PASSWORD FOR name=PAS ...
- Mysql数据库操作语句总结
简单复习下: 增insert into -- 删 delete from -- 改 update table名字 set -- 查 select * from -- 一.SQL定义 SQL(Str ...
随机推荐
- [转]Visual Studio 2010单元测试(2)--运行测试并查看代码覆盖率
Visual Studio 2010 单元测试--运行测试并查看代码覆盖率 运行测试并查看代码覆盖率对程序集中的代码运行测试时,可以通过收集代码覆盖率数据来查看正在测试的项目代码部分. 运行测试并查看 ...
- JZOJ5883【NOIP2018模拟A组9.25】到不了——动态LCA裸题
题目描述 Description wy 和 wjk 是好朋友. 今天他们在一起聊天,突然聊到了以前一起唱过的<到不了>. "说到到不了,我给你讲一个故事吧." &quo ...
- string主要操作函数
参考博客:http://blog.csdn.net/zhenyusoso/article/details/7286456 std::string illegal(" \t\f\v\n\r\\ ...
- SQL server插入数据后,获取自增长字段的值
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 insert into Tb_People(uname,er ...
- SQLSERVER 数据库管理员的专用连接DAC
DAC:Dedicated Admin Connection 当SQL Server因系统资源不足,或其它异常导致无法建立数据库连接时, 可以使用系统预留的DAC连接到数据库,进行一些问题诊断和故障排 ...
- 查找IE中网页的源代码
一般我们在查看网页的源代码时,在网页上右键就能点击“查看源代码”.但是有些网页的右键功能被屏蔽了.这时候我们可以在ie菜单栏的“查看”选项里“源”查找. 如果发现ie菜单没在的话,点击键盘上的“Alt ...
- 原 JEECMS导入IDEA进行二次开发图文教程
JEECMS导入IDEA进行二次开发图文教程 2017年05月15日 17:03:53 Swain_Ho 阅读数 3257 版权声明:本文为博主原创文章,未经博主允许不得转载. https:// ...
- 简单的选项卡制作(原生JS)
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- pytorch 多GPU处理过程
多GPU的处理机制: 使用多GPU时,pytorch的处理逻辑是: 1.在各个GPU上初始化模型. 2.前向传播时,把batch分配到各个GPU上进行计算. 3.得到的输出在主GPU上进行汇总,计算l ...
- AppServer初始化渠道
1.写了一个拦截器(RequestInterceptor) 2.里边有个有一个doRequest()方法 3.初始化渠道的方法(initRequestContext()) -------------- ...