$mysql_server_name='localhost'; //改成自己的mysql数据库服务器

$mysql_username='root'; //改成自己的mysql数据库用户名   mysql默认是 root用户名,也可以自己改

$mysql_password='root';    //改成自己的数据库密码        

$mysql_database='cai'; //改成自己的mysql数据库名

$con = mysqli_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);
if (!$con)
{
die("数据库服务器连接失败") ;
}
else{
echo '数据库连接成功';
}

这样就可以连接数据库了。

下面是 创建数据库。。

$sql = "CREATE DATABASE caicai"; //sql 语句 DATABASE 数据库 CREATE 创建 caicai 数据库的名字
$conn->query($sql)      //  运行 sql语句 。  mysqli_query($conn, $sql)   这个语句也能创建成功。

前面的面向对象的写法,,后面是另一种写法。

$sql = "CREATE TABLE MyGuests (      /*sql 语句  可以在  navical for mysql  软件创建表时查看  */
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
/*字段id 数据类型int AUTO_INCREMENT自动增量 UNSIGNED 无符号 PRIMARY KEY 主键*/
firstname VARCHAR(30) NOT NULL,
/*字段 firstname 数据类型 VARCHAR 字符类型 */
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)"; if ($conn->query($sql) === TRUE) {
echo "创建成功";
} else {
echo "创建数据表错误: " . $conn->error;
}

注意 sql 语句中 注释  我这边不能用 //  来注释。

插入数据

$firstname = 'John';
$lastname = 'Doe';
$email = 'john@example.com';
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('$firstname','$lastname','$email')";

使用变量也要用引号,这点很是奇怪

一次插入多条数据

$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')
,('Mary', 'Moe', 'mary@example.com')
,('Julie', 'Dooley', 'julie@example.com')";

读取数据

$sql = "SELECT id, firstname, lastname, email FROM MyGuests";
$result = $conn->query($sql); if ($result->num_rows > 0) {
// 输出数据
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]." ". $row["email"]."<br>";
}
} else {
echo "0 结果";
}

echo 的时候 用  点   连接各个字段和变量

where :

$result = mysqli_query($conn,"SELECT * FROM myguests WHERE firstname='Mary'");
//where 过滤 在myguests 表中查找 firstname='Mary' 这个数据 。 if($row = mysqli_fetch_array($result))
{ echo $row['firstname'] . " " . $row['lastname']. " " .$row['email'];
echo "<br>";
}

排序 ORDER BY  :

$result = mysqli_query($conn,"SELECT * FROM myguests ORDER BY reg_date");

while($row = mysqli_fetch_array($result))
{
echo $row['firstname'];
echo " " . $row['lastname'];
echo "<br>";
}

updata:

