首页 > 数据库 > MySQL > 正文

MySql入门之一:DDL操作创建表(添加主键, 外键约束以及基本的数据类型)

2024-07-24 13:00:00
字体:
来源:转载
供稿:网友

1.创建表基本语句

CREATE TABLE users(username VARCHAR(50) PRIMARY KEY,userpwd VARCHAR(50) NOT NULL,userage INT ,usersex VARCHAR(20),birth TIMESTAMP,

roles_id INT,

constraint fk_users_roles foreign key(role_id) references roles(roleid)

 );

//说明: 创建用户表, 添加主键username, 非空约束 userpwd,  外键role_id

2.声明主键的方式小结

(1) create table users (

username varchar(50) primary key

);

(2)create table users(

username varchar(50) ,

userpwd varchar(50),

primary key (username)

);

可以声明联合主键

create table users(

username varchar(50),

userpwd varchar(50),

birth datetime,

primary key (username, userpwd)

);

  (3)

create table users (

username varchar(50), 

userpwd varchar(50)

);

alert table users add primary key (username, userpwd);

3.声明外键的方式小结

(1)

create table users(

username varchar(50),

role_id int ,

constraint fk_users_roles foreign key (role_id) references roles(roleid)

);

可以添加两个主键

 CREATE TABLE roles_menus (roles_id INT ,menus_id INT,PRIMARY KEY (roles_id, menus_id),CONSTRAINT fk_users_roles FOREIGN KEY (roles_id) REFERENCES roles(roleid),CONSTRAINT fk_users_menus FOREIGN KEY (menus_id) REFERENCES menus(menuid)  );     

(2)

create table users(

username varchar (50) primary key,

role_id int

);

alter table users add constraint fk_users_roles foreign key (role_id) references roles(roleid);

4.其它的常用的命令

show datebases;  //查看所有的数据库

use usersys;         //使用名字叫usersys 的数据库

show tables;         //查看当前数据库中所有的表单

desc users //查看创建的users 表的字段信息

5.MySQL 数据类型

int  整形

double 浮点型  double(6,2) 表示 总位数6位 小数点后2位

varchar 可变长度字符 varchar(10)  'aa' 占两个字节   数据库中 utf-8编码(出中文外一个字符一个字节,中文占3个字节 )

char 不可变长度字符串类型  char(10) 10表示的是字节数  'aa        '占十个字节 

日期类

date 日期形  yyyy-MM-dd 格式

time 事件形  hh:mm:ss

timestamp 时间戳   yyyy-MM-dd hh:mm:ss  注意时间戳在mysql中会自动的赋值 在insert 语句中给null 就可以

datetime 日期时间  yyyy-MM-dd hh:mm:ss


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表