mysql数据库初学习

MySQL学习
我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。

查询MySQL是否被安装 rpm -qa | grep mysql
查询一个包是否被安装
rpm -q < rpm package name>
列出所有被安装的rpm package
rpm -qa

管道配合grep查询命令可以查询到与mysql相关的包。

使用ps -ef | grep mysql查询mysql服务是否运行
ps命令将某个进程显示出来

执行mysql -u root -p登陆进入mysql

执行show databases,提示You must reset your password using ALTER USER statement before executing this statement.
执行alter user user() identified by "123456";改密码就可以进入了。

show databases;查看有哪些数据库。

执行show tables;查看当前数据库的表。

执行create database “库名”新建数据库。


连接MySQL

根据菜鸟教程的方法,以下代码成功连接到mysql
https://www.runoob.com/mysql/mysql-connection.html

<?php
$dbhost = 'localhost:3306';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = '123456';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('Could not connect: ' . mysqli_error());
}
echo '数据库连接成功!';
mysqli_close($conn);
?>

创建数据库

PHP 使用 mysqli_query 函数来创建或者删除 MySQL 数据库。

该函数有两个参数,在执行成功时返回 TRUE,否则返回 FALSE。

语法
mysqli_query(connection,query,resultmode);
参考代码
https://www.runoob.com/mysql/mysql-create-database.html

<?php
$dbhost = 'localhost:3306';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = '123456';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('连接错误: ' . mysqli_error($conn));
}
echo '连接成功<br />';
$sql = 'CREATE DATABASE RUNOOB';
$retval = mysqli_query($conn,$sql );
if(! $retval )
{
    die('创建数据库失败: ' . mysqli_error($conn));
}
echo "数据库 RUNOOB 创建成功\n";
mysqli_close($conn);
?>

删除数据库

在mysql命令行下使用drop database <数据库名>;

在终端使用mysqladmin -u root -p drop RUNOOB

使用php
https://www.runoob.com/mysql/mysql-drop-database.html

<?php
$dbhost = 'localhost:3306';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = '123456';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('连接失败: ' . mysqli_error($conn));
}
echo '连接成功<br />';
$sql = 'DROP DATABASE RUNOOB';
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
    die('删除数据库失败: ' . mysqli_error($conn));
}
echo "数据库 RUNOOB 删除成功\n";
mysqli_close($conn);
?>

选择数据库

https://www.runoob.com/mysql/mysql-select-database.html

mysqli_select_db(connection,dbname);

<?php
$dbhost = 'localhost:3306';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = '123456';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
    die('连接失败: ' . mysqli_error($conn));
}
echo '连接成功';
mysqli_select_db($conn, 'RUNOOB' );
mysqli_close($conn);
?>

数据类型

https://www.runoob.com/mysql/mysql-data-types.html

不愧是数据库,数据类型这么多,调用起来很精确了。

MySQL 5.0以上的版本:

1.一个汉字占多少长度与编码有关:

UTF-8:一个汉字=3个字节

GBK:一个汉字=2个字节

创建数据表

https://www.runoob.com/mysql/mysql-create-tables.html

CREATE TABLE table_name (column_name column_type);

CREATE TABLE IF NOT EXISTS `runoob_tbl`(
   `runoob_id` INT UNSIGNED AUTO_INCREMENT,
   `runoob_title` VARCHAR(100) NOT NULL,
   `runoob_author` VARCHAR(40) NOT NULL,
   `submission_date` DATE,
   PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

实例解析:

  • 如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。

  • AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。

  • PRIMARY KEY关键字用于定义列为主键。

  • 您可以使用多列来定义主键,列间以逗号分隔。 ENGINE 设置存储引擎,CHARSET 设置编码。

操作实例
mysql数据库初学习

删除数据表

<?php
$dbhost = 'localhost:3306';  // mysql服务器主机地址
$dbuser = 'root';            // mysql用户名
$dbpass = '123456';          // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('连接失败: ' . mysqli_error($conn));
}
echo '连接成功<br />';
$sql = "DROP TABLE runoob_tbl";
mysqli_select_db( $conn, 'RUNOOB' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
  die('数据表删除失败: ' . mysqli_error($conn));
}
echo "数据表删除成功\n";
mysqli_close($conn);
?>