PHP登陆注册页在本地测试时,出现连接数据库失败的情况怎么办

PHP登陆注册页在本地测试时,出现连接数据库失败的情况怎么办,第1张

1、检查环境正常

使用mysql -u root -p 可以进入MySQL *** 作界面

直接使用/usr/local/php5/bin/php /web/testphp执行可以连上数据库

2、打开hosts加入

复制代码代码如下:127001 qttc

使用qttc当主机连接也正常,唯独就不认localhost。

3、localhost连接方式不同导致

为了了解PHP连接数据库时,主机填写localhost与其它的区别阅读了大量资料,最后得知:

当主机填写为localhost时mysql会采用 unix domain socket连接

当主机填写为127001时mysql会采用tcp方式连接

这是linux套接字网络的特性,win平台不会有这个问题

4、解决方法

在mycnf的[mysql]区段里添加

复制代码代码如下:

protocol=tcp

保存重启MySQL,问题解决!

连接红薯酒店管理系统数据库时,需要使用数据库软件(如MySQL Workbench)和相应的连接信息来建立连接。具体步骤如下:

1 在数据库软件中新建一个连接,以MySQL Workbench为例,打开软件,点击菜单栏的“Database”选项,选择“Connect to database”;

2 在d出的“MySQL Connections”对话框中,输入连接信息。常规的连接信息包括主机名、端口号、数据库名称、用户名、密码等。针对红薯酒店管理系统数据库,您需要先确定相关连接信息,例如:

主机名:如果您是在本地计算机上使用系统,则主机名通常为“localhost”。如果您使用的是云服务器等其他计算机,则需要输入该计算机的IP地址。

端口号:MySQL数据库的默认端口号为3306,您可以根据需要进行修改。

数据库名称:红薯酒店管理系统的数据库名称一般为“hotel_management_system”。

用户名和密码:请使用管理员账户名和密码进行连接。

3 输入完毕连接信息后,点击“Test Connection”测试连接是否成功。如果显示“Successfully connected”,则连接已建立成功。如果出现错误提示,请检查连接信息是否正确。

建立成功后,您可以使用SQL工具对数据库进行管理,例如创建、修改或删除表、查询数据等。稍加了解或者通过阅读相关文档,您也可以使用编程语言如Java、Python等来连接和 *** 作红薯酒店管理系统的数据库。

使用JDBC进行数据库的增删改查 *** 作1下载Microsoft SQL Server 2005 JDBC 驱动包jar文件 将jar文件引入工程中2封装数据库链接的获取和关闭 *** 作import javasql;public class BaseDao {

/

数据库驱动类的字符串,完整的包名加类名 在工程中查看添加的jar文件 能看到这个类

/

private static final String DRIVE = "commicrosoftsqlserverjdbcSQLServerDriver"; /

数据库连接地址

DataBaseName=数据库名称 其它固定

/

private static final String URL = "jdbc:sqlserver://localhost:1433;DataBaseName=bbs"; /

连接数据库的用户名

/

private static final String USER = "sa"; /

用户密码

/

private static final String PASSWORD = ""; /

获取连接 异常直接抛出 或者捕获后自定义异常信息再抛出

/

public static Connection getConnection() throws Exception {

ClassforName(DRIVE);

return DriverManagergetConnection(URL, USER, PASSWORD);

} /

关闭与数据库的连接 释放资源

/

public static void closeAll(ResultSet resultSet, PreparedStatement pst,

Connection connection) throws Exception {

if (resultSet != null)

resultSetclose();

if (pst != null)

pstclose();

if (connection != null)

connectionclose();

}}3创建图书的实体类public class Book {

/

数据库主键

/

private Long id; /

作者

/

private String author; /

书名

/

private String name;

/

默认构造

/

public Book() {

}

/

全字段构造

@param id

@param author

@param name

/

public Book(Long id, String author, String name) {

thisid = id;

thisauthor = author;

thisname = name;

}

/

以下为读写属性的方法

@return

/

public String getAuthor() {

return author;

}

public void setAuthor(String author) {

thisauthor = author;

}

public Long getId() {

return id;

}

public void setId(Long id) {

thisid = id;

}

public String getName() {

return name;

}

public void setName(String name) {

thisname = name;

}

}

4创建与图书表交互的工具类import javasqlConnection;

import javasqlPreparedStatement;

import javasqlResultSet;

import javautilArrayList;

import javautilList;public class BookDao {

/

添加新书

@param book 要添加入数据库的图书 作者 书名 必须给定

/

public void addBook(Book book) throws Exception {

// 连接

Connection connection = null;

// 执行语句

PreparedStatement pst = null;

try {

connection = BaseDaogetConnection();

// 构造执行语句

String sql = "insert into book values(" + bookgetAuthor() + ","

+ bookgetName() + ")";

pst = connectionprepareStatement(sql);

pstexecuteUpdate(); } catch (Exception e) {

// 抛出异常

throw e;

} finally {

// 无论是否异常 均关闭数据库

BaseDaocloseAll(null, pst, connection);

}

} /

查询所有书籍列表

/

public List<Book> getBooks() throws Exception {

// 用于存放查寻结果的集合

List<Book> books = new ArrayList<Book>();

// 连接

Connection connection = null;

// 执行语句

PreparedStatement pst = null;

// 查询结果

ResultSet resultSet = null;

try {

connection = BaseDaogetConnection();

// 构造查询语句

String sql = "select from book";

pst = connectionprepareStatement(sql);

resultSet = pstexecuteQuery(); // 循环读取查询结果行

while (resultSetnext()) {

// getXXX的参数为数据表列名

Book book = new Book(resultSetgetLong("id"), resultSet

getString("author"), resultSetgetString("name"));

// 将封装好的图书对象存入集合

booksadd(book);

}

} catch (Exception e) {

// 抛出异常

throw e;

} finally {

// 无论是否异常 均关闭数据库

BaseDaocloseAll(resultSet, pst, connection);

}

// 返回查询结果

return books;

}/其它方法类似上面 只是语句不同/

}当然 以上只是简单的封装 初学者可以在理解以上代码的基础上 进行更高级的封装

