==============================

MYSQL数据库的常见操作

==============================

一、mysql的连接与关闭

-h:指定所连接的服务器位置

-u:数据库的用户名

-p:数据库的密码

 mysql -u 用户名 -p  //连接数据库
密码
exit //关闭数据库
 mysql_connect($host,$user,$password);  //连接数据库
mysql_close() //关闭数据库

二、创建数据库

1、创建一个名为test1的数据库

mysql> create database if not exists test1;

2、显示所有数据库

 mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| test1 |
+--------------------+
5 rows in set (0.00 sec)

3、使用名为test1的数据库

mysql> use test1;

4、删除一个名为test1的数据库

mysql> drop database if exists test1;

5、创建一个表

三、数据表内容的简单管理

1、添加数据 表记录

insert into 表名(字段名称,字段名称...) values(值1,值2...);

2、删除数据

delete from 表名 where id=1;

3、修改数据

update 表名 set 字段名称=新值,字段名称=新值... where id=1;

4、查看数据

select 字段名称,字段名称... from 表名;

5、创建表

 create table 表名(
id int,
username varchar(30),
age int
);

四、数据值和列的类型

1、数值

 int
tinyint
字段属性:
无符号的数 unsigned 增大存储范围
int(n) (n)默认情况下没有任何意义 不会影响存储范围
zerofill属性 0填充 3 001 012 123 1234
小数
float(n,m)
float(6,2); n共几位 2小数点后保留几位
decimal(6,2);

2、字符

 char(n) 固定长度  n 0-255 密码 char(32)
varchar(n) 可变长度 用户名 n 0-65535 varchar(20)

3、时间和日期  int

4、NULL

五、创建索引

1、主键索引 primary key

  一个数据表只能指定一个主键,而且主键的值不能为空

  声明一个整形的字段cid,设置其属性为NOT NULL和AUTO_INCRENENT,并在字段后使用PRIMARY KEY设置该字段为主键索引。在创建book1时,声明的字段bid也设置相同的属性,而且使用另一种从句的方式将其设置为主键索引。并在book1表中声明一个cid的字段,用于保存book0表中的设置为主键的cid

 mysql> create table book0 (
-> cid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> bookname VARCHAR(15) NOT NULL
-> );
Query OK, 0 rows affected (0.14 sec) mysql> create table book1 (
-> bid int(10) NOT NULL AUTO_INCREMENT,
-> cid MEDIUMINT(8) NOT NULL,
-> detail TEXT NOT NULL,
-> price DOUBLE NOT NULL,
-> PRIMARY KEY (bid)
-> );
Query OK, 0 rows affected (0.11 sec)

注意:防止数据不一致,在删除一条记录之前,必须检查在其他数据表里是否存在对这条记录的引用

