mysql1,数据库的登录,建库,建表,sql的约束,表字段的添加修改删除等,mysql的数据库操作,分页,数据库备份,sql的命令

MYSQL

是一个开源程序,轻量级的数据库管理系统,使用简单快捷。
mysql的安装(百度)
navicat的安装(百度)这是一个操作数据的界面操作,相当于oracle的plsql;
navicat的登录:(也是验证数据是否安装成功)
在这里插入图片描述
输入连接名:这就是一个相当于你的存储空间的名字
输入指令:相当于密码,
在这个存储空间中进行建立数据库的操作,在oracle中是建立好的库XE。
自带4个库:
test;
mysql;
information_schema;
performance_schema;

建库,建表

##两个警号是sql的注解:
##选中要执行的sql语句,右建选择run select;
##show tables 显示当前所有的表
## describe 表名,展示表的结构
## show create table 表名 显示建表的sql语句

##mysql创建数据库:
##任意打开一个一个数据库,点击query->new query ->打开SQL窗口。
##格式:create database 表名 defalut character set utf-8;
create database aa default character set utf8;
##切换数据库:use 库名
use aa;
##删除数据库:drop database 库名;
drop database aa;
#################################################
界面操作:
##:在连接名上右建->new database ->填上库名 ->选择编码格式->ok;
	##删除数据库:选中数据库,右建删除数据库即可。
 ################################################
创建表:create table 表名(字段名 类型 约束,.....)
	create table student(
			sid int(10) not null auto_increment primary key ,
			sname varchar(100) ,
			sage int(100),
			ssex char(4),
			sqq int(11)
)
查看表:select * from student;
插入表:insert into student values(default,'系',12,'男',1111);
注意:在sql中没有序列,可以在主键上设置自动增加,auto_increment;
			oracle中的约束有的无法使用。
######################################################################
创建表时的字段类型:
	数值类型:int():整数类型
						double()/float():浮点型类型
	字符型类型:varchar():根据字符的大小动态分配存储空间
							char():直接分配指定的存储空间;
	日期型类型:date:格式:yyyy-mm-dd
							datetime:yyyy-MM-dd hh-mm-ss;
	            timestamp:会自动进行时区转换,4个字符
							time:时间
							year:yyyy,年份

sql的约束,表字段的添加修改删除等

##sql中的约束
  ##主键约束
    在创建表后添加priamry key
    或者在表的最后加 constraint fk_表名_字段名 primary key (字段名)
    建表后添加:alter table 表名 add constraint fk_表名_字段名 primary key (字段名)
    建表后删除:alter table 表名 drop  constraint fk_表名_字段名 primary key (字段名)
  ##不为空约束
    在创建表的字段后面加not null,
    建表后,百度
    注意:在oracle中不为空,是连空字符串都不可以,在mysql中空字符串是可以的。
  ##检查约束:
    mysql中是没有检查约束功能的。check这个字符使用没错,但没了这个功能了。
    注意:
    可以在代码中使用逻辑完成检查约束,
    可以使用sql的存储过程(也就是自己编写check()这个方法)
  ##唯一约束:
    在创建表后添加unique
    或者在表的最后加 constraint fk_表名_字段名 unique key (字段名)
    建表后添加:alter table 表名 add constraint un_表名_字段名 unique key (字段名)
    建表后删除:alter table 表名 drop  constraint un_表名_字段名 unique key (字段名) 
  ##外键约束
    在创建表后添加references 表名(字段名)
    或者在表的最后加 constraint fk_子表名_字段名 foreign key (字段名) references 父表名(字段名)
    建表后添加:alter table 子表名 add constraint fk_子表名_字段名 foreign key (字段名) references 父表名(字段名)
    建表后删除:alter table 子表名 drop  constraint fk_子表名_字段名 foreign key (字段名) references 父表名(字段名)
########################################################################################################
##代码(对上面的解释)
##切换数据库
use  aa;
##创建表,在字段后添加约束
create table student(
  sid int(10) not null primary key auto_increment,
  sname varchar(100) not null,
  sage int(10) not null,
  sex char(4) not null,
  sqq int(11) unique,
  cid int(11) REFERENCES clazz(cid)
)
##创建表,在表的最后加
create table student(
  sid int(10) not null  auto_increment,
  sname varchar(100) ,
  sage int(10) ,
  sex char(4) ,
  sqq int(11) ,
  cid int(11),
  constraint pk_s_sid PRIMARY key(sid),
  constraint fk_s_c_cid foreign key (cid) references clazz(cid),
  constraint un_s_sqq unique (sqq)
)
##创建表之后添加约束
alter table student add constraint pk_s_sid PRIMARY key(sid),
alter table sutdent add   constraint fk_s_c_cid foreign key (cid) references clazz(cid),
alter table sutdent add   constraint un_s_sqq unique (sqq),
##创建表clazz
create table clazz(
  cid int(10) not null primary key auto_increment,
  cname varchar(100) not null,
  cdes varchar(100) not null
)
#######################################################################################
##对于表的修改删除
  ##添加字段
       alter table 表名 add 字段名 类型,
  ##删除字段
       alter table 表名 drop 字段名
  ##修改字段类型
       alter table 表名 modify 字段名 新的类型
  ##修改字段名
       alter table 表名 字段名 新的字段名 类型
  ##修改表名
       alter table 表名 rename as 新的表名
  ##删除表
       drop table 表名

    

mysql的数据库操作,分页,数据库备份

##显示表 show tables 表名
##显示表创建语句:show create table 表名;
##显示数据库:show database ;
#######################################################
##mysql数据操作:
             ##查询:
                      #单表查询:
                            别名;同oracle;
                            连接符 :concat() 函数
                            去重:distinct
                            where子查询:;同oracle;
                            分组,having:同oracle;;
                            排序:同oracle;
                      #多表查询:
                            同oracle;
             ##数据增加,修改,删除:
                      同oracle;
             ##子查询:(同oracle;)
                      单行子查询,
                      多行子查询;
##mysql的分页:
    ##一页显示两条数据
                      select * from 表名 limit 0,2, ##查询第一页数据
    ##二页显示两条数据
                      select * from 表名 limit 2,2, ##查询第二页数据
    ##三页显示两条数据
                      select * from 表名 limit 4,2, ##查询第三页数据
    ##分页格式
                      n表示每页显示的数量,m表示页数
                      select * from 表名 limit (m-1)n,n,
##mysql的数据库备份
                      sql命令(百度)
                      界面操作: 略                                                        

sql的命令

##sql的命令方式
  ##连接,mysql -uroot -p密码(这里使用mysql,必须配置环境变量)
  ##显示当前库:show databases;
  ##创建库:create database 库名;
  ##显示表:show tables;
  ##创建表:create table 表名();
  ##切换数据库:use 库名;
  ##退出:exit
####################
oralce与mysql的不同
  1:字段的类型不同:
              myql中:
               整数类型:smallint 两个字节,int 4个字节,Interger 是同义词, bigint 8个字节
               浮点类型:float 4个字节,double 8 个字节
               字符类型:char :不可变长度;varchar:可变长度
               日期类型:date:yyyy-mm-dd;datetime:yyyy-MM-dd hh-mm-ss;timestamp:yyyy-MM-dd hh-mm-ss,会对时区进行转换;
                         time:hh-mm-ss;year:yyyy;
               其他类型:text:文本类型;
                         blob:存放二进制文件;
   2:对于外连接:
               mysql中不可以使用sql92的方式进行连接;
   3:关于删除:delete from 表名;                      
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值