mysqli_query($conn,"UPDATE myguests SET id=110
WHERE firstname='Julie' AND lastname='Dooley'");

delete:

mysqli_query($conn,"DELETE FROM MyGuests WHERE lastname='Moe'");

php 连接 数据库的更多相关文章

  1. CentOS 7 部署、连接 数据库mariadb

    1.安装mariadb yum -y install mariadb* 2.开启/停止 systemctl start mariadb  #启动MariaDB systemctl stop maria ...

  2. 用JDBC连接 数据库 进行简单的增删改查

    JDBC为java的基础.用jdbc实现对数据库的增删改查的功能是程序员的基本要求.本例以mysql为例,首先要使用本例需要添加mysql-connector-java-5.1.7-bin.jar包. ...

  3. Excel中VBA 连接 数据库 方法- 摘自网络

    Sub GetData() Dim strConn As String, strSQL As String Dim conn As ADODB.Connection Dim ds As ADODB.R ...

  4. C# 连接 数据库的时候 出现 程序出现异常"尝试读取或写入受保护的内存这通常指示其他内存已损坏" 错误

    今天调试程序的时候出现了毫无征兆的就出现了如标题所述 的错误,我之前的程序 都运行的好好的,网上 找了 好多帖子 ,都是没有找到解决方案,最后 一个问一个同事 不知道他在哪儿找到了一个解决方案,说是 ...

  5. Excel VBA 连接各种数据库(二) VBA连接Oracle数据库

    本文主要内容: Oracle环境配置 ODBC驱动设置.第三方驱动下载 VBA连接Oracle连接方法 Oracle10g官方免账号下载地址 系统环境: Windows 7 64bit Excel 2 ...

  6. JAVA通过JDBC连接Oracle数据库详解【转载】

    JAVA通过JDBC连接Oracle数据库详解 (2011-03-15 00:10:03) 转载▼http://blog.sina.com.cn/s/blog_61da86dd0100q27w.htm ...

  7. 数据库 连接(join)

    转自http://www.cnblogs.com/caozengling/p/5318696.html 数据库中飞内连接,自然连接,外连接 数据库中的连接join氛围内连接,自然连接,外连接,外连接又 ...

  8. php 如何实现 数据库 连接池

    php 如何实现 数据库 连接池 一.总结 一句话总结: php+sqlrelay+mysql实现连接池及读写负载均衡 master-slave模式增加并发. sqlrelay 解决连接池问题以及实现 ...

  9. 详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名及手工脚本创建oracle数据库

    数据库名.实例名.数据库域名.全局数据库名.服务名 , 这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水.我们现在就来把它们弄个明白. 一.数据库名 什么是数 ...

随机推荐

  1. Xilinx的ISE14.7和PlanAhead与win10系统的兼容性问题解决方案

    Xilinx的ISE14.7和PlanAhead与win10系统的兼容性问题解决方案 2018年07月03日 18:27:57 feq123 阅读数:4495   今天在新电脑的win10系统上安装I ...

  2. 深入了解View(一)—— measure測量流程分析

    欢迎使用Markdown编辑器写博客 本Markdown编辑器使用StackEdit改动而来,用它写博客.将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接 ...

  3. FFmpeg中subtitle demuxer实现

    [时间:2019-01] [状态:Open] [关键词:字幕,ffmpeg,subtitle,demuxer,源码] 0 引言 本文重心在于FFmpeg中subtitle demuxer的实现逻辑. ...

  4. [转]客户端js判断文件类型和文件大小即限制上传大小

    原文地址:https://www.jb51.net/article/43498.htm 需要脚本在客户端判断大小和文件类型,由于网上没有适合的,就自己写了一个并测试 文件上传大小限制的一个例子,在此与 ...

  5. 【转载】多模式串匹配之AC自动机

    原文地址:https://www.cnblogs.com/codeape/p/3845375.html 目录 [隐藏] 一.概述 二.AC算法思想 三.字典树tire的构造 四.搜索路径的确定 附录: ...

  6. C语言 · 单词数统计

    单词数统计 输入一个字符串,求它包含多少个单词. 单词间以一个或者多个空格分开. 第一个单词前,最后一个单词后也可能有0到多个空格. 比如:" abc    xyz" 包含两个单词 ...

  7. shell切分字符串到数组

    shell切分字符串到数组 问题: 对于’aa,bb,cc,dd,ee’这样的字符串输出采用,分隔开的aa bb cc dd ee aa:bb is ok:/home/work按照":&qu ...

  8. golang处理signal

    signal一般用来实现优雅重启,或者重新加载配置文件等操作. 废话不多说,上表格 动作 号码 信号 golang kill pid 15 SIGTERM terminated kill -9 pid ...

  9. ajax-page局部刷新分页实例

    1.引用文件:connect.php <?php $host="localhost"; $db_user="root"; $db_pass="r ...

  10. 基于Gradle的spring boot 项目构建

    今天听只是分享,听到不用maven而使用Gradle构建,就尝试了下 Java三大构建工具:Ant.Maven和Gradle Gradle是一个基于Apache Ant和Apache Maven概念的 ...