2、唯一索引 UNIQUE

  避免数据重复出现

  在创建表book2时,为类别名字段bookname使用关键字UNIQUE将其定义为一个唯一索引,避免插入数据时出现重复的类别名称

 mysql> create table book2 (
-> cid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> bookname VARCHAR(15) NOT NULL UNIQUE
-> );
Query OK, 0 rows affected (0.08 sec

3、普通索引 INDEX

  仅提高查询的速度

CREATE INDEX ind ON book3(uid,cid); #为book2表的两个列创建名为ind的索引

4、全文索引

  mysql只支持英文文本

【代码学习】MYSQL数据库的常见操作的更多相关文章

  1. 【代码总结】MYSQL数据库的常见操作

    ============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与关闭 -h:指定所连接的服 ...

  2. MySQL数据库的常见操作(七)

    MySQL数据库的常见操作 1.创建数据库 2.创建重名的数据库以及如何查看警告信息 3.设置数据库的编码方式(默认为utf8) 4.修改和查看数据库的编码方式 5.删除数据库 6.6.删除已经删除了 ...

  3. Flask中Mysql数据库的常见操作

    from flask import Flask,render_template #导入第三方链接库sql点金术 from flask_sqlalchemy import SQLAlchemy #建立对 ...

  4. MySQL数据库的常见操作

    1.查看所有的数据库 1 show databases; 2.创建数据库  后面的时编码格式 1 create database dbName charset='utf8'; 3.使用/切换数据库 1 ...

  5. Vc数据库编程基础MySql数据库的常见库命令.跟表操作命令

    Vc数据库编程基础MySql数据库的常见操作 一丶数据库常见的库操作 1.1查看全部数据库 命令:  show databases 1.2 创建数据库 命令: Create database 数据库名 ...

  6. 重新学习MySQL数据库3:Mysql存储引擎与数据存储原理

    重新学习Mysql数据库3:Mysql存储引擎与数据存储原理 数据库的定义 很多开发者在最开始时其实都对数据库有一个比较模糊的认识,觉得数据库就是一堆数据的集合,但是实际却比这复杂的多,数据库领域中有 ...

  7. 重新学习MySQL数据库1:无废话MySQL入门

    重新学习Mysql数据库1:无废话MySQL入门 开始使用 我下面所有的SQL语句是基于MySQL 5.6+运行. MySQL 为关系型数据库(Relational Database Manageme ...

  8. 重新学习MySQL数据库2:『浅入浅出』MySQL 和 InnoDB

    重新学习Mysql数据库2:『浅入浅出』MySQL 和 InnoDB 作为一名开发人员,在日常的工作中会难以避免地接触到数据库,无论是基于文件的 sqlite 还是工程上使用非常广泛的 MySQL.P ...

  9. 重新学习MySQL数据库11:以Java的视角来聊聊SQL注入

    本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial ...

随机推荐

  1. 好多鱼 Java

    牛客网的题目: 链接:https://www.nowcoder.com/questionTerminal/e3dd485dd23a42899228305658457927牛牛有一个鱼缸.鱼缸里面已经有 ...

  2. Golang版protobuf编译

    官方网址: https://developers.google.com/protocol-buffers/ (需要FQ) 代码仓库: https://github.com/google/protobu ...

  3. 菜鸟Scrum敏捷实践系列(二)用户故事验收

    菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 一.用户 ...

  4. spring boot gradle build:bootRepackage failed

    When running 'gradle clean build' on my spring boot project (version 1.3.6.RELEASE) on windows 10 (a ...

  5. Struts2的validator和WEB-INF下页面交互以及路径问题

    当我使用短路校验器时(客户端),在页面下方老是出来 FreeMarker template error!然后我就把我的页面都放在了WEB-INF中,结果很多路径都不对了,因为客户端是没有直接访问Str ...

  6. pip --upgrade批量更新过期的python库

    pip --upgrade批量更新过期的python库 python pip 转载请标明出处:marsggbo网易博客http://blog.163.com/hexin_mars_blog/blog/ ...

  7. stl1

    #include<iostream> #include<map> #include<string> using namespace std;   map<st ...

  8. java调试技能之dubbo调试 ---telnet

    dubbo作为一个远程调用框架,虽与同类型的框架,不知道谁优谁劣,但是就公司层面使用来说,还是很棒的.这里简单的写一下怎么使用和调试技巧,就算是作个使用总结吧,供快速使用和问题解决! dubbo是基于 ...

  9. lumen 中的 .env 配置文件简介和适用场景

    lumen 是 laravel 的衍生品,核心功能的使用和 laravel 都是一致的,但配置文件这一方面,lumen 在 laravel 的基础上增加了更简便的配置方式: lumen 采用了 Dot ...

  10. Android 学习笔记之实时保存数据-现场保护onSaveInstanceState()

    数据保存:在软件开发中我们希望保存下各个Activity数据,以实现客户数据的时时保存,达到较好的用户体验. 那么我们需要解决如下问题: 1.什么时候保存? 2.保存哪些数据?     我想保存应用产 ...