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

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. Spring Data操作Redis详解

    Spring Data操作Redis详解 Redis是一种NOSQL数据库,Key-Value形式对数据进行存储,其中数据可以以内存形式存在,也可以持久化到文件系统.Spring data对Redis ...

  2. 二级C考点汇总

    1.变量命名的合法性2.数据类型的转换,分为强类型和隐式类型3.字符串:字符串的声明.定义和使用,通常结合数组和指针 4.数组:下标的转换及数组的顺序存储5.函数:声明.定义.调用,递归函数(如菲薄纳 ...

  3. NOI全国赛(1998)——围巾裁剪

    裁缝有一块非常珍贵的丝绸围巾.可惜的是,围巾的某些部分已经被蛀虫给咬坏了.裁缝当然不愿意就这么把围巾给丢了,于是,他想把围巾给裁成两块小围巾送给他的两个女儿.自然,两块小围巾的面积之和越大越好.  这 ...

  4. Scut游戏引擎改造兼容Codis。

    原生的Scut引擎是采用redis来做数据缓存层,引擎在以异步的方式(时间可配置,默认100ms)实现数据同步.为了提高redis的可扩展性.高可用性,把redis换成codis,因为codis有部分 ...

  5. wcf、web api、webservicer 之间的区别

    名次注解 SOAP 简单对象访问协议(SOAP)是一种轻量的.简单的.基于 XML 的协议,是交换数据的一种协议规范,是一种轻量的.简单的.基于XML(标准通用标记语言下的一个子集)的协议,它被设计成 ...

  6. React Native 之 数据持久化

    前言 因为 实战项目系列 涉及到数据持久化,这边就来补充一下. 如本文有错或理解偏差欢迎联系我,会尽快改正更新! 如有什么问题,也可直接通过邮箱 277511806@qq.com 联系我. demo链 ...

  7. 在docker container中运行docker-compose

    为了保持宿主主机的环境干净,因此将docker-compose安装到一个基于centos7.3的容器之中,因为tianchao屏蔽了amazonaws,最后选择了通过pip方式来安装,这也是官方推荐的 ...

  8. [C++]STL容器Vector的内存释放

    直接抛出两句话,说明到底应该如何释放Vector占用的内存. “vector的clear不影响capacity,你应该swap一个空的vector.” <Effective STL>中的“ ...

  9. 关于WAMPserver配置httpd.conf无法修改根目录解决方法

    最近在学习php开发, 在慕课网上先听了安装配置WAMP server的课,可是第二步配置网站根目录的地方就出错了,按照网课上讲的将httpd.conf文件中的 [Document] 和[Direct ...

  10. ios坐标位置转换

    //ios常用坐标转换来处理一些下拉框队形的按钮的位置,我以最下面两个来进行一下个人的理解,不足之处多多见谅 - (CGPoint)convertPoint:(CGPoint)point toView ...