mysql update语句

MySQL 基础之二

痞子三分冷 提交于 2019-12-05 08:52:10
设计范式:   第一范式:字段是原子性   第二范式:存在可用主键   第三范式:任何表都不应该有依赖于其它表非主键的字段 创建数据库、设计数据表   字段:字段名、数据类型、约束(通过键来实现,而键其实可以当做索引来用) DDL:CREATE、DROP、ALTER DML:INSERT(REPLACE)、DELETE、UPDATE 、SELECT DCL:GRANT、REVOKE 数据类型: datatype 字符: 定长字符: 不区分大小写 char(#) 用或不用,给1个占10个 区分大小写 binary(#) 变长字符: 不区分大小写 varchar(#) 有结束符,占用一个, 给1个,占2个 区分大小写 varbinary(#) 对象存储:大文本存储 TEXT 不区分大小写 BLOB 区分----二进制的大对象 内置类型: ENUM 枚举(给你几种,最多有几种选择) SET 集合 数值: 精确:整型[int]、十进制[decimal] int tinyint 1byte smallint 2bytes mediumint 3bytes int 4bytes bigint 8bytes 范围: 0 - 2^64-1 近似: 单精度浮点[float]、双精度浮点[double]    日期时间型:       日期:DATE       时间:TIME       日期时间

mysql事务与PDO事务处理-转载

风流意气都作罢 提交于 2019-12-05 08:49:56
1、MySQL事务   MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务!     1)在MySQL中只有使用了Innodb数据库引擎的数据库或表才支持事务     2)事务处理可以用来维护数据库的完整性,保证成批的SQL语句要么全部执行,要么全部不执行     3)事务用来管理insert,update,delete语句一般来说,事务是必须满足4个条件(ACID): Atomicity(原子性)、Consistency(稳定性)、Isolation(隔离性)、Durability(可靠性)       1、事务的原子性:一组事务,要么成功;要么撤回。       2、稳定性 : 有非法数据(外键约束之类),事务撤回。       3、隔离性:事务独立运行。一个事务处理后的结果,影响了其他事务,那么其他事务会撤回。事务的100%隔离,需要牺牲速度。       4、可靠性:软、硬件崩溃后,InnoDB数据表驱动会利用日志文件重构修改。可靠性和高速度不可兼得, innodb_flush_log_at_trx_commit选项 决定什么时候吧事务保存到日志里。 ———————————————— 在Mysql控制台使用事务来操作

通过shell脚本进行数据库操作

橙三吉。 提交于 2019-12-05 08:19:02
在做一些日常的运维工作的时候,经常需要些一些shell脚本进行设备性能以及其它参数的监控。在过去的一年工作中,接触到的比较多的是对数据库中某些信息的监控。 于是就想到了用shell+mysql+crontab进行实现。 下面附上通过shell命令行非交互式的操作数据库的方法: mysql -hhostname -Pport -uusername -ppassword -e 相关mysql的sql语句,不用在mysql的提示符下运行mysql,即可以在shell中操作mysql的方法。 #!/bin/bash HOSTNAME="192.168.111.84" #数据库信息 PORT="3306" USERNAME="root" PASSWORD="" DBNAME="test_db_test" #数据库名称 TABLENAME="test_table_test" #数据库中表的名称 #创建数据库 create_db_sql="create database IF NOT EXISTS ${DBNAME}" mysql -h${HOSTNAME} -P${PORT} -u${USERNAME} -p${PASSWORD} -e "${create_db_sql}" #创建表 create_table_sql="create table IF NOT EXISTS $

如何修改mysql root密码

