用了两天的时间终于把MySql安装好了,还是很麻烦的,之所以没有选择直接安装,使用的是免安装版本,主要是想了解这个数据库的配置,这样以后就可以更好的了解它了。

登录MySql:mysql –h localhost –P 3306 –u root –p  这样就可以直接登陆了。

一些常用的命令;

查看一些配置信息;

\s

1:创建一个名为my_db的数据库;

create database mydb1;

2:创建一个使用gbk字符集的mydb2;

 create database mydb2 character set gbk;

<在data中有一个以数据库名为文件夹的,里面有个以db.opt的文件,里面就是字符集的编码>

3:创建一个使用utf8字符集,并带校对规则的mydb3数据库;<mysql中只能写成这样>

 create database mydb3 character set utf8 collate utf8_bin;

4:查看数据库

show databases;

5:查看数据库的创建语句;

show create database mydb2;

6:修改数据库编码,将utf8---->gbk;

alter database mydb2 character set gbk;

7:删除数据库,<和sql server里面的是一样的,都是使用的是基本的sql语句。>

 drop database mydb1;

8:选择数据库,进入某个数据库。

use mydb2;

想进入那个数据库直接进入就可以,不必要退出。

9:查看现在是进入那个数据库

select database();

一:数据库中的数据类型:

char 和varchar类型:char(M)是规定固定大小的,varchar():可变长度;

binary和varbinray类型:两个表示的是二进制数据。binary(m)表示固定长度,如果数据的长度不足将在后面补”\0”补齐,最终达到指定长度。

text类型:用于表示大文本数据,例如内容,评论等。

blob类型:是一种大二进制类型,保存图片,PDF文档。

ENUM类型:只能列举。

set类型:表示字符串对象,可以有零/多个;

bit类型:表示二进制数据。BIT(m);

时间的表示方法:

二:表的操作;

1:增加表<创建一个表employ>,这里可以设置字符集编码和调度规则。

create table employee(
id int,
name varchar(20),
gender char(1),
birthday date,
entry_date date,
job varchar(50),
salay double,
resume text
);

这里注意每个字段后面都有逗号,最后一个没有,语句完了之后是以分号结尾的。

2:查看表是否创建成功。

查看表结构:

desc tabName;

查看当前所有表

show tables;

查看当前数据库表创建语句

show create table tabName;

3:修改表

增加一个image列

alter table employee add image blob;

修改job列,使其长度为60;之前为50;

alter table employee modify job varchar(60);

删除gender列

 alter table employee drop gender;

表名改为user;

rename table employee to user;

修改表的字符集编码

alter table user character set utf8;

列名name修改为username

alter table user change name username varchar(20);
4:删除表
   drop table tabName;

三:表的约束

1:主键约束

单行主键约束

	    create table user(
id int primary key,
name varchar(20),
grade float
);
这里的primary key就是对列id,将其设置是主键。
  设置多个字段主键。
		create table employee(
sec_id int,
image_id int,
grade float,
primary key(sec_id,image_id)
);
2:不能为空。
   后面直接加个not null,
         create table employee(
sec_id int,
image_id int,
grade float not null,
primary key(sec_id,image_id)
);
3:唯一约束
     加个unique;
 create table user(
id int primary key,
username varchar(50) not null,
grand float unique
);

4:默认约束

这里就是设置数据库中的一些默认值,

create table user(
id int primary key,
username varchar(50) not null,
grand float default 1,
job varchar(50) unique
);

设置id为自增的,这里就是给其一个计数器,每一次重计数器中取值,每次都是不一样的。auto_increment;

		 create table user(
id int primary key auto_increment,
username varchar(50) not null,
grand float default 1,
job varchar(50) unique
);

