PHP同时连接多个mysql数据库示例代码

PHP同时连接多个mysql数据库示例代码,第1张

这篇文章主要介绍了PHP同时连接多个mysql数据库的具体实现,需要的朋友可以参考下

实例:

代码如下:

<?php

$conn1

=

mysql_connect("127.0.0.1",

"root","root","db1")

mysql_select_db("db1",

$conn1)

$conn2

=

mysql_connect("127.0.0.1",

"root","root","db2")

mysql_select_db("db2",

$conn2)

$sql

=

"select

*

from

ip"

$query

=

mysql_query($sql)

if($row

=

mysql_fetch_array($query))

echo

$row[0]."n"

$sql

=

"select

*

from

web

"

$query

=

mysql_query($sql)

if($row

=

mysql_fetch_array($query))

echo

$row[0]

?>

这段代码存在问题,在程序执行时会报错:PHP

Warning:

mysql_fetch_array()

expects

parameter

1

to

be

resource,

boolean

given

in

....

原因分析:

程序开始建立两个数据库链接,函数mysql_query()原型:

resource

mysql_query

(

string

$query

[,

resource

$link_identifier

]

)

向与指定的连接标识符关联的服务器中的当前活动数据库发送一条查询。如果没有指定

link_identifier,则使用上一个打开的连接。如果没有打开的连接,本函数会尝试无参数调用

mysql_connect()

函数来建立一个连接并使用之。查询结果会被缓存。

在本例中由于没有指定link_identifier,所以,在执行第一条sql时,默认使用的是上一个打开的链接,即$conn2,而实际上第一条sql语句应该使用的是$conn1,所以导致报错,所以为了能够链接多个mysql数据库,可以使用如下方法

方法1:在mysql_query函数中指定所用连接,即:

代码如下:

<?php

$conn1

=

mysql_connect("127.0.0.1",

"root","root","db1")

mysql_select_db("Muma",

$conn1)

$conn2

=

mysql_connect("127.0.0.1",

"root","root","db2")

mysql_select_db("product",

$conn2)

$sql

=

"select

*

from

ip"

$query

=

mysql_query($sql,$conn1)

//添加连接$conn1

if($row

=

mysql_fetch_array($query))

echo

$row[0]."n"

$sql

=

"select

*

from

web

"

$query

=

mysql_query($sql,

$conn2)

if($row

=

mysql_fetch_array($query))

echo

$row[0]

?>

方法2:在sql语句中关联所用数据库,此时可以省略mysql_query的第二个参数,即:

代码如下:

<?php

$conn1

=

mysql_connect("127.0.0.1",

"root","root","db1")

mysql_select_db("db1",

$conn1)

$conn2

=

mysql_connect("127.0.0.1",

"root","root","db2")

mysql_select_db("db2",

$conn2)

$sql

=

"select

*

from

db1.ip"

//关联数据库

$query

=

mysql_query($sql)

if($row

=

mysql_fetch_array($query))

echo

$row[0]."n"

$sql

=

"select

*

from

db2.web

"

$query

=

mysql_query($sql)

if($row

=

mysql_fetch_array($query))

echo

$row[0]

?>

java中怎样创建MySQL数据库列表

需要使用jdbc访问数据库。

具体步骤如下:

1:加载驱动

,返回连接

private

static

final

String

DRIVER_CLASS

=

"com.mysql.jdbc.Driver"

private

static

final

String

DATABASE_URL

=

"jdbc:mysql://localhost:3306/student"

private

static

final

String

DATABASE_USRE

=

"root"

private

static

final

String

DATABASE_PASSWORD

=

"cs"

/**

*

返回连接

*

*

@return

Connection

*/

public

static

Connection

getConnection()

{

Connection

dbConnection

=

null

try

{

Class.forName(DRIVER_CLASS)

dbConnection

=

DriverManager.getConnection(DATABASE_URL,

DATABASE_USRE,

DATABASE_PASSWORD)

}

catch

(Exception

e)

{

e.printStackTrace()

}

return

dbConnection

}

2:获取连接,执行sql语句

public

static

List

selectAllStudent()

{

Connection

con

=

null

PreparedStatement

pstm

=

null

ResultSet

rs

=

null

List

list

=

new

ArrayList()

String

sql

=

"select

*

from

Student

"

try

{

con

=

ConnectionManager.getConnection()

pstm

=

con.prepareStatement(sql)

//

pstm.setString(1,

uname)

rs

=

pstm.executeQuery()

while

(rs.next())

{

Student

model

=

new

Student()

model.setStuId(rs.getInt("stuId"))

list.add(model)

}

}

catch

(SQLException

e)

{

e.printStackTrace()

}

finally

{

ConnectionManager.closeResultSet(rs)

ConnectionManager.closeStatement(pstm)

ConnectionManager.closeConnection(con)

}

return

list

}

3:调用获取列表方法。

本文实例讲述了nodejs简单访问及 *** 作mysql数据库的方法。分享给大家供大家参考,具体如下:

var

mysql

=

require('mysql')

//调用MySQL模块

mysql模块要安装

$

npm

install

mysql

//创建一个connection

var

connection

=

mysql.createConnection({

host

:

'127.0.0.1',

//主机

user

:

'root',

//MySQL认证用户名

password

:

'',

//MySQL认证用户密码

port:

'3306',

//端口号

database:''

//数据库名

})

//创建一个connection

connection.connect(function(err){

if(err){

console.log('[query]

-

:'+err)

return

}

console.log('[connection

connect]

succeed!')

})

//执行SQL语句

connection.query('SELECT

1

+

1

AS

solution',

function(err,

rows,

fields)

{

if

(err)

{

console.log('[query]

-

:'+err)

return

}

console.log('The

solution

is:

',

rows[0].solution)

})

//关闭connection

connection.end(function(err){

if(err){

return

}

console.log('[connection

end]

succeed!')

})

注:nodejs在 *** 作数据库的时候不用设置数据库的编码格式

set

names

utf8

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

您可能感兴趣的文章:nodejs连接mysql数据库简单封装示例-mysql模块nodejs进阶(6)—连接MySQL数据库示例nodejs实现的连接MySQL数据库功能示例Nodejs连接mysql并实现增、删、改、查 *** 作的方法详解nodeJs实现基于连接池连接mysql的方法示例nodejs中 *** 作mysql数据库示例NodeJS链接MySql数据库的 *** 作方法Nodejs使用mysql模块之获得更新和删除影响的行数的方法NodeJs使用Mysql模块实现事务处理实例nodejs连接mysql数据库及基本知识点详解


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

原文地址:https://54852.com/zaji/5898073.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存