耗尽温柔 提交于 2019-12-05 08:08:45
如何修改mysql root密码 忘记MySQL ROOT密码是在MySQ使用中很常见的问题,可是有很多朋友并不会重置ROOT密码,那叫苦啊,特写此文章与大家交流: 1、编辑MySQL的配置文件:my.ini 一般在MySQL安装目录下有my.ini即MySQL的配置文件。 在此配置文件的最后添加如下一行: skip-grant-tables 保存退出编辑。 2、然后重启MySQL服务 在命令行下执行: net stop MySQL net start MySQL 3、设置新的ROOT密码 然后再在命令行下执行: MySQL -u root -p MySQL或mysql -u root -p 直接回车无需密码即可进入数据库了。 此时,在命令行下执行 use mysql; 现在我们执行如下语句把root密码更新为: update user set password=PASSWORD("root") where user='root'; (注意:此时不用使用mysqladmin -u root -p password '你的新密码'这条命令修改密码,因为'skip-grant-tables'配置, 不信的话,你可以试用一下,它肯定会报如下所示的错误: F:\Documents and Settings\long>mysqladmin -u root -p password 'root'

mysql查漏补缺

十年热恋 提交于 2019-12-05 07:37:42
Mysql查漏补缺 存储引擎 数据库使用存储引擎来进行CRUD的操作,不同的存储引擎提供了不同的功能。Mysql支持的存储引擎有InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、BLACKHOLE等,默认使用InnoDB作为存储引擎。 存储引擎列表 功能 MylSAM MEMORY InnoDB Archive 存储限制 256TB RAM 64TB None 支持事务 No No Yes No 支持全文索引 Yes No No No 支持树索引 Yes Yes Yes No 支持哈希索引 No Yes No No 支持数据缓存 No N/A Yes No 支持外键 No No Yes No 其中MEMORY,由于存储是在内存,可以把一些临时数据存放进使用这种存储引擎的Mysql中,当然在目前也有类似功能的项目出现,如Redis,Memcache。 索引 索引就是表的目录,相当于书的目录,可以更快的查找到想要的记录。而索引本身,会单独保存在一个文件中。 优化索引 1、数据类型越小越好:数据类型越小,占用的空间更小,处理速度就会变快。 2、数据类型越简单越好:比如整型,相比于字符型,比较起来的复杂度更低。 3、避免NULL:有NULL值的列很难进行查询优化。 不适合索引的场景 1、查询中很少用到的列。比如student表中的性别列

MySQL_笔记

百般思念 提交于 2019-12-05 07:33:32
MySQL数据库软件 1. 安装 * 参见《MySQL基础.pdf》 2. 卸载 1. 去mysql的安装目录找到my.ini文件 * 复制 datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" 2. 卸载MySQL 3. 删除C:/ProgramData目录下的MySQL文件夹。 3. 配置 * MySQL服务启动 1. 手动。 2. cmd--> services.msc 打开服务的窗口 3. 使用管理员打开cmd * net start mysql : 启动mysql的服务 * net stop mysql:关闭mysql服务 * MySQL登录 1. mysql -uroot -p密码 2. mysql -hip -uroot -p连接目标的密码 3. mysql --host=ip --user=root --password=连接目标的密码 * MySQL退出 1. exit 2. quit * MySQL目录结构 1. MySQL安装目录:basedir="D:/develop/MySQL/" * 配置文件 my.ini 2. MySQL数据目录:datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" * 几个概念 * 数据库:文件夹 * 表:文件 * 数据:数据

mysql出现ERROR1698(28000):Access denied for user root@localhost错误解决方法

霸气de小男生 提交于 2019-12-05 06:48:05
问题如下: wangju@wangju-HP-348-G4:~$ mysql -u root -p Enter password: ERROR 1698 (28000): Access denied for user 'root'@'localhost' 解决办法: 配置mysql不用密码也能登录 step1: 使用find全局搜索mysql配置文件 root@wangju-HP-348-G4:/home/wangju# find / -name mysqld.cnf /etc/mysql/mysql.conf.d/mysqld.cnf step2: 在mysql的配置文件 [mysqld] 中加入下面这句话: skip-grant-tables    <-- add here 作用: 就是让你可以不用密码登录进去mysql。 step3: 保存修改,重新启动mysql service mysql restart step4: 在终端上输入mysql -u root -p,遇见输入密码的提示直接回车即可进入mysql 重新配置mysql用户名密码step1:进入mysql后分别执行下面三句话配置root用户密码 use mysql; 然后敲回车 update user set authentication_string=password("你的密码") where user=

MySQL 安装配置

徘徊边缘 提交于 2019-12-05 06:19:23
目录 数据库概念 MySQL的安装 修改密码与破解管理员密码 统一字符编码 基本sql语句 表操作 数据库概念 那Mysql能干嘛呢?它就是一款软件,安装在任何一台计算机或者服务器上的时候,只要我告诉它创建一个文件,新增一个数据,删除一个数据它就能帮我去做想要的操作 那我们暂且能不能理解为mysql就是用来帮我们操作文件的! MySQL:用于管理文件的一个软件(两个程序) ​ -服务端软件 ​ -socket服务端 ​ -本地文件操作 ​ -解析指令 ​ -客户端软件 ​ -socket客户端 ​ -发送指令 ​ -解析指令 客户端可以有很多个,python,java,php,c++都可以编程一个客户端,用代码指定ip port链接上服务端即可操作 那么问题来了,不同的客户端练我一个服务端,语言不相同无法实现交流。所以应该有共同的语言才行>>>解析指令(sql语句) 技能: ​ -安装 服务端和客户端 ​ -链接 ​ -学习sql语句规则,指定服务端做任何操作 mysql只是一种能够帮助我们管理数据的软件,还有其他类似的软件也是通过发送指令来帮你管理数据库 其他类似软件: ​ 关系型数据库:sqlite,db2,oracle,access,sql server,MySQl(必须要表格存储,需要建立表格(k可以就是user, v就是可以是多类型的,比如说是大列表,大字典

Python 操作MySQL 数据库

旧城冷巷雨未停 提交于 2019-12-05 06:08:54
Python 操作 MySQL 数据库 Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口。 Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: GadFly mSQL MySQL PostgreSQL Microsoft SQL Server 2000 Informix Interbase Oracle Sybase 你可以访问 Python数据库接口及API 查看详细的支持数据库列表。 不同的数据库你需要下载不同的DB API模块,例如你需要访问Oracle数据库和Mysql数据,你需要下载Oracle和MySQL数据库模块。 DB-API 是一个规范. 它定义了一系列必须的对象和数据库存取方式, 以便为各种各样的底层数据库系统和多种多样的数据库接口程序提供一致的访问接口 。 Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式操作各数据库。 Python DB-API使用流程: 引入 API 模块。 获取与数据库的连接。 执行SQL语句和存储过程。 关闭数据库连接。 什么是MySQLdb? MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API

MySQL SQL语句

我怕爱的太早我们不能终老 提交于 2019-12-05 05:07:05
须知: SQL语言:结构化查询语言,是关系型数据库查询语言的标准,不同的数据库虽然有自己私有扩展,但关键词都支持:(select、update、delete、insert、where) SQL语句分类:像Oracle、MSSQL都是通用的 DDL:数据定义语言(create、alter、drop、rename) DML:数据库维护语言(select、insert、update、delete) DCL:数据库控制语言,权限(Grant、revoke) TCL:事务控制语言(commt、sarepqint):新型的语句 一、数据库增删改查 根据这个表结构以下来操作: mysql> select * from user; +----+----------+------+ | id | name | pass | +----+----------+------+ 基本操作 1.创建数据库 create database name; 2.删除数据库 drop database name; 3.创建一个用户表 create table user(id int,name varchar(30),pass varchar(30)); 4.插入数据 insert into user(id,name,pass) values("1","zhangsan","123"); 5.删除一个表 drop