MySql笔记01的更多相关文章

  1. mysql笔记01 MySQL架构与历史、Schema与数据类型优化

    MySQL架构与历史 1. MySQL架构推荐参考:http://www.cnblogs.com/baochuan/archive/2012/03/15/2397536.html 2. MySQL会解 ...

  2. MySQL笔记 01

    STRUCTURE QUERY LANGUAGE 数据库CRUD操作 DDL: 数据库定义语言,定义数据库数据表结构 CREATE(创建): 创建数据库 CREATE DATABASE 数据库名字; ...

  3. MySQL笔记01(黑马)

    一.数据库基本介绍 目标:了解数据库的功能和常见数据库分类.数据库产品 数据库基本知识 数据库分类 SQL简介 MySQL访问 1.数据库基本知识 目标:了解数据库的概念和数据库的作用 概念 数据库: ...

  4. PHP 学习笔记 01

    例子: 为什么要学PHP 主观原因: 前段时间在学校处理了毕业的一些事情,回到上海后开始了找工作的旅程.意向工作是WPF开发或者ASP.NET 作为后端的WEB开发. 陆陆续续一直在面试,其中有一家公 ...

  5. 涂抹mysql笔记-数据库中的权限体系

    涂抹mysql笔记-数据库中的权限体系<>能不能连接,主机名是否匹配.登陆使用的用户名和密码是否正确.mysql验证用户需要检查3项值:用户名.密码和主机来源(user.password. ...

  6. 软件测试之loadrunner学习笔记-01事务

    loadrunner学习笔记-01事务<转载至网络> 事务又称为Transaction,事务是一个点为了衡量某个action的性能,需要在开始和结束位置插入一个范围,定义这样一个事务. 作 ...

  7. 《30天自制操作系统》笔记(01)——hello bitzhuwei’s OS!

    <30天自制操作系统>笔记(01)——hello bitzhuwei's OS! 最初的OS代码 ; hello-os ; TAB=4 ORG 0x7c00 ; 指明程序的装载地址 ; 以 ...

  8. 《The Linux Command Line》 读书笔记01 基本命令介绍

    <The Linux Command Line> 读书笔记01 基本命令介绍 1. What is the Shell? The Shell is a program that takes ...

  9. MySQL笔记汇总

    [目录] MySQL笔记汇总 一.mysql简介 数据简介 结构化查询语言 二.mysql命令行操作 三.数据库(表)更改 表相关 字段相关 索引相关 表引擎操作 四.数据库类型 数字型 字符串型 日 ...

随机推荐

  1. Github注册过程以及对管理软件的了解

    二.目前流行的源程序管理软件和项目管理软件主要有以下一些: 1.Visual Source Safe 优点:如果开发工具是VS.NET,用VSS较合适,方便,安装配置和使用都简单,版本控制简单,打la ...

  2. 一种另类的解决URL中文乱码问题--对中文进行加密、解密处理

    情景:在资源调度中,首先用户需要选择工作目标,然后跟据选择的工作目标不同而选择不同的账号和代理ip.处理过程如下:点击选择账号,在js中获取工作目标对工作目标进行两次编码(encodeURI(enco ...

  3. [stm32] NRF24L01+USART搞定有线和无线通信

    前言 一般进行远程监控时,2.4G无线通信是充当远程数据传输的一种方法.这时就需要在现场部分具备无线数据发送装置,而在上位机部分由于一般只有串口,所以将采集到的数据送到电脑里又要在上位机端设计一个数据 ...

  4. IOS Animation-贝塞尔曲线与Layer简单篇(一)

    IOS Animation-贝塞尔曲线与Layer简单篇 swift篇 1.介绍 贝塞尔曲线: 贝塞尔曲线是计算机图形图像造型的基本工具,是图形造型运用得最多的基本线条之一.它通过控制曲线上的四个点( ...

  5. java 内存观察

    总结一下上周的工作. 主要就是用到了 jmap jvisualvm jmap 用来生成jvm堆内存的bin文件 jvisualvm则更强大. 待续.

  6. jq里延迟对象Deferred,状态变化后,会一直保持

    var defer = $.Deferred(); defer.resolve('abc'); defer.done(function (data) { console.log(data); }) d ...

  7. EF架构~关系表插入应该写在事务里,但不应该是分布式事务

    回到目录 这个标题很有意思,关系表插入,就是说主表和外表键在插入时,可能会有同步插的情况,如在建立主表时,扩展表需要同步完成数据的初始化工作,而对于多表插入时,我们为了保证数据的一致性会针它写在事务中 ...

  8. Flume日志采集系统——初体验(Logstash对比版)

    这两天看了一下Flume的开发文档,并且体验了下Flume的使用. 本文就从如下的几个方面讲述下我的使用心得: 初体验--与Logstash的对比 安装部署 启动教程 参数与实例分析 Flume初体验 ...

  9. Atitit 图像处理知识点  知识体系 知识图谱v2

    Atitit 图像处理知识点  知识体系 知识图谱v2 霍夫变换(Hough Transform) 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法.主要用来从图像 ...

  10. D3.js 学习( 一)

    <html> <head> <meta charset="utf-8"> <title>第三课:为柱形图添加坐标轴</titl ...