创建数据库

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回想一下基础知识的更多相关文章

  1. mysql学习之基础知识

    一.什么是数据库 一般而言,数据库(Database)是按照数据结构来组织.存储和管理数据的仓库.我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢.所以,使用关系型数据库管理系统(RDB ...

  2. MySQL系列(一)--基础知识(转载)

    安装就不说了,网上多得是,我的MySQL是8.0版本,可以参考:CentOS7安装MySQL8.0图文教程和MySQL8.0本地访问设置为远程访问权限 我的MySQL安装在阿里云上面,阿里云向外暴露端 ...

  3. mysql原生语句基础知识

    要操作数据库,首先要登录mysql: *mysql -u root -p 密码 创建数据库: *create database Runoob(数据库名); 删除数据库: *drop database ...

  4. mysql的优化基础知识

    1.查看各种SQL执行的频率 mysql> show status like 'Com_select';--Com_insert,Com_delete,connections(试图连接mysql ...

  5. mysql的部分基础知识....

  6. mysql基础知识详解

    分享一些mysql数据库的基础知识. 1.每个客户端连接都会从服务器进程中分到一个属于它的线程.而该连接的相应查询都都会通过该线程处理.2.服务器会缓存线程.因此并不会为每个新连接创建或者销毁线程.3 ...

  7. 深入理解mysql之BDB系列(1)---BDB相关基础知识

        深入理解mysql之BDB系列(1) ---BDB相关基础知识 作者:杨万富   一:BDB体系结构 1.1.BDB体系结构 BDB总体的体系结构如图1.1所看到的,包括五个子系统(见图1.1 ...

  8. 深入了解mysql它BDB系列(1)---BDB基础知识

        深入了解mysql它BDB系列(1) ---BDB关基础知识 作者:杨万富   一:BDB体系结构 1.1.BDB体系结构 BDB总体的体系结构如图1.1所看到的.包括五个子系统(见图1.1中 ...

  9. MySQL系列(一)--基础知识大总结

    MySQL系列(一)---基础知识大总结 前言:本文主要为mysql基础知识的大总结,mysql的基础知识很多,这里只是作为简单的介绍,但是具体的细节还是需要自行搜索.当然本文还有很多遗漏的地方,后续 ...

随机推荐

  1. Spring常见面试问题 (转)

    Spring 1. Spring工作机制及为什么要用?Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的.Spring既是一个AOP框架,也是一IOC容器.SpringFramew ...

  2. 高度关注!国务院对A股发出强烈信号↓

    高度关注!国务院对A股发出强烈信号↓http://dwz.cn/2qHBd1郎咸平:中国股市存在一大隐疾 使其成为全球市场的一个另类!http://dwz.cn/2qHBVy一不小心,马云又完成了四场 ...

  3. 【POJ 1741】Tree

    Tree Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 11570   Accepted: 3626 Description ...

  4. 修改emlog后台登录路径的方法(转)

    emlog后台登录地址的目录名称默认为admin,并且官方没有提供自定义后台登录入口名字的功能,这多少让我们觉得有些不安全,毕竟暴露一个网站的后台不是一件安全的事,今天就给您说下修改方法,增加一下网站 ...

  5. Perl中检测标准输入使用的字符集

    #Perl中检测标准输入使用的字符集 sub locale_encode{ my $lang = $ENV{'LANG'}; my $dot_pos = rindex($lang, '.'); my ...

  6. 第一个Python程序的Hello Python,竟然有问题

    print 'hello python' 运行时显示:SyntaxError: invalid syntax 解决办法: 这应该是版本的问题,Python2的话直接就可以输出,但是到了Python3需 ...

  7. hdu1255(线段树——矩形面积交)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1255 题意:求N个矩形中,求被覆盖至少俩次的面积和 分析:覆盖两次即col[rt]>=2就好.一 ...

  8. DirectX Sample-ConfigSystem中采用配置文件进行游戏设置

    这个例子是一个撞球系统,碰撞部分也值得学习,不过最重要的还是其配置部分,配置文件为config.txt,其中包括: Requirements:所需配置 propertyset:预定义的设置,通过名字引 ...

  9. 2012Android开发热门资料(110个)

    下载中心完整附件下载地址:http://down.51cto.com/data/412494 附件内容部分预览: 专题推荐: Android控:平板电脑HD精品游戏软件合集(共32个) http:// ...

  10. UVA 12263 Rankings(拓扑排序)

    给出一个n个数的序列1,然后有m个改动(a, b),在序列2中a跟b在序列中的相对顺序改变.求符合题意的序列2. 题中说道如果一个数的位置不确定,则输出‘?' ,仔细想想,这种情况是不会存在的,因为在 ...