5使用BookDao添加书籍和获取所有书籍列表import javautilList;/

测试类

@author Administrator

/

public class Test { /

@param args

@throws Exception

/

public static void main(String[] args) throws Exception {

//创建工具类对象

BookDao dao = new BookDao();

//创建一本图书

Book book = new Book(null,"QQ:495691293","编程菜鸟");

//添加书籍到数据库

daoaddBook(book);

//获取所有图书列表

List<Book> books = daogetBooks();

//输出结果

for (Book b : books) {

Systemoutprintln(bgetId()+"\t"+bgetAuthor()+"\t"+bgetName());

}

}}

1使用sys账户创建数据库连接

安装Oracle 11g会自带一个叫做SQL

Developer的工具,它的功能非常强大,以前一直不知道,还用着plsqldev和navicat来连接数据库,其实这个工具拥有前面两个软件的所有功能(如果说的太绝对请指正)。首先我们打开SQL

Developer

SQL Developer不能用于创建Oracle数据库,只能用来连接已创建的数据库,我们一般都是使用Database Configuration Assistant(简称DBCA)来创建数据库

打开DBCA以后按照向导来创建数据库,非常简单,这里不再赘述。

在SQL Developer中我们新建一个连接,点击左上角的“绿色加号”

创建数据库连接

填写完配置以后可以点击“Test”来测试数据库连接是否正确,如上图所示,左下角有“Status:Success”则表明数据库连接正确。

本文实例讲述了php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率。分享给大家供大家参考,具体如下:

<php

/

测试pdo和mysqli的执行效率

/

header("Content-type:text/html;charset=utf-8");

//通过pdo链接数据库

$pdo_startTime

=

microtime(true);

$pdo

=

new

PDO("mysql:host=localhost;dbname=test","root","1234",array(PDO::MYSQL_ATTR_INIT_COMMAND

=>

"SET

NAMES'utf8';"));

for($i=1;$i<=100;$i++){

$title

=

"pdo标题"$i;

$content

=

"pdo内容"$i;

$addtime

=

time();

$user_id

=

$i;

$pdo_sql

=

"INSERT

INTO

`article`(`title`,`content`,`addtime`,`user_id`)

VALUES(:title,:content,:addtime,:user_id)";

$sth

=

$pdo->prepare($pdo_sql);

$sth->bindParam(':title',$title);

$sth->bindParam(':content',$content);

$sth->bindParam(':addtime',$addtime);

$sth->bindParam(':user_id',$user_id);

$sth->execute();

}

$pdo_endTime

=

microtime(true);

$pdo_time

=

$pdo_endTime

-

$pdo_startTime;

echo

$pdo_time;

echo

"<hr/>";

//通过mysql链接数据库

$mysqli_startTime

=

microtime(true);

$mysqli

=

mysqli_connect("localhost","root","1234","test")

or

die("数据连接失败");

mysqli_query($mysqli,"set

names

utf8");

for($i=1;$i<=100;$i++){

$title

=

"mysqli标题"$i;

$content

=

"mysqli内容"$i;

$addtime

=

time();

$user_id

=

$i;

$sql

=

"INSERT

INTO

`article`(`title`,`content`,`addtime`,`user_id`)

VALUES('"$title"','"$content"',"$addtime","$user_id")";

mysqli_query($mysqli,$sql);

}

$mysqli_endTime

=

microtime(true);

$mysqli_time

=

$mysqli_endTime

-

$mysqli_startTime;

echo

$mysqli_time;

echo

"<hr/>";

if($pdo_time

>

$mysqli_time){

echo

"pdo的执行时间是mysqli的"round($pdo_time/$mysqli_time)"倍";

}else{

echo

"mysqli的执行时间是pdo的"round($mysqli_time/$pdo_time)"倍";

}

测试结果:其实经过多次测试,pdo和mysqli的执行效率差不多。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo *** 作数据库技巧总结》、《php+mysqli数据库程序设计技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库 *** 作入门教程》及《php常见数据库 *** 作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率完整示例php中数据库连接方式pdo和mysqli对比分析php中关于mysqli和mysql区别的一些知识点分析php *** 作mysqli(示例代码)php封装的mysqli类完整实例PHP以mysqli方式连接类完整代码实例php简单解析mysqli查询结果的方法(2种方法)php中mysql连接方式PDO使用详解Php中用PDO查询Mysql来避免SQL注入风险的方法php

mysql

PDO

查询 *** 作的实例详解PHP实现PDO的mysql数据库 *** 作类

Spring测试框架提供MockMvc对象,可以在不需要客户端-服务端请求的情况下进行MVC测试,完全在服务端这边就可以执行Controller的请求,跟启动了测试服务器一样。

测试开始之前需要建立测试环境,setup方法被@Before修饰。通过工具,使用对象作为参数,创建一个MockMvc对象。

以上就是关于PHP登陆注册页在本地测试时,出现连接数据库失败的情况怎么办全部的内容,包括:PHP登陆注册页在本地测试时,出现连接数据库失败的情况怎么办、红薯酒店管理系统数据库怎么连接、java中如何实现登录界面与数据库正确连接等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9790400.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存