mysql回想一下基础知识
创建数据库
creat table test(
#整数通常用于int
test_id int,
#十进制通常使用decimal
test_price decimal,
#普通文本通常使用。并使用Default指定默认值
test_name varchar(255) default "Xxx",
#大文本类型使用test
test_desc text,
#图片使用blob
test_img blob,
#日期类型使用DateTime
test_date datetime,
);
-----------------------------------------------------------------
mysql 支持的列类型
1.tinyint,smallint,mediumint,int,bigint
2.float,double
3.decimal(dec)
4.date
5.time
6.datetime
7.timestamp
8.year
9.char
10.varchar
11.binary(定长的二进制字符串类型。以二进制形式保存字符串)
12.varbinary
13.tinyblob,blob,mediumblob,longblob
14.tinytext,text,mediumtext,longtext
15.enum('value1','value2'...)//枚举类型(仅仅能是当中之中的一个)
16.set('value1','value2'...)//集合类型(能够是当中几个)
--------------------------------------------------------------------
#创建数据表。该数据表和user_info全然同样,数据也全然同样
create table hehe
as
select * from user_info;
---------------------------------------------------------------------
#改动表的结构的语法
alert table 表名
add(
#能够定义多个列定义
colum_name datatype [default expr],
...
);
---------------------------------------------------------------------
#为hehe数据表添加一个hehe_id字段,该字段类型为int
alter table hehe
add hehe_id int;
#为hehe数据包添加aaa,bbb字段。两个字段的类型都为varchar(25)
alter table hehe
add aaa varchar(25),bbb varchar(25);
----------------------------------------------------------------------
#将hehe表的hehe_id列改动为varchar(255)类型
alter table hehe
modify hehe_id varchar(255);
#将hehe表的bbb列改动为int类型
alter table hehe
modify bbb int;
----------------------------------------------------------------------
#删除指定的列
alter table hehe
drop column_name
#重命名数据表
alter table hehe
rename to wawa;
----------------------------------------------------------------------
#将wawa表的字段bbb字段重命名为ddd
alter table wawa
change bbb ddd int;
#删除表
drop table 表名
----------------------------------------------------------------------
数据库约束
not null
unique
primary key
foreign key
check
#not null约束
create table hehe(
#建立了非空约束,这意味着hehe_id不能够为null
hehe_id int not null,
#mysql为空约束不能指定名字
hehe_name varchar(25) default 'xyz' not null,
#以下列能够为空。默认值就是为null
hehe_gender varchar(28) null
);
---------------------------------------------------------------------
#添加非空约束
alter table hehe
modify hehe_gender varchar(30) not null
#取消非空约束
alter table hehe
modify hehe_name varchar(3) null;
#取消非空约束。并指定默认值
alter table hehe
modify hehe_name varchar(255) default 'abc' null;
-------------------------------------------------------------------
unique约束
#建立表时创建唯一约束,使用列级约束语法建立约束
create table unique_test(
#建立了非空约束,着意味着test_id不能够为null
test_id int not null,
#建立了unique约束
test_name varchar(30) unique
);
#创建表时,使用表级约束语法建立约束
create table unique_test(
test_id int not null,
test_name varchar(30),
test_pass varchar(30),
#使用表级约束创建唯一约束
unique(test_name),
constraint test_uk unique(test_pass)
#constrain test1_uk unique(test_name,test_pass)
);
#改动唯一约束
alter table unique_test
add unique(test_name,test_pass);
#为表添加约束
alter table unique_test
modify test_name varchar(30) unique;
-------------------------------------------------------------------
primary key约束
create table primaryKey_test(
primaryKey_id int primary key,
test_name varchar(255)
);
create table primaryTest(
primary_id int not null,
primary_name varchar(29),
constraint pk_test primary key(primary_id)
);
#删除主键约束
alter table test
drop primary key;
#使用表级语法添加主键约束
alter table test
add primary key(test_id ,test_name);
#使用列级约束语法添加主键约束
alter table test
modify test_name varchar(30) primary key;
------------------------------------------------------------------
#为了保证从表參照的主表存在。通常应该先建立主表
create table teacher_table(
#auto_increment
teacher_id int auto_increment,
teacher_name varchar(255),
primary key(teacher_id)
);
create table student_table(
student_id int auto_increment primary key,
student_name varchar(255),
#指定java_teacher參照到teacher_table的teacher_id的列
java_teacher int references teacher_table(teacher_id)
#java_teacher int
#foreign key(java_teacher) references teacher_table(teacher_id)
#constraint student_teacher_fk foreign key(java_teacher) references
teacher_table(teacher_id)
);
---------------------------------------------------------------------------------------------
#check约束
create table test(
test_id int auto_increment primary key,
test_age int not null,
check(test_age>0 and test_age<120)
)
版权声明:本文博主原创文章,博客,未经同意不得转载。
mysql回想一下基础知识的更多相关文章
- mysql学习之基础知识
一.什么是数据库 一般而言,数据库(Database)是按照数据结构来组织.存储和管理数据的仓库.我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢.所以,使用关系型数据库管理系统(RDB ...
- MySQL系列(一)--基础知识(转载)
安装就不说了,网上多得是,我的MySQL是8.0版本,可以参考:CentOS7安装MySQL8.0图文教程和MySQL8.0本地访问设置为远程访问权限 我的MySQL安装在阿里云上面,阿里云向外暴露端 ...
- mysql原生语句基础知识
要操作数据库,首先要登录mysql: *mysql -u root -p 密码 创建数据库: *create database Runoob(数据库名); 删除数据库: *drop database ...
- mysql的优化基础知识
1.查看各种SQL执行的频率 mysql> show status like 'Com_select';--Com_insert,Com_delete,connections(试图连接mysql ...
- mysql的部分基础知识....
- mysql基础知识详解
分享一些mysql数据库的基础知识. 1.每个客户端连接都会从服务器进程中分到一个属于它的线程.而该连接的相应查询都都会通过该线程处理.2.服务器会缓存线程.因此并不会为每个新连接创建或者销毁线程.3 ...
- 深入理解mysql之BDB系列(1)---BDB相关基础知识
深入理解mysql之BDB系列(1) ---BDB相关基础知识 作者:杨万富 一:BDB体系结构 1.1.BDB体系结构 BDB总体的体系结构如图1.1所看到的,包括五个子系统(见图1.1 ...
- 深入了解mysql它BDB系列(1)---BDB基础知识
深入了解mysql它BDB系列(1) ---BDB关基础知识 作者:杨万富 一:BDB体系结构 1.1.BDB体系结构 BDB总体的体系结构如图1.1所看到的.包括五个子系统(见图1.1中 ...
- MySQL系列(一)--基础知识大总结
MySQL系列(一)---基础知识大总结 前言:本文主要为mysql基础知识的大总结,mysql的基础知识很多,这里只是作为简单的介绍,但是具体的细节还是需要自行搜索.当然本文还有很多遗漏的地方,后续 ...
随机推荐
- HDU 4597 Play Game 2013 ACM-ICPC吉林通化全国邀请赛H题
九野的博客,转载请注明出处: http://blog.csdn.net/acmmmm/article/details/10833941 题意:给定T个测试数据,下面有2副牌,每副n张,每张都有一个分 ...
- ACM-计算几何之Quoit Design——hdu1007 zoj2107
Quoit Design Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- 11gR2RAC环境DBCA创建一个数据库错误ORA-15055 ORA-15001
11gR2RAC环境DBCA创建一个数据库错误ORA-15055 ORA-15001 象: 在11gR2 GridInfrastructure和Database软件安装完毕之后,运行DBCA创建数据库 ...
- STM32 + RT Thread OS 学习笔记[四]
1. 补注 a) 硬件,打通通讯通道 若学习者购买了学习板,通常可以在学习板提供的示例代码中找到LCD的相关驱动代码,基本上,这里的驱动的所有代码都可以从里面找到. 从上面的示意图可见,M ...
- brutal是什么意思_brutal在线翻译_英语_读音_用法_例句_海词词典
brutal是什么意思_brutal在线翻译_英语_读音_用法_例句_海词词典 brutal
- 用VLC搭建流媒体server
VLC开元项目相当强大,我们既能够将其作为播放核心用于二次开发,又能够将其作为高性能的流媒体server.今篇博客主要讲用VLC搭建流媒体server. VLC搭建流媒体server步骤非常easy: ...
- ASP.NET MVC的跳转攻击问题
在ASP.NET MVC的自带的模板代码中,有这样一段,用来拦截非登录用户,使其跳转到登录页面,然后登录后在跳转回原页面.所以,期间有一个returnUrl参数用来保存原页面地址.在Login Act ...
- Nginx特点
Nginx特点:1,跨平台:Nginx 能够在大多数 Unix like OS编译执行,并且也有Windows的移植版本号.2,配置异常简单:很easy上手.配置风格跟程序开发一样,神一般的配置.3, ...
- hdu1260(dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1260 分析:简单dp,dp[i]=min(dp[i-1]+a[i],dp[i-2]); #includ ...
- 别样JAVA学习(五)继承上(1.0)Object类equals()
上一节继承下(一)我们进行抽象类.接口以及多态的学习. 接下来大家我们讲点特殊的东西就是object类, 我们一直在说继承,子继承了父,父还有没有父类呢, 为什么这么思考,大家想构造函数的第一行是不是 ...